Deploying Citrix XenDesktop Linux VDA using Red Hat Enterprise and vSphere – Part 1

Share Button

Introduction

I recently had the pleasure of being part of a demo deployment of the Linux VDA for a pretty large customer. This customer is expecting to have hundreds of Linux Virtual Desktops with varying requirements in terms of applications and user densities. As a “Windows Guy” with less of a background in Linux, this was an insightful and eye opening experience. I think anyone that has moved from Windows to Linux for any stretch of time will agree that there are certain “things to know” about administering a Linux platform. Very quickly I was reminded, and frequently, that everything is case sensitive. This not only applies to the commands that are run, the files that are referenced, but even the domain itself is case sensitive in that it must be in all CAPS or authentication errors will ensue. There were a few bumps for me along the way, but if you follow along below, or already have experience with Linux, it should be a pretty smooth ride.

To avoid losing my reader’s attention with the dreaded TLDR blog post, I have broken the article into the sections below:

Part 1: Introduction to the Linux VDA and Red Hat Enterprise Linux < YOU ARE HERE
Part 2: Preparing the Linux VM for the VDA – Installing and Configuring Prereqs
Part 3: Installing the Linux VDA and Deploying Linux Specific Catalogs and Delivery Groups
Part 4: Bonus – Simple Image Management and Deployment of Linux VDAs

In this section we will cover the Linux VDA features and limitations, general Linux and system requirements, and finish off with the deployment of a RHEL Linux VM on vSphere 5.5.

Linux VDA limitations

The 1.0 release of the Linux VDA is not without a few limitations. Before beginning on a deployment, it’s important to keep these limitations in mind and align expectations accordingly. Here is a list of relevant support information for the Linux VDA:

  • OS Supported:                                      RHEL 6.6 or SUSE 11 SP3
  • XenDesktop Version Required:        XenDesktop 7.1 +
  • Does not support Dedicated Desktops – Shared Desktops only
  • Does not support Published Applications
  • Does not support HDX 3DPro/GPU
  • Does not support unauthenticated (anonymous) users
  • No support with MCS or PVS – Linux VMs must be manually cloned and configured

In its current release, think of the Linux VDA as a good old fashioned XenApp published desktop, but with a Linux twist—nothing too fancy, but it does get the job done! Of course, we can expect many of the unsupported features above to change in future releases, as long as the demand for the Linux VDA remains.

Prerequisites

Linux OS Software Required

As mentioned above, the Citrix Linux VDA only supports Red Hat Enterprise Linux version 6.6 or SUSE 11 SP3, though other distributions have already been successfully deployed and tested. For this article, I will be demonstrating a deployment on Red Hat Enterprise 6.6.

XenDesktop Environment

Before beginning the Linux VDA deployment, it is assumed that there already exists a fully working XenDesktop 7.1 or greater environment. For this blog, I will be deploying the Linux VDA on Xendesktop 7.6.

Hypervisor

Although the Linux VDA does support being installed on any of the three XenDesktop 7.1+ supported hypervisors, power management features are not officially supported at this time. I have successfully tested power managed Catalogs from a vSphere 5.5 connection, but I have not verified either XenServer or Hyper-V. The steps shown in this blog will follow Citrix Supported configurations and therefore will exclude power management.

RPMs Required for VDA and other Supporting Software

If you are going to be installing the packages without the use of yum, you will need the following list of RPMs installed manually. The below lists show the packages that are available on the ISO in its most updated form and those that are available on the ISO but outdated. It is recommended that RPMs be up to date, though it is not required for installation of the Linux VDA.

*This list assumes a ‘desktop’ install as will be shown during the Installation section.

Linux Packages required as prerequisite software:

Package Name On RHEL ISO (Cur) On RHEL ISO (Old)
ilmbase-1.0.1-6.1.el6.x86_64.rpm
ImageMagick-6.5.4.7-7.el6_5.x86_64.rpm

X

java-1.7.0-openjdk-1.7.0.79-2.5.5.1.el6_6.x86_64.rpm

X

krb5-libs-1.10.3-37.el6_6.x86_64.rpm

X

krb5-workstation-1.10.3-37.el6_6.x86_64.rpm

X

libwmf-lite-0.2.8.4-23.el6.x86_64.rpm

X

OpenEXR-libs-1.6.1-8.1.el6.x86_64.rpm
postgresql-8.4.20-2.el6_6.x86_64.rpm

X

postgresql-devel-8.4.20-2.el6_6.x86_64.rpm

X

postgresql-jdbc-8.4.704-2.el6.noarch.rpm

X

postgresql-libs-8.4.20-2.el6_6.x86_64.rpm

X

postgresql-server-8.4.20-2.el6_6.x86_64.rpm

X

rpm-build-4.8.0-38.el6_6.x86_64.rpm

X

rpmdevtools-7.5-2.el6.noarch.rpm

X

samba-3.6.23-14.el6_6.x86_64.rpm

X

samba-client-3.6.23-14.el6_6.x86_64.rpm

X

samba-common-3.6.23-14.el6_6.x86_64.rpm

X

samba-winbind-3.6.23-14.el6_6.x86_64.rpm

X

samba-winbind-clients-3.6.23-14.el6_6.x86_64.rpm

 

Linux Packages required for the Citrix Linux VDA:

Package Name On RHEL ISO (Cur) On RHEL ISO (Old)
audit-libs-python-2.3.7-5.el6.x86_64.rpm

X

libcgroup-0.40.rc1-15.el6_6.x86_64.rpm

