Citrix – Learning About The Linux VDA
As part of taking the new Citrix Virtual Apps and Desktops (CVAD) LTSR release out for a spin, today I decided to look at the Linux VDA again. It’s been a while since I tried it as my previous attempts weren’t successful but today I figured was the day to try again !
Many years ago I worked on a Citrix install for a school in Hull which used XenApp on Sun Solaris to provide Open Office to their students at home for doing their homework. At the time I was greatly impressed but after putting a XenApp server on Solaris in for one of the previous companies I worked for, I haven’t seen anything *nix related since.
I decided to give it a go again as I do wonder whether a viable alternative to a Windows desktop / applications stack could be offered over Citrix so companies could use alternatives like LibreOffice on Linux.
The initial build out went reasonably well and I deployed a CentOS VM on XenServer 7.1 for my playground (I chose to use XenServer as I want to look at the MCS capabilities too). The first issue I encountered was that the VM wouldn’t boot after updating it and a quick bit of googling answered that one. The new kernel is patched for the Spectre / Meltdown vulnerability but my XenServer wasn’t so needed updating. I fiddled around trying to update it to CU2 after finding out in the end that you actually have to have a license for XenServer 7.1 to apply the patch.
With that in mind I decided to upgrade to XenServer 8.1 and once that was done the VM booted fine.
Getting the VM ready and installing the Citrix VDA was easy enough following the documentation from Citrix Install Linux Virtual Delivery Agent for RHEL/CentOS but once it was all done the VDA wasn’t registering. Checking the /var/log/xdl/vda.log file I was getting the repeated errors below:
[2020/01/21 14:52:25.3604086] [BrokerAgentAoTracing] [Error] Get ComputerSID Failed: System.NullReferenceException
Another quick google came up with Citrix Article CTX217634 and after correcting the /etc/krb5.conf file and rebooting, those errors went away.
The VDA still wasn’t registering so another check of the log showed references to time synchronisation issues. Sure enough, the VDA clock was out by 1.5 minutes even though it was supposed to be synchronising with AD through chrony. I set the time manually and after restarting the Citrix services the VDA registered !
After that I was able to launch a CentOS published desktop as my AD user, connect to my file server, and open and edit a Word document.
All in all a pretty successful days testing and learning exercise and the next steps are to get MCS to deploy out CentOS clones plus look at centralised profile stores for CentOS 🙂
Update – 21-01-20 @ 20:30
At a bit of loose end I thought I’d look at the MCS piece this evening and used the Citrix official documentation Use MCS to create Linux VMs.
From what seemed a slightly scary thing to try it turned out I only had to add the EPEL repository to my template VM, add my DNS server to /etc/xdl/mcs/mcs.conf file, and run the deploymcs.sh script.
After that I created a new MCS Machine Catalog through Studio which also frighteningly completed A) without issues first time, and B) pretty quickly. Then I created a new Delivery Group with a new Desktop named Centos-MCS-Desktop, logged on through my ADC and boom, I was able to launch a desktop as my AD user to the new clone VM !
Best find some more things to look at now as I also stumbled upon an article from Citrix CTX231898 which is a How to roam linux user profiles using NFS.