Linux application virtualization with UDS Enterprise

Versión 2.2.1 Rev. 1 February 26th, 2019

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

Introduction ...... 2 Necessary elements ...... 3 1. Virtualization platform ...... 3 2. Image of Linux OS ...... 3 3. X2Go protocol ...... 3 4. UDS Actor ...... 4 5. Miscellaneous ...... 4 Configuring the Linux template and the connection client ...... 5 Linux OS ...... 5 X2Go Protocol - Server ...... 7 UDS Actor for Linux ...... 8 X2Go Protocol – Connection client ...... 13 Service publication ...... 19 Accessing Linux application services ...... 33 About VirtualCable ...... 35

36

Page 1 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

Introduction

The VDI and vApp UDS Enterprise connection broker allows the deployment and administration of virtualized Linux application sessions through the X2Go connection protocol. These applications may be assigned to user groups. The access to the sessions of virtual applications Linux can be realized through clients of connection with Windows OS and Linux. The users will execute the applications in independent Linux virtual machines autogenerated by UDS Enterprise, based on a template machine (where the applications must be installed). If the same user accesses several applications, all those applications will be executed in the same virtual desktop, thus achieving an important optimization of resources. For the correct operation and integration of UDS Enterprise with X2Go it is necessary to perform a series of tasks that are detailed in this document.

36

Page 2 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

Necessary elements

To make the configuration of the different elements that will make up the base machine (template) to be used with UDS Enterprise to serve virtual applications, we will need: 1. Virtualization platform

It is necessary to have a virtualization platform that integrates with UDS Enterprise so that the connection broker can deploy self-generated virtual machines. These virtual machines will be the ones that will execute the applications for the different users. The virtualization platforms supported by UDS Enterprise to be able to deploy Linux applications are: Citrix XenSenver / XCP-ng, Microsoft Azure, Microsoft Hyper-V, oVirt/RHEV, VMware vSphere, VMware vCloud, Nodeweaver, OpenNebula, OpenStack, etc… The virtual platform must have sufficient resources (vCPU, vRAM and disk) to be able to run the Linux virtual desktops that will provide the virtual applications. 2. Image of Linux OS

This MV will be the one that UDS will use as a base machine (template) to deploy virtual desktops in which users will run their virtual applications. It is recommended to use an distribution as a template. In this example, we will use a minimal image of Ubuntu 16.04, available from the official Ubuntu repository: https://help.ubuntu.com/community/Installation/MinimalCD

3. X2Go protocol

The connection protocol that will allow us access to Linux applications will be X2Go. The UDS Enterprise team have created a script that automates and simplify the entire X2Go installation process. This script (we have generated one for the server part, which we installed in the server template, and another for the client part of Linux equipment, which is installed in the connection client) can be downloaded from this repository: http://images.udsenterprise.com/files/X2GO/

36

Page 3 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

4. UDS Actor

We will need to have the latest stable version of the UDS Actor to handle the reconfiguration of all Linux virtual desktops automatically generated by the UDS Server. To download the UDS Actor we will need to validate in the UDS login windows with a user with administrator permissions. We will display the user´s menu and access downloads. In this window we will download the Actor for Linux machines and specifically for distributions based on (.deb).

5. Miscellaneous

We need to have Internet access in the template machine in order to install both the Ubuntu OS and the X2Go connection protocol. It is also necessary to have a DHCP server in the network where the virtual desktops are generated.

36

Page 4 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

Configuring the Linux template and the connection client

The following is a list of all the necessary tasks to be performed both on the Linux base machine (template) and on the connection client (the computer that will access Linux virtual applications). Linux OS

We will start creating the VM that we will use as the base machine (template). Once downloaded the minimal image of Ubuntu 16.04 from the official repository indicated in the previous section, we proceed to perform its installation:

The installation will be done with the default values and indicating some resources (disk, vRAM and vCPUs) according to the requirements of the applications that will be installed on the machine. When we get to the part of the installation wizard where it asks us to select the programs to install, we will mark “Xubuntu desktop”. This option will install and configure the XFCE on our Ubuntu machine.

36

Page 5 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

In the case of the rest of the indicated data, we can leave the ones that come by default. Once the installation in complete, we can access our Ubuntu 16.04 + XCFE (Xubuntu 16.04).

Once the installation of the OS is finished, it is important to install the virtual machine drivers corresponding to the virtualization platform. In this example we will install the “open tools”, because it will run on VMware vSphere virtual platform. sudo apt-get install open-vm-tools

36

Page 6 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

It is also recommended to disable automatic updates and, if you need to update the OS, perform it manually.

X2Go Protocol - Server

Before proceeding with the installation of X2Go, we will need to update our repositories: sudo apt-get update

Once updated, we will proceed to the installation of X2Go (Server part) through the script provided by VirtualCable (it is necessary to execute the script with a graphical environment session running). We copy the script to our Xubuntu template: wget http://images.udsenterprise.com/files/X2GO/X2GO-server.sh

