Problem solve Get help with specific problems with your technologies, process and projects.

Migrating virtual machines from Microsoft Virtual Server to Hyper-V

Upgrading from Virtual Server 2005 to a Hyper-V environment? This tip breaks down the steps to converting your old virtual machines to the Microsoft Hyper-V format.

Organizations building a Microsoft Hyper-V resource pool will generally do so from one of three possible starting points:

  1. The organization is running a traditional network with physical machines.

  2. The organization runs a mix of physical and virtual machines (VMs), but relies on a software-based hypervisor such as VMware Server, Sun xVM VirtualBox, or Microsoft Virtual Server.

  3. The organization is running a competitive hypervisor such as VMware vSphere or Citrix XenServer.

To move to Hyper-V, these organizations will need to perform machine migrations into their production Hyper-V resource pool. To do so, it's important to be familiar with the migration process. In fact, anyone using a Hyper-V resource pool should be aware of the potential migration scenarios that they might need to run. This is because source machines could come from a variety of locations, including:

  • physical machines to be converted to virtual machines

  • machines running on Microsoft Virtual PC or Virtual Server

  • machines that have been captured in disk image format using third-party tools -- Acronis True Image Echo or Norton Ghost from Symantec -- or even now, with Windows 7 operating system images

  • machines that are running as VMs within another hypervisor environment such as VMware ESX Server, Citrix XenServer and so on

  • machines that are already in Hyper-V format but are running on another host in another resource pool

Many of these migrations can be fully automated if you have the right tools. Some resource pool administrators, however, will find themselves without the funds to acquire the appropriate utility. Therefore, they must check out other means of performing the migration. While these alternatives usually take more time, they also usually rely on free tools.

Looking to  become 
Hyper-V certified?

Check out Danielle and Nelson's new book:

MCTS Self-Paced Training Kit (Exam 70-652): Configuring Windows Server Virtualization

Performing a migration — manually or through automated processes — saves time and helps maintain the investment you already have in an existing machine. This series will include three articles that describe how to convert virtual machines to Hyper-V from Microsoft Virtual Server, VMware ESX Server and Citrix XenServer.

Let's begin with migrating machines from Microsoft Virtual Server. You'd think that since the machines run on hypervisors from the same manufacturer, there would be little if any conversion required. Unfortunately, that is not the case.

Migrating machines from Virtual Server 2005 or Virtual PC relies on a virtual-to-virtual (V2V) conversion process. Conversions are often relatively simple because all Microsoft products — Virtual Server, Virtual PC, and Hyper-V — use the same virtual hard disk format. Virtual machines running in Virtual Server or Virtual PC, however, do not use Hyper-V Integration Services or Components. Instead, they use VM Additions, which is not compatible with Hyper-V.

In addition, the virtual machine configuration (VMC) files used in Virtual Server and Virtual PC are not compatible with the XML files Hyper-V relies on. This means that if you do not have any access to custom tools, you must use the following manual process to convert machines from Virtual PC or Virtual Server to Hyper-V.

  1. Begin by launching the machine in the original hypervisor (Virtual PC or Virtual Server) and remove the VM Additions. To do so, use the Uninstall A Program tool under Control Panel> Add Or Remove Programs. Keep in mind that if you do not remove the VM Additions as a first step, you will not be able to do so once the machine is running on Hyper-V.

  2. Next, prepare the VHDs. You should defragment the VHD using the guest operating system's internal tools, then compact the VHD using either Virtual PC or Virtual Server utilities.

    In Virtual Server, begin by inspecting the disk and choosing Compact Virtual Hard Disk (see Figure 1). Click Compact to begin the compaction. You may have to run the precompaction tool included in Virtual Server and Virtual PC on the disk beforehand. To do so, load the Precompact.iso file as the DVD drive in the guest operating system and then use AutoPlay to run the precompaction engine on the disk.

    Figure 1 (click to enlarge)

  3. Move the virtual machine's VHDs, if required.

  4. Create a new VM in Hyper-V using the source machine's VHDs, or convert the VM's configuration file (VMC) to a Hyper-V configuration file (XML) using the VMC to Hyper-V Conversion Tool (see Figure 2).

    Figure 2 (click to enlarge)

  5. Install Hyper-V's Integration Services or Components into the new Hyper-V virtual machine.

That's it! The VM will now run as a Hyper-V virtual machine.

For more information on this and other Hyper-V migration processes, download Chapter 6 of MCITP Self-Paced Training Kit (Exam 70-652): Configuring Windows Server Virtualization with Hyper-V.

Danielle Ruest and Nelson Ruest are technology futurists focused on datacenter optimization and continuous service availability. They are authors of multiple books, notably Training Kit 70-652: Configuring Windows Server Virtualization with Hyper-V published by Microsoft Press and Virtualization, A Beginner's Guide published by McGraw-Hill Osborne. For more tips, write to them at [email protected].

Dig Deeper on Microsoft Hyper-V management