Table of Contents
- What is the easiest way to perform a bulk migration of VMware VMs to a Hyper-V cluster?
- Key Capabilities for a Smooth Migration
- Getting Your Environment Ready
- Windows Admin Center Gateway Requirements
- VMware Environment and Guest OS Support
- Installation and Setup Procedure
- The Migration Process Step-by-Step
- Synchronization Phase
- Migration Execution
- After the Move: Post-Migration Tasks
- Important Limitations to Know
- Solving Problems: Troubleshooting Tips
What is the easiest way to perform a bulk migration of VMware VMs to a Hyper-V cluster?
You can convert VMware virtual machines (VMs) to Hyper-V directly within Windows Admin Center using a new extension. This tool provides an agentless method for moving VMs, designed to simplify the migration process and reduce downtime.
The VM Conversion extension for Windows Admin Center allows you to move virtual machines from a VMware vCenter environment to a Microsoft Hyper-V host. It is designed to be a streamlined, integrated solution that handles many of the technical complexities of a cross-platform migration. Unlike some other migration tools, it does not require you to install special software, called an agent, on each virtual machine you want to move. This agentless approach saves significant time and effort, especially when you have many VMs to migrate. The tool can even handle moving up to 10 virtual machines at once, allowing you to migrate entire application stacks together. It uses a technology called change block tracking (CBT) to copy the VM data efficiently, minimizing the time your services are offline during the final switch.
Key Capabilities for a Smooth Migration
The tool offers several features that address common migration challenges. These capabilities work together to make the conversion from VMware to Hyper-V more reliable and straightforward.
- Agentless Discovery: The extension connects directly to your vCenter server to find your VMs. You do not need to install any software inside the guest operating systems of your VMware VMs, which simplifies preparation.
- Bulk Migrations: You can select and migrate up to 10 VMs in a single batch. This is useful for moving applications that run on multiple servers, ensuring all components are moved together.
- Automatic Boot Configuration: The tool automatically adjusts the VM’s firmware settings. It converts older, BIOS-based VMware VMs to Generation 1 Hyper-V VMs. Newer, UEFI-based VMs are converted to Generation 2 Hyper-V VMs. This prevents boot-up failures after the migration.
- Static IP Preservation: For Windows VMs, the tool can run a script to ensure the machine keeps its original static IP address on the new Hyper-V host. This helps avoid network connectivity problems after the move.
- Cluster Awareness: The extension is designed to work with Windows Server Failover Clusters. It can migrate VMs to a clustered environment, which is essential for maintaining high availability for your applications.
Getting Your Environment Ready
Before you can begin a migration, you must ensure both your Windows Admin Center gateway and your VMware environment meet specific requirements. Fulfilling these prerequisites is critical for the tool to function correctly.
Windows Admin Center Gateway Requirements
- You must be running Windows Admin Center Gateway V2, specifically version 2410 or newer.
- PowerCLI needs to be installed on the gateway. You can install it by running the command Install-Module -Name VMware.PowerCLI in PowerShell. PowerCLI is a set of tools that allows Windows Admin Center to communicate with your VMware vCenter.
- The Microsoft Visual C++ Redistributable packages for 2013 and the latest version must be installed. These libraries provide necessary runtime components.
- You must download the VMware Virtual Disk Development Kit (VDDK) version 8.0.3. After downloading, extract the files to this specific folder: C:\Program Files\WindowsAdminCenter\Service\VDDK. The VDDK allows the tool to read the VMware virtual disks.
- The destination Hyper-V server must have the Hyper-V role installed and enabled.
VMware Environment and Guest OS Support
- The extension works with VMware vCenter versions 6.x and 7.x. It does not currently support vCenter 8.x or environments that use VMware vSAN for storage.
- Your virtual machines cannot have any active snapshots. The tool will fail its pre-migration check if snapshots are found. You must consolidate all snapshots on a VM before you can migrate it.
- For the guest operating systems inside the VMs, the tool supports a range of Windows and Linux versions. Supported Windows versions include Windows Server 2012 R2 through 2025 and Windows 10.
- Supported Linux distributions include Ubuntu (20.04, 24.04), Debian (11, 12), and RHEL-based systems like AlmaLinux, CentOS, and RHEL 9. Modern Linux versions often have Hyper-V integration services built into the kernel, so you may not need to install them separately.
Installation and Setup Procedure
Once your environment is ready, the next step is to install the extension in Windows Admin Center and connect it to your VMware vCenter.
- Install the Extension: Open Windows Admin Center and go to the Settings menu (the gear icon at the top right). Select Extensions. In the “Available Extensions” list, find “VM Conversion (Preview)” and click Install.
- Connect to vCenter: After the installation is complete, you will find a new “VM Conversion” tool in the main navigation pane. The first time you open it, you will be prompted to connect to a vCenter server. You must provide the server’s fully qualified domain name (FQDN), along with a username and password that has permission to access the VMs.
The extension performs a series of pre-migration checks automatically. It verifies that all prerequisites are met, such as checking for PowerCLI and the VDDK. It also confirms it can connect to the destination Hyper-V host and that there is enough disk space available.
The Migration Process Step-by-Step
The migration itself is a two-part process: an initial synchronization followed by the final migration. This approach is designed to minimize the time your VM is offline.
Synchronization Phase
During this phase, the tool copies the virtual disks of the source VM to the destination Hyper-V host.
- You can select a batch of up to 10 VMs to synchronize at once.
- The source VMs remain online and fully operational during this initial copy.
- The tool uses Change Block Tracking (CBT) to track any changes made to the VM’s disks while the copy is in progress. This technology is very efficient because it only notes the data that has changed, rather than re-scanning the entire disk.
- The process creates VHDX files, the virtual hard disk format used by Hyper-V, in the destination path you specified.
Migration Execution
This is the final cutover phase where the VM is moved to Hyper-V.
- Delta Replication: When you start the migration, the tool first performs a delta replication. It copies over the small amount of data that changed since the initial synchronization finished.
- Power Down Source VM: With your consent, the tool powers down the original VMware VM.
- Final Sync: A final, very quick synchronization is performed to copy any last-second changes.
- Import to Hyper-V: The tool then creates a new VM on the Hyper-V host and attaches the copied VHDX disks. The VM is powered on, completing the migration.
It is very important to keep your browser session with Windows Admin Center open and active throughout the entire migration. If the session times out or you close the browser, the migration process may be interrupted and fail.
After the Move: Post-Migration Tasks
After a VM is successfully migrated, there are a few configuration details you should review and adjust.
- Memory Configuration: Migrated VMs are always configured with static memory on Hyper-V, even if they used dynamic memory in VMware. This is a safety measure to ensure stability. You can enable dynamic memory for the VM after the migration is complete using the standard VM settings in Windows Admin Center or Hyper-V Manager.
- Storage Configuration: By default, virtual disks are migrated as dynamically expanding VHDX files. This type of disk starts small and grows as data is added. If your storage policy requires fixed-size disks for better performance, you can convert them using a PowerShell command.
- BIOS GUID: The migration process does not preserve the VM’s original BIOS GUID. This unique identifier is sometimes used by software for licensing or asset management. If your applications depend on this ID, you may need to manually update it on the new Hyper-V VM using a PowerShell script.
VMware Tools Cleanup: For Windows VMs, the tool attempts to automatically uninstall VMware Tools after migration. For Linux VMs, you may need to remove VMware Tools manually and ensure the correct Hyper-V integration components are active.
Important Limitations to Know
The public preview version of this tool has some limitations.
- It does not support migrations from VMware environments that use vSAN storage.
- It cannot migrate VMs from vSphere 8.x environments.
- It is an on-premises tool and cannot be used to migrate VMs directly to Azure. For Azure migrations, you should use the Azure Migrate service.
- The extension is only available in on-premises installations of Windows Admin Center, not in the version accessible through the Azure portal.
- Once a migration process is started, it cannot be easily canceled. You would need to restart the Windows Admin Center service to stop an operation.
Solving Problems: Troubleshooting Tips
If you encounter issues, logs are available to help you diagnose the problem.
- Browser Console Logs: You can find basic logs in your web browser’s developer tools console.
- Event Viewer Logs: Windows Admin Center records events in the Windows Event Viewer under Applications and Services Logs > WindowsAdminCenter.
- VM Conversion Logs: The most detailed logs are in a specific file located at C:\Program Files\WindowsAdminCenter\Service\VMConversion_log.txt on your Windows Admin Center gateway machine.
If a migration fails or gets stuck, you may need to manually reset its status. To do this, you would stop the Windows Admin Center service and edit the migrationStatus.json and syncStatus.json files to remove the entry for the failed VM.