36

Page 7 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

We locate where we have downloaded the file.

We execute the file: sudo sh /home/uds/X2GO-server.sh

When we have all the components installed, we can proceed with the installation of X2Go on our connection client. UDS Actor for Linux

We download the UDS Actor for distributions based on Debian.

36

Page 8 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

When downloading from the browser, we select it to be installed. The first window asks us for the address of the UDS Enterprise Server. In the next window it will ask us for information about the UDS Enterprise platform.

After finishing the installation and configuration of the UDS Actor, we verified that the connection between the template and the UDS Server is working correctly.

In the event that the following blank data appears:

36

Page 9 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

Enter the UDS Server IP address:

In the next field we will indicate the UDS Master Key. In order to find the value of this field, we will have to login to the UDS portal with a user with administrator permissions.

In the side menu we enter in the tools section.

36

Page 10 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

We access the configuration submenu:

We enter the security tab:

36

Page 11 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

The value that we have to enter is the one indicated in the Master Key field:

Once you have entered all the data, click on “Test Parameters” to verify that the data is correct:

In case we need to modify some parameter, we can do it from this window or also by editing the file: /etc/udsactor/udsactor.cfg

36

Page 12 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

X2Go Protocol – Connection client

Now we have to prepare the client from which we are going to make the connection. We do not have to do this part in the template. In the case that we have a Linux connection client, we will have to update the system: sudo apt-get update

Once updated, we will proceed to the installation of X2Go in the client through the script provided by VirtualCable (it is necessary to execute the script with a graphical environment session running). We copy the script to our Linux client: wget http://images.udsenterprise.com/files/X2GO/X2GO-client.sh

We locate the script and proceed with its execution:

In case of having a Windows client, we will have to download the X2Go client from the following link: https://wiki.X2Go.org/doku.php

After clicking on the link, the executable will be downloaded.

36

Page 13 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

After finishing the download, we will execute the X2Go client installer. The first thing that indicates is the language in which we will perform the installation:

We will have to accept the terms of the license of use by clicking in agreement:

We select the components to be installed. In our example, we will leave the ones that come by default and click on “Next”:

36

Page 14 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

We select the route in which we want the installation to take place and click on “Next”:

Select the folder of the start menu where we want it to be added and click on “Install”:

36

Page 15 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

After finishing the installation, it will indicate that it was done correctly and click on “Finish”:

36

Page 16 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

Once the X2Go connection protocol is installed in our connection client, it is advisable to prove that the connection can be made correctly. For this we will make a remote connection from our client to the template previously configured.

In the “Host” field, enter the IP, of the computer to which we want to connect, in this case the template. In the “Login” field, enter the user name. It is necessary to select XFCE as “Session type”. We continue and proceed with the login page. We enter the password. If the connection is successfully established and the remote dektop is displayed, X2Go is working properly and thus it’s be able to virtualize applications.

36

Page 17 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

NOTE: In connection client computers, in addition to installing the X2Go client, it will also be necessary to have the UDS client (UDS Plugin). For more details on its installation, review the guide: UDS Enterprise Installation, UDS Enterprise installation, Administration and User Manual available in the documentation section of the UDS Enterprise website.

36

Page 18 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

Service publication

Once we have prepared the Linux template (installed the OS, applications to virtualize, X2Go protocol and UDS Actor) we will proceed to configure it in UDS and to create a new service pool based on this template. In order to configure a service pool and deploy Linux applications, we have to access the UDS control panel with an administrator user.

The first thing we have to do is to register the base service that we have created in the virtual platform. In this example, we will create it in a VMware vSphere environment, so within the control panel we have to enter the services side menu:

In this example, from the list of services that we have registered, we select vCenter, which is where we created the Linux template (if we do not have any service provider registered, we will create a new one).

36

Page 19 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

We select it and in the Services tab click on the “New” button.

In the drop-down we select the type linked clone (which will help us make vary fast deployments and save resources).

A pop-up window like the following will appear.

36

Page 20 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

For this type of provider (VMware vSphere) we have to assign an identifying name, select the Datacenter, the resource pool where the clones will be published and in which pool they will be created.

In the “machine” tab, we will have to select the base machine (template) Linux that we have created previously (Xubuntu), as well as the memory that we want to give to the autogenerated desktops, the network to which we want them to connect, the DNS name of the desks, location and the length of the name. Once all this information is completed, click on “Save”.

36

Page 21 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

The next step is to register the authenticator that we are going to use in UDS Enterprise. In the case of not having an external one (AD, OpenLDAP, etc…), we can use the internal database provided by UDS Enterprise. To do this, in the side menu select “Authenticators”:

In our case, we are going to use the internal database. To register this database, click on the “New” button and select “Internal Database”.

