Thursday, February 28, 2013

Convert from XenServer 5.6SP2 to VMWare ESXi 5.1

Recently we converted our main environment from XenServer 5.6 SP2 (Lefthand Networks SAN/iQ) to VMWare ESXi 5.1 (Nimble Storage CS240).

First off, we looked very hard at XenServer 6, Hyper 2012, and ESX.  After getting hands on for each solution VMWare imo was hands down easier to use and gave better results.

Next, Nimble Storage is awesome!  If your looking at storage give them a good look.

The conversion is pretty easy really, but if you get the steps wrong you can end up with BSOD and other ickyness.  This worked for me, your experience may be different.  I took snapshots at the Lefthand level and XenServer level before touching anything.  Results may vary.

There may be an easier way, doesn't really matter to me. This worked consistantly for me so I'm stickin to it.

It's best practice to rebuild rather than convert.  I only converted machines that couldn't be rebuilt, where being replaced soon (but not ready to replace just yet), or when I was short on time and had to move it immediately. 

Server 2008 / 2008 R2
  1. Download and install VMWare Converter 4.3, yes, the older version
  2. Disable any services necessary (ie, IIS, etc)
  3. Ensure your logged in through the default view, not RDP.
  4. Uninstall XenTools and reboot
  5. Go into Device Manager
  6. You'll see that the SCSI Controller doesn't have a driver.
    1. VMWare converter won't see the disks because of this
  7. Right click the SCSI Controller
  8. Update Driver Software
  9. Browse my computer for driver software
  10. Let me pick from a list of device drivers on my computer
  11. (Standard IDE ATA/ATAPI contoller)
    1. IDE Channel
    2. If you get the wrong one you'll likely see a BSOD upon reboot
  12. Reboot
  13. Open VM Converter
  14. Convert Machine
  15. Select "This local Machine"
  16. Note that "View source details..." lights up. Click it
  17. Ensure that a Source disk is listed (if you didn't change the controller driver then none will be listed and it will error when you attempt to convert)
  18. Type in the info for one of your VMWare hosts
  19. Select your datastore target
  20. Change RAM, CPU, etc as fit
  21. Finish and wait
  22. Once it's completed shutdown the VM in XenServer
  23. In the VMWare console edit the VM.
  24. Delete the CDROM and Hard Disk
  25. Add a new Hard Disk as the SCSI 0:0 and point to the VMDK
  26. Add new CDROM with basic settings
  27. Start the machine and install tools
  28. Note that the VM Version is listed as 4
    1. Shutdown the VM
    2. Right click the VM and choose the option for "Upgrade Virtual Hardware"
    3. It should now show as a vmx-09
  29. Change the nic to vmxnet3 if desired
  30. Boot and change IP address if needed
  31. Uninstall VMWare converter

Since typing the Windows 2008 section, I tried something new that worked amazingly well with little downtime.  I did this with Windows 2008 RTM x32 and Windows 2008 R2 successfully.
  1. Download and install VMWare Converter 4.3.  New version may work better.
  2. Open VM Converter
  3. Convert Machine
  4. Select "This local Machine"
  5. Type in the info for one of your VMWare hosts
  6. Select your datastore target
  7. I had to edit the devices and change the controller to IDE
  8. Finish and wait
  9. At this point it's extermely important to remember that we don't want both VM's on at the same time.  BUT I wanted to ensure that my new VMWare VM would boot...
  10. Change Settings
    1. Change network to an isolated network off production.
  11. Delete the CDROM and Hard Disk
  12. Add a new Hard Disk as the SCSI 0:0 and point to VMDK
  13. Add new CDROM with basic settings
  14. Start the machine
  15. Uninstall XenServer Tools
  16. Reboot
  17. Install VMWare Tools
  18. Shutdown
  19. Note that the VM Version is listed as 4
    1. Shutdown the VM
    2. Right click the VM and choose the option for "Upgrade Virtual Hardware"
    3. It should now show as a vmx-09
  20. Boot the server and ensure it boots
  21. Shutdown VMWare VM
  22. Shutdown XenServer VM
  23. Edit VMWare VM and change NIC to production network
  24. Boot and change IP address if needed
  25. Uninstall VMWare converter
I was amazed how well this worked.  NOTE: I did this on fairly unimportant systems.  Not sure I'd do it with systems that are critical (besides, I rebuilt anything critical, converting is never my first choice)

Windows 2008 RTM: I also had to delete the NIC (which was listed as Flexible) and add a new one for VMXNET3.

One final strange thing I noticed is that the IntialKeyboardIndicators key would get messed up.
This is found under KHEY_USERS\.Default\Control Panel\Keyboard
It would be set to 21474836648 after conversion
Changing this back to 0 made it work as expected.


  1. Hey there,

    Nice post! You mentioned you did some pretty extensive evaluation of XenServer 6, Hyper-V 2012, and ESXi before settling on ESXi. Can you expand on this? Was it resource overcommit functionality, performance, price point, etc?


  2. Sure,
    It was more based on my own experience with the products. I won't go into great detail, but here's some of the items that really caught my eye. After-all, when it comes down to it (imo) all 3 products deliver. Also, keep in mind I'm evaluating these solutions from the point of view of SMB, 1 technical IT guy, small budget. I'm focusing on 3 host environments with an underlying SAN of Nimble or Lefthand Networks (some DAS).

    I've worked with XenServer 5.5, 5.6, 5.6 SP2, 6.0. Years ago we converted from Virtual Iron to XenServer (and actually I've now done this exact conversion for 6 different companies). So, I like to think I understand XenServer at least decently. It's priced great, runs decent, and is usually reliable (this was actually the breaking point for me).
    5.5 - from what I recall it was that spot that it all worked great mostly, few failures
    5.6 - we see new cool features and salivate for them. Upgrade and begin getting more and more of the "um dude my systems randomly lockup" calls. We're introduced with our first real frustrating "bug"
    5.6 SP2 - Things get better here, we've worked our way through some issues
    My experience with 5.6 SP2 is that it's great, wonderful, awesome... until you touch it. Then who knows what will break. Usually I believe revolving around HA.
    6.0 and up - Now we see performance issues with different versions of Windows. From what I recall the issues revolved around networking. I only did a couple of test systems on 6.0, so not a ton of time invested here.
    And that was the fairly easy tie breaker for my scenario with XenServer

  3. Windows Server 2012 Hyper-V
    Boy, I was (and still am) very excited about this one. Cost is great, performance from my testing was good. But the setup, ahh, it wasn't to bad really with some exceptions. And to my almost perfectionist desire for the low end setup it didn't cut it.
    First I found that setting up the networking wasn't obvious. I tried doing it with core installs the first go around, then installed the limited GUI, then the full GUI. Even when I did get it figured out heck there where a ton of contradicting posts out there on how to do it correctly. Networking is pretty darn important for virtualization and I didn't feel like wingin it.
    Second, this might sound funny, but after all the GUI install it was just way to "Windows" for me for my virtual environment. I'm a full out Windows admin for everything, except virtual platform. I want it to be different, to stand out as "HEY, I'm different doof, don't mess with me".
    Third it was pretty stinkin new and Microsoft Systems Center Virtual Machine Manager (or whatever it's called now) didn't support 2012 yet and I insisted on central management (SP1 is out now).

  4. ESXi 5.1
    Okay so yes, with MS I point out that it's pretty stinkin new and then I go and install ESXi 5.1. Oh it's new, but it sure didn't feel new to me when I installed it.
    Resources out the gazoo.
    It just made sense configuring it. I had 2 hosts setup and configured with a demo license in just a few hours (I did go back and read the networking, HA and a couple other admin guides)
    Tons of best practices available
    Lots of vendors "we support" listed
    And yes, my first VM booted in under 20 seconds (using Nimble, actually a full reboot not just boot) which was most definitely faster than anything I had seen yet. This was actually I believe the first time I've had a system boot so fast that it actually caused an issue (I'm working on that post).
    The biggest turn off when I first started researching was VRAM entitlement, but wait, VRAM gone!
    Oh yeah, VMWare is sooooo expensive right? But wait again, we're talking about 3 hosts. Essentials plus meets all our needs. Hardly expensive, actually very affordable (under $10 grand) for one of our most important infrastructure components.
    Note: 5.1 web console is very cool!

    This of course was how it applied to my environment. Each person looking at a hypervisor should determine their needs and then see which one makes the most sense.