Physical to Virtual migration (P2V) is a common task for achieving consolidation goals through virtualization. System Center Virtual Machine Manager (SCVMM) is by far the best tool from Microsoft to facilitate P2V migrations (as well as V2V conversions from VMware to Hyper-V). The FAQ for SCVMM is a worthwhile read to best understand automated migration to Hyper-V, and it can be found here.
While I believe that SCVMM is the best option for P2V migrations, it isn’t practical in all situations. Sometimes a light weight, standalone solution is necessary to accomplish Windows migrations.
There are other 3rd party options for P2V migration include Novell’s Platespin, DoubleTake Move, Acronis, and even tools from VMware, but I prefer not to use them if I don’t have to, since they add cost and (non-Microsoft) complexity to the migration process. They are some instances, appropriate tools, but I prefer to go with Microsoft tools that may cost less (like free!).
When I want to migrate a physical machine to a VM without using SCVMM, I will either use WinPE and ImageX (detailed in our books on Hyper-V), or I will use Disk2VHD.
I’m still amazed how many administrators haven’t heard about or tried Disk2VHD! It’s a wonderful tool for capturing Windows-base system images and converting them to VMs. With either Disk2VHD or other manual efforts, you still need to install the Integration Services and perhaps take other remediation / migration steps (fixing storage drivers / HAL issues), but it’s a great tool, and you can’t beat the price!
One limitation of Disk2VHD, is that it relies on VSS to capture an image of a running system. Older versions of Windows (NT / 95 / 98 / Windows 2000) don’t include VSS, so it will not work to capture an image of these operating systems. ImageX works well for me for older NTFS-based systems, so I use that as my low priced fallback.
As you know, I’ve been doing a good amount of work virtualizing Linux on Hyper-V. Neither of these two “free” migration tools work with Linux, since Linux systems don’t use NTFS or VSS. In my next post, I’ll dive into some of the challenges of P2V for Linux as well as solutions.