This post describes how you can import a VHD disk image file from XenApp 6 to your VMware vSphere 5 environment in a few simple steps. I am writing this because VMware vCenter Converter Standalone Client version 4.3 does not support conversion of VHD image files, even though it has done so in previous versions. I guess this procedure can be used on VHD files in general, but I have not tried it.
- Download and install StarWind V2V Image Convertor to convert the VHD image to a VMDK. V2V Image Convertor is free Windows software, but requires you to register before download
- Start the program and choose the virtual disk you would like to convert, in my case a VHD-file
- Next you need to decide the destination image format you would like to convert to, I choosed VMware ESX server image
- Select the destination for your new VMDK image file and start the conversion. This can take a while depending on the disk size
- When the conversien has finished createing two .vmdk files, copy them to your VMware storage.
- Open vSphere Client and create a new Virtual Machine with the configuration you desire in your VMware environment. Create it with a Hard disk. Do not power on this machine
- On the VMware file storage locate the new virtual machine folder and replace the converted-vhd-image-file-flat.vmdk file with the one already in there
- Netxt we need to edit the hard disk meta fila and copy the
# Extent description RW 102400000 VMFS "converted-vhd-image-file.vmdk"
value from the converted meta file converted-vhd-image-file.vmdk to the one VMware created to the new virtual machine
- You are now ready to power up your converted VHD to VMDK image file in a VMware virtual machine with hardware version 8
The full listing of my working converted-vhd-image-file.vmdk file is like this
# Disk DescriptorFile version=1 encoding="UTF-8" CID=fffffffe parentCID=ffffffff isNativeSnapshot="no" createType="vmfs" # Extent description RW 102400000 VMFS "converted-vhd-image-file-flat.vmdk" # The Disk Data Base #DDB ddb.virtualHWVersion = "8" ddb.longContentID = "660f859cd36ce88e4fd6e0bcfffffffe" ddb.uuid = "60 00 C2 9a c0 a3 63 b1-1f 85 fe 55 e8 1e 30 a5" ddb.geometry.cylinders = "5221" ddb.geometry.heads = "255" ddb.geometry.sectors = "63" ddb.thinProvisioned = "1" ddb.adapterType = "lsilogic"