VMDK (VMware) to VHD (Hyper-V) Conversion

If you are a Virtualization Engineer you may experienced this requirement in your Virtualization Environment. As everybody know VMware and Hyper-V are major Virtualization products in the current Vortualization environment. 
Sometimes you might need to move in to VMware to Hyper-V and Hyper-V to VMware. Here I’m going to show you how to convert your VMware Virtual Machine to Hyper-V Virtual Machine. VMDK is the VMware HDD file type and VHD/VHDX are the Hyper-V file systems. What I’m going to do is convert VMDK file system (VMware HDD) to VHDX (Hyper-V HDD). Before you do that you need to download the  Microsoft Virtual Machine Converter and convert my VMDK file in to VHDX file format. Then create a VM in your Hyper-V environment ,attach the disk and boot the VM. Installation of this Microsoft Virtual Machine Converter is a pretty straight forward and hope you can manage the installation.

Also I would like to compare the VHD and VHDX Disk formats:

VHD Features

  • VHDs use a 512 byte block size internally
  • VHDs are limited to a 2TB
  • VHDs can’t be resized live.
  • Supported to Windows Server 2008, 2008 R2, 2012 and 2012 R2

VHDX Features

  • VHDXs use 4KB and allign really well with new HDDS (3TB+) – Best to format in NTFS File system 
  • Great handling of Snapshots
  • UP to 64TB Disk size support
  • Only Supported on Windows 8, Windows 2012 and Later 

We are going to do this from Windows Powershell and there are lots of things that we can do from these cmdlets. This is just a one use of this powerful tool.

First run your Powershell as an administrator and import the module in to the Powershell, you can use the below command:

Import-Module ‘C:Program FilesMicrosoft Virtual Machine ConverterMvmcCmdlet.psd1’

If you not import this module you can see the below execution error on the Powershell console:

Now execute the below command to start the conversion :

 ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath < Source VMDK file name and path> -VhdType DynamicHardDisk -VhdFormat vhdx -DestinationLiteralPath < Destination VHD File name and path>

Now this will start the conversion

You can see the below completion screen after that.

Check your VHDX HDD under your destination folder

Now add this HDD to your Hyper-V server and Start. Now you are running the same server in Hyper-V environment.

Now you need to setup the IP Settings. All done. 

Leave a Reply