Converting Virtual Machines from Other Hypervisors to KVM with virt-v2v in RHEL 7
This article provides an overview of virtual machine conversions and links to procedures for specific types of conversions.
The virt-v2v tool converts virtual machines from foreign hypervisors, including their disk images and metadata, for use with Red Hat Enterprise Linux KVM, Red Hat Enterprise Virtualization, and Red Hat Enterprise Linux OpenStack Platform. virt-v2v can convert Red Hat Enterprise Linux and Windows guests running on Xen and VMware ESX environments.
virt-v2v is included in Red Hat Enterprise Linux 7.2 and is installed with the virt-v2v package. virt-v2v is also available in Red Hat Enterprise Linux 7.1 from the Red Hat Enterprise Linux OpenStack Platform channel.
Important: virt-v2v became a supported product starting with Red Hat Enterprise Linux 7.2. Therefore, we recommend you update your virt-v2v conversion server (the machine used to convert virtual machines) to Red Hat Enterprise Linux 7.2 before using virt-v2v.
Guest virtual machines running the following operating systems can be converted by virt-v2v to run on KVM:
- Red Hat Enterprise Linux 3.9
- Red Hat Enterprise Linux 4
- Red Hat Enterprise Linux 5
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 7.1 and later
- Windows XP
- Windows Vista
- Windows 7
- Windows 8
- Windows 8.1
- Windows 10
- Windows Server 2003
- Windows Server 2008
- Windows Server 2008 R2
- Windows Server 2012
- Windows Server 2012 R2
- Windows Server 2016
Note: virt-v2v may convert virtual machines running other Linux operating systems such as Debian and Ubuntu, but these conversions are not supported.
Conversions from following hypervisors are supported:
- Red Hat Enterprise Linux 5 Xen
- VMware vSphere ESX / ESX(i) - versions 3.5, 4.0, 4.1, 5.0, 5.1, 5.5, 6.0
Note: VMware appliances based on Photon OS are not supported and cannot be converted using virt-v2v.
How does the V2V conversion process work?
virt-v2v automatically creates a guest on the target hypervisor for each of the converted virtual machines. To convert a virtual machine:
1. Prepare the destination host:
a. Install virt-v2v on the host.
b. Configure local storage and network interfaces, if needed. For details of the local storage requirements, see the instructions for your specific conversion scenario.
Note: Ensure that the connection between the conversion server and the system with the foreign hypervisor is as fast as possible and has low latency.
2. Prepare the guest:
a. For Linux guests, ensure that virtio is enabled on the guest. For details, see Enabling virtio.
b. Ensure the guest is shutdown/offline before conversion.
3. Convert the virtual machine via the command line with input and output options.
a. For details about specific conversions, see one of the following:
- Converting a VMware vCenter Linux virtual machine to KVM
- Converting a VMware vCenter Windows machine to KVM
- Converting a Linux machine on a Xen hypervisor to KVM
- Export a guest from VMware as an OVA file, and import it into KVM
b. Verify the new guest's functions completely before deleting it from its original hypervisor.
For information on converting a virtual machine to run on Red Hat Virtualization, see Importing a Virtual Machine from a VMware Provider.
For information on converting a virtual machine to run on Red Hat Enterprise Linux OpenStack Platform, see Converting VMware guests to import to Red Hat Enterprise Linux OpenStack Platform.
For information on converting a physical machine from another hypervisor with virt-v2v and virt-p2v, see Converting physical machines to KVM virtual machines using virt-p2v in RHEL7.