Migration existing VM Windows Server 2012R2 and above from Hyper-V to OpenNebula

Hi there!

Have anyone a solution with migration existing Windows Server 2012R2 and above from Hyper-V to OpenNebula?

I solved this situation with Windows Server 2008 using “Install old driver” from ISO-archive virtio-0.96, but this method isn’t work with 2012 and 2016. Using this method Windows Server 2008 answer with Code 10 (that it’s not critical) and migration complete successfully, but WS2012R2 (on drivers NetKVM, SCSI-Controller, SCSI-Storage Controller [viostor]) answer with “Code 31”. Tried another virtio versions - same problem.

What steps does have your migration process? Such as optimizing drives, installing the drivers, shutting down the server, merging the vhd / vhdx, converting using qemu-img, booting up, and. You may have more luck using virtio-scsi. In Opennebula that can be achieved using DEV_PREFIX = “sd”.

1 Like

My steps of migration process (in the first I make on test VM):

  1. Mounting ISO disk to VM;
  2. Installing the drivers and getting results’ codes;
  3. Shutting down the VM Server and converting *.vhdx file via qemu-img (> qemu-img convert -p -f vhdx -O qcow2 [$exist_file.vhdx] [$convert_file.qcow2])
  4. Create image with “Storage block” and “BUS: Virtio” parameters and uploading converted *.qcow2 file.
  5. On created VM mounting new image and turning on it.

VM starts, but converted WS launch with BSOD. Didn’t try with “DEV_PREFIX=sd” parameter only with “hd”. I did same with WS2008 - launch successfully.

Found solution!

Reason is stopped service qemu-ga.
In PowerShell checked service guest agent status using this command: get-service qemu-ga.
Re-installed drivers and guest agent from ISO-disk. Converted and uploaded image to OpenNebula. In this time Windows Server will install automatically drivers during loading.

2 Likes

Also, from my past experiences, I have noticed that if you do not set the OS image as bootable in the OS & CPU section. The Windows installer says the OS can’t be installed on this drive. So the Windows sees some difference.

Next, I noticed that you are using image type DATABLOCK instead of the type OS that is used for the operating system. Maybe some differences could affect the guest OS itself. If you are uploading the image, you need to select Operating System Image in the dropdown.

1 Like