X

libsemanage-python-2.0.43-4.2.el6.x86_64.rpm

X

libXp-1.0.2-2.1.el6.x86_64.rpm

X

libXpm-3.5.10-2.el6.x86_64.rpm

X

openmotif-2.3.3-8.el6.x86_64.rpm

X

policycoreutils-2.0.83-19.47.el6_6.1.x86_64.rpm

X

policycoreutils-python-2.0.83-19.47.el6_6.1.x86_64.rpm

X

setools-libs-3.3.7-4.el6.x86_64.rpm

X

setools-libs-python-3.3.7-4.el6.x86_64.rpm

X

Preparing your Delivery Controllers

Preparing the Delivery Controller is a relatively easy step. Once you have downloaded the Linux VDA zip file, extract the contents and locate the PowerShell script named Update-BrokerServiceConfig.ps1.

From the DDC, launch PowerShell as administrator and run the following commands:

add-pssnapin Citrix*
set-executionpolicy unrestricted –force
cd <script location>
.\Update-BrokerServiceConfig.ps1

Typerand hit enter.

When the script has completed you will see the following output:

You can verify that the script ran successfully by running the following commands from the Windows Command Prompt:

cd “%PROGRAMFILES%”\Citrix\Broker\Service\
findstr EndpointLinux BrokerService.exe.config

Deploying a Linux VM onto VMware vSphere

Launch and login to the vSphere web client. Begin the new virtual machine wizard. Click Next to continue the wizard.

Provide the name and the location for the Virtual Machine.

Click Next.

Specify the vSphere Cluster or Host resource.

Click Next.

Select the appropriate Datastore or Datastore cluster and click Next.

You may use an earlier compatibility version if you prefer. However, I stuck with ESXi 5.5 (version 10).

Click Next to continue.

Now here is where things change from a Windows VM, and it’s important not to miss this step. Be sure to select Linux and Red Hat Enterprise Linux 6 (64-bit).

Click Next.

On the next screen you will customize your hardware and select the appropriate network for the VM. I left default CPU, Memory, and Hard Disk configuration and selected my management test network. In a real deployment these values would be sized according to the required densities and workloads.

Review the VM settings and click Finish to deploy the VM.

Installing Red Hat Enterprise Linux 6.6 64-bit

Once your new Linux VM has been deployed, load the Linux Install ISO into your virtual CD drive then boot the VM.

You can either select Install or upgrade an existing system or wait for Automatic boot, but why wait?

The Linux ISO does have a built in media test, though I know that this media is valid so I select Skip and move straight onto installation.

I noticed that the Red Hat Enterprise Installer is much like any other OS installer. There are not a lot of configuration requirements outside of defaults, though I will still demonstrate the entire installation process.

Click Next to begin the install wizard.

Select English (English) as the language and click Next.

Select the appropriate keyboard, in my case U.S. English, and click Next.

Since this is a default Virtual Machine install on a local vmdk, we can leave Basic Storage Devices selected.

The RHEL OS installer will not be able to detect any partitions or filesystems and does not know if the disk contains any data. However, since this is a brand new VM, we know the disk is empty so we can safely select Yes, discard any data.

On the next screen we’ll provide the hostname. Use the fully qualified domain name (FQDN). We’ll also need to configure the network connection, so select Configure Network.

Once Network Connections appears, click Edit.

By default the network interfaces are not automatically connected. This can be problematic in an environment where users have to connect remotely.

Enable the check box, Connect automatically, and click Apply.

Select your local time zone and click Next. This can be updated later during NTP configuration.

Provide a secure password for the Root logon. The root user is the default administrator account for the Linux VM.

Since we will be using all space on the hard disk and installing a fresh OS, select Use All Space. This will format the drive and create the necessary partitions automatically. Click Next.

During this phase of installation, select the Desktop packages to provide a full GUI. Leave Red Hat Enterprise Linux selected as the repository and click Next.

The RHEL OS will be installed along with all required packages for the selected Desktop version. The additional packages listed in the prerequisite section will be installed once the configuration of the OS is complete.

Select Reboot to finish the installation and reboot the VM.

Now that RHEL has been installed, the initial OS configuration wizard will launch. Click Forward.

Read and agree to the License Agreement. Click Forward.

If you have the necessary registration information, enter it here. Since I do not, I will select No, I prefer to register at a later time.

Note: registration is required in order to receive updates or use yum, which is a much more streamlined and simple way to install RPM packages.

Information is provided on how to register at a later time. Click Forward

Provide the Username, Full Name, and Password for the standard user. Do not configure Network Login or Advanced settings at this time.

NTP settings will be configured at a later time, so just click Forward to continue.

Leave Kdump settings at default. Click Finish and agree to the reboot prompts.

Once the system is rebooted, we will verify access to the system using the root logon. Click Other to specify the root user.

 Type in the Root Password and click Log In

The initial installation and configuration of RHEL 6.6 is now complete!

To continue on in the series, choose one of the sections below.

Part 1: Introduction to the Linux VDA and Red Hat Enterprise Linux < YOU ARE HERE
Part 2: Preparing the Linux VM for the VDA – Installing and Configuring Prereqs
Part 3: Installing the Linux VDA and Deploying Linux Specific Catalogs and Delivery Groups
Part 4: Bonus – Simple Image Management and Deployment of Linux VDAs

As always, if you wish to leave any questions, comments, or feedback, feel free to do so below. Thanks!

Share Button

Leave a Reply