If you are running Citrix PVS in a VMware vSphere environment you know what a headache it is to update VMtools on your image. Citrix uses the Virtual Hard Disk (VHD) format for its vDisk and sadly VMware doesn’t like VHD’s. Instead of using Citrix XenConvert or StarWind V2V Converter, VMware Workstation should make this process much easier for you! VMware Workstation started supporting the VHD format with version 10 and makes upgrading VMtools a pretty simple task.
I will be using VMware Workstation 11 and will show you how to open your PVS VHD image and update tools without the need to reverse image it.
Citrix VHD Preparation:
First you need to merge your vDisk versions to a single base. In the Provisioning Service Console under vDisk Pool, right click the name of your vDisk and click Versions.
Click the newest version of your vDisk and click Merge.
You want to create a new Merged Base and make this Maintenance so not to interfere with your current environment. Click Ok.
This can take quite a while if you haven’t made a merged base in a while. Once complete you will have a new merged base version. Click Done.
Now browse to your Citrix vDisk directory and copy the VHD file created above to your desktop, this will be the file we work with in VMware Workstation.
VMware Workstation:
It is time to create our Workstation VM. Open VMware Workstation and click Create a New Virtual Machine:
Click on the Custom option and click Next:
Leave the hardware compatibility, click Next:
Select the I will install the operating system later. Click Next:
Select which OS your Citrix PVS image is. In my case it’s Windows Server 2008 R2. Click Next:
Name your VM and select the location the files will go. Click Next:
Leave firmware type on BIOS. Click Next:
Give the VM a CPU or two. Click Next:
Give the VM some memory. Click Next:
I would recommend use network address translation (NAT). This will basically piggy back off your workstations NIC. Quickest and easiest option to get your VM network connectivity if needed. Click Next:
Leave the selection on default of LSI Logic SAS. Click Next:
Change the Disk Type to IDE for the best compatibility. Click Next:
Since we have a VHD disk to use, select Use an existing virtual disk. Note: On the Browse screen change the drop down menu to All files otherwise you won’t be able to see your VHD file. Click Next:
Now we are ready to create our Workstation VM using the Citrix PVS VHD Disk! Click Finish:
Select the VM we created and click Power on this virtual machine:
The moment of truth…. if you receive a blue screen you need to edit the virtual machine and change the disk controller type. Since we picked IDE you shouldn’t have any problems.
Once booted you need to download the VMtools package that correlates to your vSphere environment.
Read about it here: VMware Operating System Specific Packages (OSPs)
Access repository here: http://packages.vmware.com/tools/esx/index.html
I am running vSphere 5.5 Update 2, so I browsed to 5.5u2, windows, and there is the VMtools ISO:
Now lets mount that ISO and update VMtools. Right click your VM in Workstation and click Settings:
Click on the CD/DVD drive then select Use ISO image file. Browse for the VMtools ISO we downloaded and click Ok:
You are now ready to upgrade tools:
Once finished go ahead and power down that VM so we can copy it back to Citrix. In your Citrix PVS VHD folder, rename the original VHD file and add -old to the end. This will serve as our backup in case you have problems with the new VHD. Copy the VHD file on your computer and put it in your Citrix PVS VHD directory.
Now you can promote that vDisk to Production. Once your farm reboots they will be running updated VMtools!
Leave comments below if everything went smooth or if you had any issues!
Handy tip! One thing though, you have two of the same screenshot twice. I will install operating system later and choosing the OS.
haha Whoops!! Thanks! Added correct screenshot 🙂
I was always told to uninstall PVS Target Device Software (TDS), update virtualization tools and then reinstall TDS or install updated TDS.
You had no issue with updating the network stack with TDS installed?
Documenting the above I did not receive any errors by not reinstalling TDS. I’m guessing the VMtools upgrade did not change enough to affect it. However, you are correct that it is best practice (normally necessity) to reinstall TDS when you mess with the network stack. I’ll add that step in! Thank you Webster for making this process more foul proof 🙂
FYI, I was having issues with some of my VHD’s. I was getting the error ‘the file specified is not a virtual disk’ when trying to import the VM into VMWorkstation. I also was not able to mount the VHD on server 2012.The reason being they were created with 16mb block sizes. I used this site to convert back to 2mb. http://trentent.blogspot.com/2014/05/how-to-convert-16mb-block-size-pvs-vhd.html
Hi – I tried your steps and I lost the trust relationship, do you know why?
Hi Craig! Normally that error occurs when the XenApp server doesn’t have an Active Directory account. Check to ensure the computer account is still in AD!
Hi Daniel
The account is still active in AD.
Hi Graig, normally the PVS server is doing the AD stuff on behalf of the target device (machine account password in PVS database). Now you don’t use the PVS server and the client does not know it’s machine account password. This is very normal.
HI Graig, I found your solution just now, and would like to ask if it’s working with PVS 7.7 which is using VHDX files instead of VHD. Unfortunatelly I can’t find if VMWare Workstation supporting VHDX files …
Many thanks.
Sorry, my fault. The question is for Daniel.
I use an alternative method described here http://www.npbconsultants.com/archives/207
So far the painless way of upgrading VMTools on PVS images. Thanks a lot!!! Keep on blogging but don’t get bored 🙂
Guys I follow the doc but when I boot the VM, I receive the error: This virtual machine is configured for 64-bit guest operating systems. However, 64-bit operation is not possible.
This host does not support Intel VT-x.
I´m using windows server 2012 with Workstation 12. Someone can help me?