Virtual brownfields: Microsoft's push to woo the VMware masses
Are the tools up to snuff? Our man Trevor Pott investigates
Out with the old OS
Operating system support is the real bugbear of conversion. Let's put Microsoft's official list of supported operating systems to one side and talk a bit about the cold hard realities of working with virtualisation in general and Hyper-V in particular.
The first thing to bear in mind is that it is entirely possible for an operating system to know it has been virtualised. Older operating systems did not but most modern ones are perfectly aware of when they live in a virtual machine. The newer the operating system the better it handles virtual conversions.
It is technically possible to convert any operating system that will run on both platforms. I have converted Windows NT, straight through to Windows 8 and dozens of varieties of Linux. I cannot say, however, that this has been without problems.
Be prepared for a fight in the Windows world if you are older than Windows 7/Server 2008 R2. Uniprocessor to dual processor is one example of a conversion issue that can get you. I have also seen bizarre sysprep errors and issues with network cards making the jump.
In general I find that if you run into an issue with a pre-Windows 7 virtual machine, pull out as much virtual hardware as you can before the conversion and add it back in afterwards. That will usually work.
Linux is another beast altogether. Microsoft's Linux support has lagged VMware's for years. Microsoft has now mostly caught up but there have been some side effects.
Microsoft's approach to making Linux work properly in Hyper-V has been to get Hyper-V support added to the Linux kernel. This works brilliantly but is found only in the very latest distros.
V2V migrations on Linux virtual machines that don't have the Hyper-V integration services baked into the kernel don't work out well. Networking is almost always a problem, with CPU count being another serious issue.
I have quite often found that on several older versions of Linux you simply can't do conversions if the CPU count is greater than one, limiting usefulness severely.
With newer Linux distros conversions work just fine if you pull the VMware tools out first. The Hyper-V drivers in the kernel make migrating from VMware to Hyper-V easier than going the other way. If you can upgrade your Linux virtual machine’s kernel before migrating, I strongly recommend you do so.
For all Microsoft's many offerings there are still niches left unfilled. For starters, not everyone runs SCVMM. Server 2012 does such a good job of virtualisation on its own that many SMEs just don't see the point. In other cases the conversion tools don't do a good job with older or unsupported operating systems.
Among the best of the third-party tools is 5nine's free V2V EasyConverter. It supports Windows and Linux and has done yeoman's work for me over the years.
Backup software providers such as Veeam and Vision Solutions (via its Doubletake offering) often have the ability to perform conversions as well.
In some cases – usually older Linux virtual machines – a sector-by-sector copy of one virtual machine type to another is called for. No conversion magic, no special sauce: this simply takes the virtual hard drive from one hypervisor and writes it out in the format of the target hypervisor.
There is usually a fair amount of work involved in getting the drivers and whatnot cleaned up post-conversion, but this method of last resort usually works.
For these image-based conversions I use Starwind Converter, but I have heard good things about Winimage as well. If you are using this method on a Windows OS I strongly recommend you look up how to run "Detect HAL" for your version of Windows.
As the option of absolute last resort there are the P2V/V2V forums on TechNet. If none of the technologies I have discussed here can get your virtual machines converted, someone there will probably be able to help you figure it out.
Are we nearly there?
The question remains: is this good enough for Microsoft to make a dent in deployed VMware environments? My answer is a heavily qualified "yes".
The conversion process is far from idiot-proof. Microsoft just doesn't have a simple tool that can go up against VMware converter and win.
That is kind of sad, since Converter has stagnated of late and has not brought in many of the features I would like to see it gain. Microsoft's conversion process has not had an ease-of-use upgrade that would bring this to the masses.
I'd like to see Microsoft offer a VMware Converter-class tool that targets SMEs. In fact, considering that there isn't much evolution going in to Converter, I'd like to see Microsoft turn its considerable might towards the business of conversion and show VMware a thing or two about how this ease-of-use thing is done.
That said, what is on the table is more than good enough for the enterprise datacentre. If you are doing this at scale then pre-testing everything, adding a few layers of process and learning to love scripting is not going to bother you.
Enterprises are where VMware is most deeply entrenched so it makes good sense for Microsoft's offerings to focus on this area.
Microsoft has good tech on the table. It has conversion software that works. If VMware doesn't knock it out of the park at VMworld in August then I expect Microsoft to start making significant inroads into VMware's installed base and those VMware executives to lose quite a lot more sleep. ®