Moving from VMWare Server to Hyper-V

How hard do you think this would be?  well damm hard in fact.  So here is the deal.  I have a Mac Pro running Windows 2008 and VMWare Server.  I had an issue with my graphics card, so I moved my VMWare stuff to Tosh Laptop.

So my graphics card is now okay and I removed VMWare and installed Hyper-V.  My plan was to migrate this Blog (win2k3), two DC’s (both win2k3, one 64 bit) and Exchange 2007 (win2k3 64 bit)

The basic principals are:

  1. Remove VMWare Tools
  2. Convert the VMWare VMDK file to VHD format using Vmdk2Vhd (http://vmtoolkit.com)
  3. Start it up in Hyper-V

Easy hey … yeah right.  The Blog moved over with no problems, but the DC’s converted, but then cycled Blue Screens. with 0×0000007B – “Inaccessible Boot Device” error. It appears that this is because my VM’s used iSCSI and had no Primary IDE Channel, while Hyper-V assumed that my converted disk was IDE and located on the Primary IDE Channel. DOH!.  So after a lot of googling I found a solution.

  1. Add a new IDE disk drive of any size to your VM.  Make sure that you select “Adapter: IDE 0 Device: 0” under “Virtual Device Node” while creating the new disk
  2. Boot up the VM and check that the new drive is available and that in device manager you can see a primary IDE channel
  3. Power off the VM and convert the disks (excluding the one you added above) using Vmdk2Vhd.

So now my VM’s could boot and windows would start.  Now for the next problem.  As I converted the Domain Controllers something funky was happening.  When I tried to install the Integration Services it would barf with a”System-Level Error Occurred While Verifying Trust“.  The NIC wasn’t discovered, so I was thinking crl, but none of the magic I tried before would work. 

That’s when I found the good ole Legacy Network Adapter.  So I Shut down the vm, added the legacy nic and started it back up.  Now the 32bit was sweet and the drivers installed and I could install the Integration Service.  But I couldn’t find the 64bit drivers anywhere. So more googling and I found a post that said “On a healthy Windows Vista Machine (x64 or x86, I tested on Vista SP1 x86), navigate to %windir%system32driverstoreFileRepository, and copy the directory named dc21x4vm.inf_7d8c6569 to a CD (be sure to include hidden files – 4 files total), or other media that you can access from the x64 VM. Then use Device Manager to update the NIC driver in the VM.

As it goes I had a 64bit machine and created and ISO with the drivers in, installed them and the NIC worked and managed to install Integration Services. So .. the full steps are:

  1. Take note of the server’s IP configuration! Very important as you will loose it
  2. Remove VMWare Tools
  3. Check to see if the VM has a Primary IDE Channel
  4. Shut VM down
    1. If no Primary IDE Channel add a new IDE disk drive of any size to your VM.  Make sure that you select “Adapter: IDE 0 Device: 0” under “Virtual Device Node” while creating the new disk
    2. Boot up the VM and check that the new drive is available and that in device manager you can see a primary IDE channel
    3. Power off the VM
  5. Convert the VMWare VMDK file to VHD format using Vmdk2Vhd (http://vmtoolkit.com)
  6. Create a new VM on Hyper-V and attach the converted disks.
  7. Power up in Hyper-V
    1. If the server cycles a Blue Screen, check above (Primary IDE Channel)
  8. Install Integration Services
    1. If it fails with a “System-Level Error Occurred While Verifying Trust“. ,shut the VM down, add a Legacy Network Adapter and restart
    2. If the NIC driver is not automagically found get hold of %windir%system32driverstoreFileRepositorydc21x4vm*, create an ISO and install the drivers.
    3. Try Installing Integration Services again
    4. Remember to remove the Legacy Network Adapter once the Integration Services are working correctly
  9. Reboot
  10. Done all should be okay.  You will need to reconfigure the Network IP’s but that is it

And finally .. thanks to these two links for pointing me in the right direction:

Phew, glad that is over!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.