Citrix XenDesktop with VMware Infrastructure Virtual Machines
We have seen quite a number of clients that decide to go down the route of using Citrix XenDesktop and to be honest, who can blame them. Now don’t get me wrong VMware View is a great VDI product and solution but even with PCoIP for some customers it just doesn’t match up due to Citrix HDX technology.
I am not here to tell you about VMware View or about Citrix XenDesktop as this information is freely available on the interweb, and both are awesome in their own entities with comparative end results but I am here to tell you about a problem I had when trying to use XenDesktop to connect to virtual machines that were on VMware infrastructure. I understand that this doesn’t happen to everyone which if it doesn’t then that’s great but for some it has been hours of frustration to get it resolved.
Now, although I found my resolution via various searches and trying different options out, for me the following was the only way I could get my systems to talk to each other.
Firstly, the problem. You install XenDesktop, perhaps on XenServer, get XenCenter installed on your desktop and setup a few VM’s while trying out the features of the freely available XenServer and think great this is nice and simple. Then RDP or whatever you use onto the XenDesktop box and open up the Delivery Services console, get all your controllers configured and working and start creating the desktop groups, easy. I like this.
Using the hosting infrastructure options you select the default Citrix Xen VM infrastructure and proceed to create and assign either pooled or assigned desktop groups connecting to the VM’s created a bit earlier on the XenServer.
Then you think, aha, lets setup my desktop pc, assuming its hardware based for now. So you install the XenDesktop Agent on the desktop, sort out and WDDM issues you have with your graphics card and then setup the desktop group as an assigned desktop, pre-assigned for yourself using None as the hosting infrastructure and all looks good.
Right, let’s add one of our VMware hosted VM’s. Again you install the XenDesktop Agent into the VM, again sort out any WDDM issues which sometimes arise with the VMware Tools graphics driver, select VMware virtualization as your hosting infrastructure and click next. That’s nice, you think, as it gives you an example for the address to use, i.e. https://VirtualCenter.example.com/sdk, can it get much easier? You input your username and password for the VirtualCenter, i.e. Domain/Username and Password and hit Next.
Bang. Error message pops up. ‘Invalid Address – The hosting infrastructure could not be reached at the specified address.’
You try other variations for the address, with and without the S on HTTP, you try short name, FDQN with dots without dots and get no further. Your next thought is whether the SDK is running on the VirtualCenter server or in fact installed in the first place. Many VMware admins will know all about the SDK so I won’t go into that but on my occasion I knew it was running as in-house we are running various scripts which rely on this service.
After searching for answers and trying a number of different options, the one that worked for me is as follows:
- Log in to the VirtualCenter Server with an account that has local Administrative rights.
- Navigate to the directory containing the proxy.xml file (this will vary depending on OS):
Windows 2003 C:\Documents and Settings\All Users\Application Data\VMware VirtualCenter - Backup the current proxy.xml file (just in case you make a mistake)
- Use a text editor to open the proxy.xml file.
Note: do not use the standard Windows Notepad as I managed to change the wrong part initially due to the way it reads the file, use WordPad, Notepad++ or equivalent so it gives you a proper layout - Find the section of the file associated with the /sdk
- Change the accessMode from httpsWithRedirect to httpAndHttps and save the file
- Restart the VirtualCenter Service from a command line or from the Windows Services control panel and your set
I go back over to my XenDesktop machine and to connect to VMware hosted infrastructure I use http://VirtualCenter.example.com/sdk and it connects successfully.
For some, this may not be the answer so I provide the following as an option to try which relates to a possible SSL trust issue if using https.
- Take the default certificate file on the VirtualCenter server (location OS dependant and this may be the default one that is installed when you install VirtualCenter or might be a trusted certificate you’re company has which has been digitally signed by a SA):
Windows 2003 C:\Documents and Settings\All Users\Application Data\VMware\VMware VirtualCenter\SSL\rui.crt
- Import it under Trusted Root Certification Authorities on the Desktop Delivery Server:
a. On the Desktop Delivery Server, click Start then Run
b. Type mmc and press enter
c. Click File ... then Add/Remove Snap-In
d. Click Add button
e. Select Certificates
f. Select Computer Account and click Finish
g. Click close then click Ok
h. Expand Certificates then expand Trusted Root Certification Authorities
i. Right-click on Certificates and choose Import
j. Click Next and browse to the .crt file from the VirtualCenter server. Click Next... Next then Finish.
Note: If using the default rui.crt from VMware, then you now need to edit the hosts file on the Desktop Delivery Controller to point to the VirtualCenter server but with the hostname being vmware, since this is the name on the default certificate:
In Notepad open the following file: C:\Windows\System32\drivers\etc\hosts
Add the following and save the file:<IP address of the VC server> vmware
- When connecting to the VC server while creating a Desktop Group use one of the following URLs:
https://vmware/sdk - if using the default rui.crt from VMware
https://VirtualCenter.example.com/sdk - if using a trusted and signed certificate from your company. Ensure that the XenDesktop server has had the trusted root certificate installed.
It’s possible that there are other reasons why you might not be able to connect correctly. Firewalls are always fun but the above was the issue in my case.
Spotlight:
VMware Documentation Downloader v11.08.30
Updated for vSphere 5 - A free tool for those on the move who need information FAST
vSphere 5 License Entitlement Changes
See what has changed in the license entitlement in vSphere 5?
Thin Client vs Zero Client
The differences between Thin and Zero desktop clients for VDI
