During my testing of Citrix XenDesktop 5 I ran across yet another bug, which set me back in my testing. Apparently if the VM template that you want machine creation services (MCS) to use has been configured with the VMware pvscsi controller, creating the VMs will fail when you generate a catalog.
The error that XenDesktop Desktop Studio will give you is:
The specified master VM snapshot could not be found. No machines have been created.
If you look in the Windows application log you see:
Provisioning scheme creation workflow operation failed : System.InvalidOperationException: VM not Found —> Citrix.HypervisorCommunicationsLibrary.InvalidVmConfigurationException: No disk controller found
As mentioned in my previous blogs, I always use the VMware pvscsi controller since it’s more efficient than the emulated legacy SCSI controllers. But, it seems that Citrix didn’t test this use case, since it fails miserably. The fix is to not use the VMware pvscsi controller, and use something like the LSI Logic SAS controller. But what if you already have a VM template built with the pvscsi controller, like me, and you don’t want to rebuild it because of a Citrix bug?
There’s an easy fix! While your VM template is running and using the pvscsi controller, open an elevated powershell and type the following:
Set-ItemProperty “HKLM:SYSTEMCurrentControlSetservicesLSI_SAS” -name “Start” -Value 0 -type “DWORD”
I then rebooted the VM (still with the pvscsi controller), shutdown the VM, then in vCenter changed the SCSI controller type to LSI Logic SAS. Next time the VM boots the LSI Logic SAS driver will be active at boot time and your VM won’t blue screen.
I hope Citrix can fix this bug in their next update for XenDesktop 5. It’s a bit disturbing that this scenario, just like the FIPS bug, wasn’t tested prior to GA.
Update: This issue is now fixed in XD5 SP1. Check out my post here.