OVA to VHD
Foy my new work I have to get cozy with Puppet. Puppet provides a great learning VM, however it is in a OVA format, and I need it as a VHD so I can use it with Hyper-V in my homelab.
There are several ways and utilities to convert an OVA to VHD
That script however seems to be finniky at times, depending on the OVA file. I found that the VirtualBox convert utility seems to work quote a bit easier and more reliable.
It’s as easy as this:
- Install VirtualBox (Just install the ‘Virtual Application’, no need for all the other stuff)
- Extract the VMDK from the OVA (e.g. with 7-Zip)
- Run this in an Admin CMD session:
$VMDK = "c:\path\to\machine.vmdk" $VHD = "c:\path\to\machine.vhd" #the utility will create the VHD for you & "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" clonemedium --format vhd $vmdk $VHD
And voila, you should have a VHD from the OVA that you can use in Hyper-V.
So yeah that was not enough to get it to work in Hyper-V after all. I ended up using the StartWind v2v Converter. After that the VM is still no happy, you have to start the vm in ‘rescue mode’ to get it to boot happily.