Now I'm considering migrate from Xen to KVM. I exported some exist virtual machines from Xen in the formats ovf and xva. How could I import them into KVM?

As there're only a few of virtual machines, I would accept a manual way.


The following is a straight quote from the Red Hat 6 help link, in case it fails. It seems everything is based on using virt-v2v now, and doing an offline xva to kvm isn't so simple. Try the virt-v2v man pages.

virt-v2v -ic qemu+ssh://root@vmhost.example.com/system -op pool --bridge bridge_name  guest_name

Where vmhost.example.com is the host running the virtual machine, pool is the local storage pool to hold the image, bridge_name is the name of a local network bridge to connect the converted virtual machine's network to, and guest_name is the name of the Xen virtual machine.

You may also use the --network parameter to connect to a locally managed network if your virtual machine only has a single network interface. If your virtual machine has multiple network interfaces, edit /etc/virt-v2v.conf to specify the network mapping for all interfaces.

If your virtual machine uses a Xen para-virtualized kernel (it would be called something like kernel-xen or kernel-xenU) virt-v2v will attempt to install a new kernel during the conversion process. You can avoid this requirement by installing a regular kernel, which will not reference a hypervisor in its name, alongside the Xen kernel prior to conversion. You should not make this newly installed kernel your default kernel, because Xen will not boot it. virt-v2v will make it the default during conversion.

Instructions for Red Hat 6 Instructions for Red Hat 7

  • in Debian / Ubuntu - apt install libguestfs-tools – Stuart Cardall Apr 28 '20 at 10:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.