Lately I’ve been doing more Hyper-V VHD to VMware VMDK conversions than I’d hoped. Unfortunately, the number of these conversions can be blamed on two specific entities: Me and Citrix. Me because I have just enough hubris to think I can convert a vhd to vmdk and have nothing go wrong. Citrix because they have their own hypervisor, and they’re seriously dating Microsoft. Citrix would rather run in Hyper-V or XenServer, and since that makes me angry and I have an 18 host VMware environment, I’m just not going to do that.
Converting vhd to vmdk with a basic converter doesn’t work in this situation. I’m not sure it works in any situation now. The problems are rooted in Hyper-V’s system disk being attached to a virtual IDE controller. vSphere 5 abandoned the basic IDE options. So, during conversion, the disk controller drivers become incompatible. What gets created is a busted Windows disk that boots to the Blue Screen Of Death (BSOD).
Changing the VM’s disk controller in the vSphere Client after the conversion made no difference because, again, drivers aren’t present. So, the other option was creating a Hyper-V VM and running a V2V conversion. After building a nested Hyper-V server inside vSphere ,I created a Hyper-V VM using the provided vhd disk. For the V2V conversion, install the VMware Converter Standalone on the Hyper-V server.
After opening the converter, be sure to select the Hyper-V server using localhost and not the computer name. If you don’t, the converter will throw a specific error about “another version of this product is already installed.” Once you’ve got the Hyper-V VM and the vSphere host selected, it’s time to make some decisions.
– If the vhd is thin provisioned already, the conversion will inflate it to its maximum size. In this case, the 9 GB vhd ballooned to 127 GB, so plan ahead because there’s no stopping this.
– VMware will see the converted disk as Thin Provisioned (TP); however, you will be unable to expand it any further:
The IDE controller will stop the expansion of this TP disk in vSphere. To give yourself a truly inflatable TP disk in, change the disk controller in the converter settings:
Edit the Data to Convert section and choose Thin as the Type of disk. Then choose a SCSI disk controller in the Devices section:
After the conversion, you’ll have a former thin provisioned vhd Windows server running in vSphere with a true thin disk.