After discovering that in-place upgrade of Windows Hyper-V Server 2008 R2 to the 2012 version is not possible, I set about the tedious task of exporting all the VMs from a Hyper-V Server box, installing Hyper-V Server 2012, and re-importing.
There are many reasons to upgrade, not least the irritation of being unable to manage the VMs from Windows 8. Hyper-V Manager in Windows 8 only works with Windows 8/Server 2012 VMs. It does seem to work the other way round: Hyper-V Manager in Windows 7 recognises the Server 2012 VMs successfully, though of course new features are not exposed.
The export and import has worked smoothly. A couple of observations:
1. Before exporting, it pays to set the MAC address of virtual network cards to static:
The advantage is that the operating system will recognise it as the same NIC after the import.
2. Remove any snapshots before the export. In one case I had a machine with a snapshot and the import required me to delete the saved state.
3. After installing Hyper-V 2012, don’t forget to check the date, time and time zone and adjust if necessary. You can do this from the sconfig menu.
4. The import dialog has a new option, called Restore:
What is the difference between Register and Restore? Do not bother pressing F1, it will not tell you. Instead, check Ben Armstrong’s post here. If you choose Register, the VM will be activated where it is; not what you want if you mistakenly ran Import against a VM exported to a portable drive, for example. Restore on the other hand presents options in a further step for you to move the files to another location.
5. For some reason I got a remote procedure call failed message in Hyper-V Manager after importing a Linux VM, but then when I refreshed the console found that the import had succeeded.
6. Don’t forget to upgrade the integration services. Connect to the server using the Hyper-V Manager, then choose Insert Integration Services Setup Disk from the Action menu.
Cosmetically the new Hyper-V Server looks almost identical to the old: you log in and see two command prompts, one empty and one running the SConfig administration menu.
Check the Hyper-V settings though and you see all the new settings, such as Enable Replication, Virtual SAN Manager, single-root IO virtualization (SR-IOV), extension support in a virtual switch, Live Migrations and Storage Migrations, and more.