Import a VHD disk image file from XenApp 6 to VMware vSphere 5

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.

  1. 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
  2. Start the program and choose the virtual disk you would like to convert, in my case a VHD-file
  3. Next you need to decide the destination image format you would like to convert to, I choosed VMware ESX server imageStarWind Image Converter Destination Image format
  4. Select the destination for your new VMDK image file and start the conversion. This can take a while depending on the disk size
  5. When the conversien has finished createing two .vmdk files, copy them to your VMware storage.
  6. 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
  7. 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
  8. 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

  9. 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

# Extent description
RW 102400000 VMFS "converted-vhd-image-file-flat.vmdk"

# The Disk Data Base

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"