一、前言

最近想测试一下RedHat 7 KVM的V2V功能,结果发现Redhat 7.0没有V2V的包,上RedHat官网才发现要RedHat 7.2才包含Virt-V2V的包。

官网说明如下:

 Virt-v2v became a supported product starting with Red Hat Enterprise Linux 7.2. Therefore, we recommend you update your virt-v2v conversion server to Red Hat Enterprise Linux 7.2 before using virt-v2v.

受支持的虚拟机操作系统:

  • 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 Server 2003

  • Windows Server 2008

需要注意的是,进行V2V之前待迁移的虚拟机必须卸载vmtools并关机。

受支持的虚拟化程序:

  • libvirt-managed Xen

  • VMware vSphere ESX / ESX(i) - versions 3.5, 4.0, 4.1, 5.0, 5.1, 5.5, 6.0

需要注意的是,对于VMware的虚拟机,在redhat 7.2只支持连接到vCenter进行V2V迁移。

本文原始出处:江健龙的技术博客http://jiangjianlong.blog.51cto.com/3735273/1812311

关于RedHat 7.2的V2V,网上的资料相当少,连Redhat官网都不全,希望本文的测试能抛砖引玉,共同提高。

redhat 官网资料都不齐全的截图:

二、V2V环境准备

1、测试环境介绍


2、使用yum安装virt-v2v:yum install virt-v2v,安装的时候会自动安装另外三个包,其中libguestfs-winsupport这个包是用于支持对windows虚拟机的V2V


3、测试连接到vCenter服务器,列出vCenter服务器上的虚拟机

virsh -c 'vpx://vcenter.long.cn/TEST/esxihost?no_verify=1' list --all


4、在环境变量中加入一行 export LIBGUESTFS_BACKEND=direct,如果未加入,那么V2V时会报错提示要求加入的。


三、V2V迁移vCenter上的Linux虚拟机

1、迁移命令:virt-v2v -ic vpx://vsphere.local%5cadministrator@vcenter.long.cn/TEST/esxihost?no_verify=1 RH7TEST -o local -os /var/lib/libvirt/p_w_picpaths -of qcow2 --bridge br0


2、等待迁移完成后,可以看到已经产生了2个文件,一个是硬盘文件,一个是配置文件


3、这两个文件也出现在存储池中


4、但是很奇怪的是迁移完成的虚拟机却没有出现在KVM的虚拟机列表中,原因尚不清楚。本文是通过新建虚拟机并导入已迁移过来的硬盘文件来手动重建虚拟机,完成最终的迁移。


5、成功开机并登录


四、V2V迁移vCenter上的windows虚拟机

1、迁移命令:virt-v2v -ic vpx://vsphere.local%5cadministrator@vcenter.long.cn/TEST/esxihost?no_verify=1 windows2008r2-test -o local -os /var/lib/libvirt/p_w_picpaths -of qcow2 --bridge br0


2、等待迁移完成后,可以看到已经产生了2个文件,一个是硬盘文件,一个是配置文件


3、这两个文件也出现在存储池中


4、同样奇怪的是迁移完成的windows虚拟机也没有出现在KVM的虚拟机列表中,原因尚不清楚。本文是通过新建虚拟机并导入已迁移过来的硬盘文件来手动重建虚拟机,完成最终的迁移。


5、成功开机并登录