Virtualization is a great way to extend the utilization of hardware in one's organization. Most companies today have virtualized their environment with VMware, HYPERV, or other products. But what happened if for your reasons must convert your VMware Environment in HYPER-V or a specific task required to convert only one VMware client in HYPERV? The previous month I face an issue that required me to convert my Domain Controller from VMware to HYPER-V. The reason was that I didn't have a VMware Lab in a different network to copy my Domain Controller but already I have configured a HYPER V Server as Test Environment. So I decided to convert my VMware Client to HYPER-V. I start my research and I found the Microsoft Virtual Converter tool.
<< I am not here to say that Microsoft is better than any other converting tool. but indeed prefer to work with tools from the same company rather than a third company. If my task was to convert a HYPER-V client to VMware I will try to find a tool from VMware first. >>
If you want to read and learn more details about VMC (Microsoft Virtual Machine Converter) you can open the Convert Linux Server to HYPER-V from ESX Server that i wrote after this article and describe how can convert a Linux Server to HYPER-V from MVMC Console.
You can do it with two different ways but for both solutions must install the Microsoft V
Before proceeding with MVMC please read carefully that Microsoft Virtual Machine Converter (MVMC) has been retired. If you have already downloaded or installed you can use it at your own risk. Read more details in Microsoft Virtual Machine Converter (MVMC) is being retired.
How to Convert Vmware VM to HYPER-V WITH MVMC
First of all, you must install the Microsoft Virtual Machine Converter is a Virtual Machine hosted in HYPER-V and NEVER in HYPER-V Host which is in a Production Environment.
If you have a Lab with a HYPER-V Host and you want to test the solution then you can set up the Microsoft Virtual Machine Converter (MVMC) in HYPER-V Host
- Download the Microsoft Virtual Machine Converter from here
- Start the installation and follow the wizard with the default options until finish the installation
- After the installation finish you can open the Microsoft Virtual Machine Converter (MVMC)
- In the Welcome Screen click Next.
- Select the Virtual Machine Conversion.
- Select Migrate to HYPER-V. Click Next.
- Type the Ip Address of the HYPER-V and the credentials of the administrator account which can have access to the HYPER-V Host.
- Give the path which will be saved the converted Virtual Machine and the virtual disks.
- Give Ip address and credentials of the ESXi.
- Select the Virtual Machine that you want to convert. Click Next.
- As you can see here it's only one Virtual Machine.
- The reason is that i usI HYPER-V and have setup an ESXi as VM in HYPER-V which believe it's very hard and takes me lot of time to resolve all the issues which face because ESXi it's not supported in third part Hypervisor.
- We want to leave default the options for the state of the Virtual Machine before and after the conversion.
- Select a path for the converted virtual hard disks.Click Next.
- Click Finish and the Conversion will be start.
- Base on the Storage and the size of the Virtual Machine it will take some time to finish.
The reason is that we not proceed with the migration of all VMware Environment (ESX) but will convert only one VM. With a GUI Environment of Microsoft Virtual Machine Converter you can proceed only if you have vCenter Server, ESX or ESXI. So you can't convert on that way this time but we can proceeded with CLI to convert virtual hard disk and create the new VM.
How to Convert VMware(vmdk) to HYPER-V Disk(vhd) with Powershell
If you don't want to proceed with the Microsoft Virtual Machine Converter (MVMC) Console then you can use Powershell to convert specific VMware Virtual Machine without need to connect in the ESXi.
How can do this? Let's explain it
- Restore the VMware Virtual Machine from a Backup or Shutdown your VMWARE Virtual Machine and copy the VM in the Virtual Machine which has install the Microsoft Virtual Machine Converter (MVMC).
- Open a Powershell as an Administrator
- Import the MVMC module with the following command.
Import-Module "C:\Program Files\Microsoft Virtual Machine Converter\MvmcCmdlet.psd1"
- Prepare the source path with vmdk disk of VMware and the destination path.
- Be careful because if you download the full VM from Esxi it will create 2 vmdk files. Once with "-flat.vmdk" that has the size of the disk and one with ".vmdk" which is 1-2 kb. When you type the ConvertTo-MvmcVirtualHardDisk command to start the conversion use the path of the disk with ".vmdk" extension. Don't confuse it because you will have issues.
- If you will use the path with file "-flat.vmdk" will get an error
ConvertTo-MvmcVirtualHardDisk : No suitable drive was found at path .........
- So type the following command and just change the Paths of the Source and Destination to start the convertion
ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath "C:\Users\user\Documents\temp\vm\pgdc.vmdk" -DestinationLiteralPath "C:\Users\Public\Documents\Hyper-V\Virtual hard disks\pgdc" -VhdType DynamicHardDisk -VhdFormat Vhd.
- Following is the standard command that you can use
- SourceLiteralPath = It is the path with the vmdk file.
- DestinationLiteralPath = It is the path for the new vhd disk..
- VhdType =You can use FixedHarddisk OR DynamicHarddisk.
- VhdFormat = the format of disk vhd or vhdx.
- Base on the size of VM it will take the necessary time to finish.
- When conversion complete you will get an output as follow.
How to attach the converted VHD or VHDX file in HYPER-V
If the conversion completed successful it's time to attach the converted virtual disk in HYPER-V.
Probably you are working in Lab Environment to test the VM. But in Lab Environment you are free to do lot of changes for improvements.
- After finish the conversion open the Destination path and you will see a new file with the vhdx extension .
- Open the HYPER-V Manager
- Go in the right Pane Actions and click New - - >Virtual Machine
- You will open a new a Wizard to follow the steps.
- In the first Screen just click Next.
- Specify the Virtual Machine Name . This is your decision.
If you want to store Virtual Machine in different Partition you must check in Store virtual machine in a different location.
For my Virtual Machines i have create a different partition in my Disk. So when create a new Virtual Machine i change the Default Path.
- Click Next.
- Select the Generation base on your requirements. Click Next.
- Here assign the memory that you want to take Virtual Machine from your Physical PC. Be careful to give RAM that can support your Physical Machine. Do your calculations, type the number and Click Next.
- Click in Drop Down List and select the New Virtual Switch or Not Connection if you don't have LAN or you don't want to connect your Virtual Machine in LAN.
- Select Use an existing virtual hard disk. Click Browse and select the converted virtual hard disk.
- Click Next.
- Click Finish.
- Double click in New Virtual Machine.
- Click in Power on Button to Start.
- It will take more time to boot only for the first time.
How to convert VMware ESXi VM with StartWind
Another one way that can convert the Virtual Machines from Esxi Server is a free application from StartWind the StartWind Converter which can use it for the convetion.
I have use it lot of times without any problem and can have multiple options for the convertions
So let's start !!
How to install StarWind Converter
- Download the StartWind Converter from https://www.starwindsoftware.com/starwind-v2v-converter .Note that you must signup before download the application
- The installation is straight forward
- Double click in the startwind.exe file.
- Accept the agreement and click Next
- Once again Next
- And Next
- Check to create a Desktop Icon if you want. Click Next
- Click Install and wait to finish.
Convert VM from Esxi to HYPER-V with StartWind Converter
After finish successful the installation open the StartWind Converter.
- Click on Remote Vmware Esxi Server. Click Next
- Type the Ip Address and the credentials of the Esxi Server
- Select the VM that you would like to Convert. Click Next
- Select Microsoft HYPER-V Server. Click Next
- Type the Ip Address and the credentials of the HYPER-V Server.
- Select the path of the Virtual Machine in HYPERV Server and other details like the Name and the Virtual Switch that will use in HYPER-V. Click Convert
- Depends the size of the Virtual Machine it will take the appropriate time to finish.
- After finish successful the Migration from Esxi it's time to check if Integration Services are up to Date.
- What is Integration Services and where can find it? Read the Manage HYPER-V Integration Services to answer your questions and use HYPER-V as Professional.
We converted a VMware Client into HYPER-V.
I hope to find interesting my article. Read and enjoy !!
Have a nice weekend!!