You could be forgiven for thinking that the 8th April 2014 is only really going to be remembered for the End of Support for Windows XP after almost 15 years of service. Time will tell, but I would venture that a large number of Virtualisation IT Pros are still rubbing their hands with glee at the release of the Microsoft Virtual Machine Converter 2.0 (MVMC) and since the future is PowerShell, they will also be salivating with anticipation at using the Migration Automation Toolkit (MAT) released to support the MVMC 2.0. What is it? Why is it such good news? And who will use it?
MVMC 2.0 and MAT
First and fairly importantly MVMC 2.0 is a completely free toolkit to assist an IT Pro in converting VMWare virtual machines into Hyper-V Virtual Machines and yes also into Microsoft Azure Virtual Machines. The MAT is a PowerShell-based set of scripts and utilities to automate this process over a number of hosts and platforms.
If you are not a VMWare customer or do not use VMWare Virtual Machines and don’t need to know how to convert them and don’t think you will ever need to, then you can stop reading,
‘this is not the blog post you are looking for.’
Otherwise – read on….
Over recent years Hyper-V has, for many good reasons been eating into the installed base of VMWare virtualisation customers. With the advent of this tool, the process of conversion to Hyper-V is dramatically simplified. If you are unsure of the value of such toolkits, it is possible to download the Windows Server 2012 R2 operating system (evaluation) install the Hyper-V role (free) and the MVMC 2.0 and MAT (free) and prepare a test migration to prove it will be fast, efficient and trouble-free to migrate all of your Virtual Machines from VMWare to the Azure or Hyper-V platforms.
Should you be using Linux as the basis for your VM guest estate, then your final solution will require absolutely no licence fees for Microsoft products. Especially if you choose to use the Microsoft Hyper-V server as your final host (free)
All sound too good to be true, well it’s not, below I explain what MVMC 2.0 and MAT can do for you.
The installation pre-requisites are
Windows Server 2008 R2 SP1 or above (I just installed it on Windows 8.1 (update 1) the full list is below
Supported Operating Systems
Windows Server 2008 R2 SP1, Windows Server 2012, Windows Server 2012 R2
Before you install Microsoft Virtual Machine Converter (MVMC), you must install the following software on the computer on which you want to run MVMC:
- Windows Server 2012 R2, Windows Server 2012, or Windows Server 2008 R2 SP1 operating systems
- Microsoft .NET Framework 3.5 and .NET Framework 4 if you install MVMC on Windows Server 2008 R2 SP1
- Microsoft .NET Framework 4.5 if you install MVMC on Windows Server 2012 [A1] or Windows 8.
Note Although MVMC installs on all of these versions, using the Windows PowerShell cmdlets that are released as part of MVMC requires Windows PowerShell Runtime 3.0, as the cmdlets function only on Windows Server 2012 [A2] and above or Windows 8.
- Visual C++® Redistributable for Visual Studio® 2012 Update 1
1. The Microsoft Virtual Machine Converter (MVMC)
3. SQL Express or any other SQL Server Editions
4. A Windows account with rights to execute MVMC locally
5. A Windows account with rights to schedule tasks on remote systems and run MVMC (if using remotes)
MVMC is a wizard driven conversion tool but also works with the System Center automation engine provided in Orchestrator 2012 R2. And can be invoked from the PowerShell command line.
The major new features in MVMC 2.0 are listed below:
- Converts virtual disks that are attached to a VMware virtual machine to virtual hard disks (VHDs) that can be uploaded to Windows Azure.
- Provides native Windows PowerShell capability that enables scripting and integration into IT automation workflows. (Completely new, previously MVMC had its own command line interface).
- Supports conversion of Linux-based guest operating systems.
- Supports conversion of offline virtual machines.
- Supports the new virtual hard disk format (VHDX).
- Supports conversion of virtual machines from VMware vSphere 5.5, VMware vSphere 5.1, and VMware vSphere 4.1 hosts Hyper-V virtual machines.
- Supports Windows Server® 2012 R2, Windows Server® 2012, and Windows® 8 as guest operating systems that you can select for conversion.
MVMC 2.0 standard features include:
- Convert and deploy virtual machines from VMware hosts to Hyper-V hosts on Windows Server® 2012 and 2012 R2 or Windows Server 2008 R2 SP1
- Convert VMware virtual machines, virtual disks, and configurations for memory, virtual processor, and other virtual computing resources from the source to Hyper-V.
- Add virtual network interface cards (NICs) to the converted virtual machine on Hyper-V.
- Support conversion of virtual machines from VMware vSphere 5.5, VMware vSphere 5.0, and VMware vSphere 4.1 hosts to Hyper-V.
- Wizard-driven GUI, which simplifies performing virtual machine conversions.
- Uninstalls VMware Tools before online conversion only, provides a clean way to migrate VMware-based virtual machines to Hyper-V.
- Support Windows Server and Linux guest operating system conversion.
- PowerShell capability for offline conversions of VMDK Disks to Hyper-V .vhd disks
Finally to install MVMC 2.0 – the account in use must be a local administrator on the machine.
The MVMC installation files can be obtained here and consist of an msi setup file that installs the wizard, an admin guide document and a cmdlets document.
MAT is simply collection of PowerShell scripts that will automate conversions using MVMC 2.0 and it is back ended by a SQL instance (SQL Express will work). You can use it to convert several machines at once, on a single server – or scale it out and execute conversions on many servers at the same time.
Although MVMC 2.0 can convert VMWare VM’s to Microsoft Azure, this has not currently been implemented in MAT, so this product is scoped to on-premises conversion only, for the time being.
Most of the MAT changes are minor revisions but it does ship with an example script which demonstrates how a migration can be controlled using a single PowerShell script and PowerShell workflows. In short this demonstration or example script can move all running VM’s from a VMWare host to a Hyper-V host.
Since I aim to keep all my posts close to 1000 words – I will cover more detail in another post – especially the use of PowerShell Workflows and the architecture of MAT.