Convert a VMware VM to Hyper-V in the VMM fabric
This article describes how to convert VMware VMs in the System Center Virtual Machine Manager (VMM) fabric to Hyper-V.
You can convert the VMs using the Convert Virtual Machine wizard. You can use this wizard from the VMM console.
VMM 2019 UR3 supports conversion of VMware VMs to Hyper-V and Azure Stack HCI 20H2. Learn more about support to Azure Stack HCI 20H2.
Important
- See system requirements for supported versions of vSphere (ESXi).
- You can't convert VMware workstations.
- You can't convert VMs with virtual hard disks connected to an IDE bus.
- Anti-virus apps must be supported.
- Online conversions aren't supported. You need to power off the VMware VMs.
- VMware tools must be uninstalled from the guest operating system of the VM.
- We recommend upgrading to VMM 2022 UR2 to convert your VMware VMs to Hyper-V four times faster.
Note
We recommend that no more than ten conversions be triggered parallelly from the same ESXi source to the same Hyper-V destination. If the source-destination pair is different, VMM can support up to 100 VM conversions in parallel, with the remaining conversions queued. However, we recommend staging the VM conversions in smaller batches for higher efficiency.
Note
After conversion, all VM disks except for the OS disk will be offline. This is because the NewDiskPolicy
parameter is set to offlineALL on VMware VMs by default. To override this and to have the new disks brought online after conversion, you can make one of the following changes to your VMware VM disk policy before initiating the conversion:
Set-StorageSetting -NewDiskPolicy OfflineShared
: To have all the new shared bus disks offline and all the new local bus disks onlineSet-StorageSetting -NewDiskPolicy OnlineAll
: To have all the new disks online, regardless of whether the disks are on a local or shared bus.
Important
- See system requirements for supported versions of vSphere (ESXi).
- You can't convert VMware workstations.
- You can't convert VMs with virtual hard disks connected to an IDE bus.
- Anti-virus apps must be supported.
- Online conversions aren't supported. You need to power off the VMware VMs.
- VMware tools must be uninstalled from the guest operating system of the VM.
Note
We recommend that no more than ten conversions be triggered parallelly from the same ESXi source to the same Hyper-V destination. If the source-destination pair is different, VMM can support up to 100 VM conversions in parallel, with the remaining conversions queued. However, we recommend staging the VM conversions in smaller batches for higher efficiency.
Note
After conversion, all VM disks except for the OS disk will be offline. This is because the NewDiskPolicy
parameter is set to offlineALL on VMware VMs by default. To override this and to have the new disks brought online after conversion, you can make one of the following changes to your VMware VM disk policy before initiating the conversion:
Set-StorageSetting -NewDiskPolicy OfflineShared
: To have all the new shared bus disks offline and all the new local bus disks onlineSet-StorageSetting -NewDiskPolicy OnlineAll
: To have all the new disks online, regardless of whether the disks are on a local or shared bus.
Important
- See system requirements for supported versions of vSphere (ESXi).
- You can't convert VMware workstations.
- You can't convert VMs with virtual hard disks connected to an IDE bus.
- Anti-virus apps must be supported.
- Online conversions aren't supported. You need to power off the VMware VMs.
- VMware tools must be uninstalled from the guest operating system of the VM.
- We recommend upgrading to VMM 2022 UR2 to convert your VMware VMs to Hyper-V four times faster.
Note
We recommend that no more than ten conversions be triggered parallelly from the same ESXi source to the same Hyper-V destination. If the source-destination pair is different, VMM can support up to 100 VM conversions in parallel, with the remaining conversions queued. However, we recommend staging the VM conversions in smaller batches for higher efficiency.
Note
After conversion, all VM disks except for the OS disk will be offline. This is because the NewDiskPolicy
parameter is set to offlineALL on VMware VMs by default. To override this and to have the new disks brought online after conversion, you can make one of the following changes to your VMware VM disk policy before initiating the conversion:
Set-StorageSetting -NewDiskPolicy OfflineShared
: To have all the new shared bus disks offline and all the new local bus disks onlineSet-StorageSetting -NewDiskPolicy OnlineAll
: To have all the new disks online, regardless of whether the disks are on a local or shared bus.
There are currently a couple of methods for converting VMware VMs to Hyper-V:
Convert Virtual Machine Wizard: You can use this wizard from the VMM console.
Important
- See system requirements for supported versions of vSphere (ESXi).
- You can't convert VMware workstations.
- You can't convert VMs with virtual hard disks connected to an IDE bus.
- Anti-virus apps must be supported.
- Online conversions aren't supported. You need to power off the VMware VMs.
- VMware tools must be uninstalled from the guest operating system of the VM.
Microsoft Virtual Machine Converter: This standalone tool converts VMware VMs to Hyper-V hosts or Azure VMs. It also converts physical machines and disks to Hyper-V hosts.
Important
This tool has reached end of support.
Convert using the wizard
- Select VMs and Services > Home > Create > Create Virtual Machines > Convert Virtual Machine.
- In Convert Virtual Machine wizard > Select Source, select Browse and in Select Virtual Machine Source, select the VMware VMs you want to convert.
- In Specify Virtual Machine Identity, modify the machine name and description as required.
- In Virtual Machine Configuration, specify the number of processors and memory settings.
- In Select Host, select a Hyper-V host/Azure Stack HCI (applicable from VMM 2019 UR3 and later) for placement. In Select Path, configure the storage location on the host for the VM files. The default VM paths are listed.
- In Select Networks, select the logical network, virtual network, and the VLAN as applicable.
- In Add Properties, configure the required settings. In Summary, review the settings, and select Start the virtual machine after deploying it if necessary.
- Select Create to start the conversion. Verify the VM's conversion in VMs and Services > Home > Show > VMs.
Convert EFI-based VM to Hyper-V Generation 2 VM
System Center VMM enables the migration of EFI-based VMware VMs to Hyper-V. VMware VMs that you migrate to Microsoft Hyper-V platform can now take advantage of Generation 2 features.
The Convert Virtual Machine wizard enables this migration. Based on the firmware type (BIOS or EFI), the wizard selects and defaults the Hyper-V VM generation appropriately.
The Convert Virtual Machine wizard enables this migration. Based on the firmware type (BIOS or EFI), the wizard selects and defaults the Hyper-V VM generation appropriately.
- BIOS-based VMs are migrated to Hyper-V VM Generation 1.
- EFI-based VMs are migrated to Hyper-V VM Generation 2.
Before you start
Ensure the following prerequisites are met:
- VMware VMs with firmware type as EFI
- VMware ESXi Hosts added in System Center VMM
Conversion procedure
To convert, follow the above procedure and select Generation 2 in step 4.
Once the VM is converted, you can see the Generation 2 VM as shown in the image below:
Note
- PowerShell commands allow you to provide the disk type for the target Hyper-V VM, which will enable the VMware thick provisioned disk to be migrated as Hyper-V dynamic disk or vice versa, based on the requirements.
Convert using PowerShell cmdlets
Here are the sample cmdlets:
New-SCV2V -VMHost <Host> -VMXPath <string> [-EnableVMNetworkOptimization <bool>] [-EnableMACAddressSpoofing
<bool>] [-VMMServer <ServerConnection>] [-LibraryServer <LibraryServer>] [-JobGroup <guid>] [-Trigger] [-VhdType
{UnknownType | DynamicallyExpanding | FixedSize}] [-VhdFormat {VHD | VHDX}] [-Description <string>] [-Name
<string>] [-Owner <string>] [-UserRole <UserRole>] [-Path <string>] [-StartVM] [-CPUCount <byte>]
[-CPURelativeWeight <int>] [-CPUType <ProcessorType>] [-MemoryMB <int>] [-Generation <int>] [-DelayStartSeconds
<int>] [-StartAction {NeverAutoTurnOnVM | AlwaysAutoTurnOnVM | TurnOnVMIfRunningWhenVSStopped}] [-StopAction
{SaveVM | TurnOffVM | ShutdownGuestOS}] [-LogicalNetwork <LogicalNetwork>] [-VMNetwork <VMNetwork>]
[-NoConnection] [-MACAddress <string>] [-MACAddressType <string>] [-SourceNetworkConnectionID <string>]
[-VirtualNetwork <VirtualNetwork>] [-VirtualNetworkAdapter <VirtualNetworkAdapter>] [-VLanEnabled <bool>] [-VLanID
<uint16>] [-OverridePatchPath <string>] [-SkipInstallVirtualizationGuestServices] [-NetworkLocation <string>]
[-NetworkTag <string>] [-RunAsynchronously] [-PROTipID <guid>] [-JobVariable <string>] [<CommonParameters>]
Convert VMware VMs to Hyper-V faster
- As a prerequisite to start converting VMware VMs to Hyper-V four times faster, upgrade to SCVMM 2022 UR2 or later.
- As part of SCVMM 2022 UR2, a new registry named V2VTransferChunkSizeBytes is introduced at HKLM:\SOFTWARE\Microsoft\Microsoft System Center Virtual Machine Manager Agent in the Hyper-V hosts managed by SCVMM.
- This registry of type REG_DWORD, with a value of 2147483648, which is 2 GB in bytes has to be set on every Hyper-V host managed by VMM by running this script from the VMM Console.
- Alternatively, if you want to set this registry value in a single host and not on all the hosts, run this script from the VMM Console.
- After setting this registry value, if you remove any Hyper-V host(s) from SCVMM, stale entries for this registry might remain. If the same host(s) is re-added to SCVMM, the previous value of registry V2VTransferChunkSizeBytes will be honored.
Change the disk read-write chunk size
With VMM 2025, the VMware to Hyper-V VM conversion's read-write chunk size is set to 2 GB by default. To change this chunk size, follow this procedure:
- The transfer chunk size is determined by a registry named V2VTransferChunkSizeBytes at HKLM:\SOFTWARE\Microsoft\Microsoft System Center Virtual Machine Manager Agent in the Hyper-V hosts managed by SCVMM.
- This registry of type REG_DWORD is set with a value of 2147483648, which is 2 GB in bytes. Change the chunk size on every Hyper-V host managed by VMM by running this script from the VMM Console after modifying the chunk size in the script as required.
- Alternatively, if you want to change this registry value in a single host and not on all the hosts, run this script from the VMM Console after modifying the chunk size in the script as required.
- After changing this registry value, if you remove any Hyper-V host(s) from SCVMM, stale entries for this registry might remain. If the same host(s) is re-added to SCVMM, the previous value of registry V2VTransferChunkSizeBytes will be honored.