The following window will open, where we will have to add an explanatory name to later identify it in the platform, the priority of use and a tag name.

36

Page 22 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

The next step will be to add the user groups that will be able to use the resources. To do this we have to select the database, go down in the window and enter the “Groups” tab.

Click on the “new” button, and in the drop-down menú, select “group”.

The following window will open, in which we will introduce the name of group, click on the drop-down menu, leaving the status as active and click on “Save”.

36

Page 23 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

After creating the group, we will have to add users. For this, we enter the “Users” tab.

Click on the “New” button.

The following widow will appear, in which we will introduce the user´s name, password and status, we will keep it as active. For this example it is not necessary to be a member of the staff or administrator, so we will leave these buttons as “No”, and we will add the group that we have created previously. Then click on “Save”.

36

Page 24 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

The next step is to create the OS Manager. For this, in the side menu we have to go to “Os Managers”.

Click on the “New” button.

In the drop-down select “Linux OS Manager”.

Enter a descriptive name and from the “Logout Action” drop-down select “Delete service (non-persistent desktops)”. This option is recommended, since it allows that when a user closes the application, the desktop on which the application is executed is automatically deleted (important for the saving of resources of the virtual platform). It is also possible to use persistent desktops to deploy Linux virtual applications.

36

Page 25 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

The next step is to create the transport. This element is very important, because this is where we are going to tell UDS to use the self-generated virtual desktops, based on the Linux template machine, to deploy Linux virtual applications. To create a new transport, in the side menu we will go to the “Connectivity” section.

In the transport section, we click on the “New” button.

In this configuration example, from the drop-down menu we select the “X2Go direct” transport, because we are only use it from the local network. In case that the connection is made from outside the local network we will have to use the tunnelled X2Go protocol.

36

Page 26 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

The following window will appear, in which we will have to add the identifying name (it is advisable to define here the name of the application, this name will be visible to the user only in the case that several transports are define don the same pool resources) and if we want to limit access. In our case, we will leave it by default, so that it can be accessed from any device and network.

In the credentials tab, we indicate the user with which the application will be executed. In our case we are going to use the user uds (this user must exist in the Ubuntu template).

36

Page 27 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

In the “parameters” tab we will have to select UDS vAPP in the drop-down and indicate the complete path of the application (installed in the Linux template) that we want to execute.

In the “Advanced” tab, we introduce the keyboard language and in “Quality” we can define the image quality (0 – 9), being predetermined by 6.

36

Page 28 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

Once this configuration is done, click on “Save”. NOTE: We can create as many transports as we need to publish applications for users. Finally, we will have to create service pool. For this we go in the side menu to the “Service Pools” section.

Click on the “New” button.

We indicate the name of the service (This name will be visible by the user and will help you identify the service), select the base service and the OS Manager (previously created).

36

Page 29 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

In the “Advanced” tab we leave the checks by default.

In the “Display” tab we indicate which group of services will be shown and which image the application will use (these elements are created in the “Tools” section).

36

Page 30 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

In the “Availability ” tab we will have to indicate the number of services that we want to have available for the user´s connection (it is advisable to have as many services, initial or in cache, as users are going to access the applications). Each user that connects will need a desktop and on that desktop all the applications that we have defined in the transports will be executed.

Once this configuration is done, click on “Save” to start the creation of the service publication and the creation of the virtual desktops in which the virtual applications will be delivered. The next task will be to indicate which groups of users will access the virtual applications service. In order to do this, go to “Groups” tab.

Click on “new”, select the authenticxator/group (previously created) and save.

Once the group is added, click on the “Transports” tab and assign the X2Go transport (where we have defined the application route to be virtualized) that we have previously created by clicking on “New”.

36

Page 31 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

Select the transport and click on “Save”. We can add a single transport or more than one per service pool.

Before connecting to an application, we must verify that the self-generated desktops by UDS have been correctly configured. To do this, we will check in the “Cache” tab that we have the services in a valid state.

36

Page 32 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

Accessing Linux application services

Once all these configurations have been made, verified that the Linux desktops have autogenerated correctly and are in a valid state, users will be able to access the virtual application service.

When the user accesses (they must have the X2Go client installed and the UDS client, for Windows and Linux platform), the following icon will appear in the task bar:

And the application will open.

36

Page 33 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

In the case that we choose more than one application per service pool, we can select the application to which we want to connect by clicking on the gear of the image:

And in the list we click on the application that we want to execute:

36

Page 34 of 35

Linux application virtualization with UDS Enterprise

www.udsenterprise.com

About VirtualCable

VirtualCable markets UDS Enterprise through a subscription model, including support and updates, depending on the number of users. In addition, VirtualCable offers professional services to install and configure UDS Enterprise and other virtualization technologies. For more information, visit www.udsenterprise.com or send us an email to info@udsenterprise.

36

Page 35 of 35