v2v-VMware/VSphere中虚机离线迁移至openstack平台

 先决条件

exsi到openstack的迁移,分为两种,一种是静态迁移,另一种是在线迁移。
静态迁移(offline migration)也叫做常规迁移,离线迁移。在迁移之前将虚拟机暂停,同时拷贝虚拟机镜像和状态到目的主机。相比较于在线迁移(online migration),其缺点就是静态迁移方式的过程需要显式的停止虚拟机的运行。

在线迁移的过程仅有非常短暂的停机时间,保证迁移过程中虚拟机服务的持续可用;静态迁移的优点是兼容性强,不需要VMM的同意API接口,可以借助第三方工具辅助迁移。由于目前VMM的开发没有统一的标准,不同的虚拟化厂商,尤其是闭源的厂商开发的VMM各成一套,静态迁移是解决不同类型虚拟机之间迁移的有效办法。我们分别演示使用手动方式将VMware虚拟机迁移到KVM和使用自动化迁移工具virt-v2v方式来迁移。

迁移前软件包的安装

yum install -y qemu-kvm

yum install -y libvirt

yum install -y virt-manager

yum install -y virt-v2v

使用virt-v2v工具自动迁移

如果虚机是ESXi种的虚机,那么我们可以使用virt-v2v的工具直接进行自动迁移。virt-v2v工具可以将其他hypervisor平台上的虚拟机迁移到KVM上。它可以读取Xen,Hyper-v,VMware平台上的虚拟机,将它们迁移到由libvirt管理的KVM,openstack或者RHEV环境中。本节只针对ESCi上如何将虚机迁移到KVM中,往openstack和RHEV上迁移只需要转换镜像和导入即可不做赘述。

KVM存储池配置过程

mkdir -p /data/vmfs
virsh pool-define-as vmdisk --type dir --target /data/vmfs
virsh pool-build vmdisk
virsh pool-autostart vmdisk
virsh pool-start vmdisk

创建ESXi认证文件

vim /root/.netrc

machine YourESXiServerIPAddress login root password YourESXiServerIPAddress

chmod 0600 ~/.netrc

开始迁移

开始迁移前先测试看是否能够连接上ESXi主机

virsh -c esx://10.1.80.112/?no_verify=1 list --all

如果能够看到运行在这个ESXi上的主机说明连接没有问题。

开始迁移

virt-v2v-copy-to-local -ic esx://root@10.1.80.112/?no_verify=1 测试机1

使用virt-v2v-copy-to-local命令即可把对应的VM迁移到本地,其中需要输入两次密码,

两次的密码均为esxi宿主机的登录密码,迁移完成后会在当前目录生成一个xml文件和disk1磁盘文件

 注意:

1、测试机1表示为虚拟机的名字

2、迁移之前需要把虚拟机关机

 

 格式转换

迁移完成后,就需要把磁盘文件的格式转换成OpenStack能够识别的格式

virt-v2v -i libvirtxml 测试机1.xml -o local -os /img -of raw

#测试机1.xml为刚才迁移时生成的xml文件
#-os为转换格式后存放的路径
#-of为指定转换的格式为raw

上传镜像并启动测试

openstack image create "cs" \
--file 测试机1-sda \
--disk-format qcow2 --container-format bare \
--public

 

posted @ 2019-03-07 13:28  jayonlau  阅读(2759)  评论(0编辑  收藏  举报