Converting VMs for oVirt

My existing Hyper-V infrastructure consisted of Windows, a few CentOS, and Debian/Ubuntu guests. The best method I found to importing into oVirt was using the virt-p2v disc. This required down time of the server (approx 3 hours per 100GB on gigabit backbone) and a dedicated Fedora or Debian server which had virt-v2v installed. I used my Acer C710 Chromebook to serve as the virt-v2v converter. (This is possibly the reason I had slow conversion times.)

Once you boot into virt-p2v, you enter the IP address of an ssh server with virt-v2v installed. Unfortunately, I had to log in with root credentials as using the sudo method did not work when I tried. In some instances, my virtual machines needed the legacy Hyper-V network adapter to get an IP from DHCP and be able to ping the conversion server. It would have been helpful if virt-v2v mentioned this rather than giving a general username/password is invalid error.

After successfully testing the server and logging in, the next step is to enter the target properties. These are what you will name the image, how many virtual CPUs to allocate, and the desired RAM. Next the output options have to be set. Since I was using oVirt, I selected the Output to (-o) as rhev. I then had to enter the Output storage (-os) which is required when converting for oVirt/rhev. Since these settings are relative to the virt-v2v server, I could have mounted the nfs import domain (defaults in getting started guide – nfs-server:/exports/import_export ) as /var/tmp on the virt-v2v converter; however, I decided to enter the nfs server and path instead as this value. Next, you select the discs to convert as well as any network interfaces and removable media. I found that you only need to select the harddrives – everything else can be configured in oVirt.

Once you click start conversion, virt-p2v boots into the virtual machine and forwards data to your virt-v2v server. The virt-v2v process removes devices and adds the special ones needed to prevent a BSOD when you boot your Windows server for the first time on oVirt. Something similarly happens on CentOS based VMs.

Once that is done you need to go into the storage tab of the cluster (in my case, Default) and select the import storage domain. This will then open up the lower third of the web interface with another tab that is labeled import. This will list all VM guests that have successfully been converted by virt-p2v.