virt-v2v命令将VMware ESXI 5.5中的VM迁移到OpenStack中

virt-v2v是将外部的虚拟化平台上的虚拟机转化到可以运行的KVM平台上。它可以读取在VMware、Xen运行Hyper-V和其他虚拟机管理程序上的Windows和Linux的虚拟机,并将其转换为KVM的libvirt,OpenStack等几种方式。需在KVM环境下进行迁移操作

0x01  环境准备

所有操作需要在KVM环境下进行,安装如下包即可

$ yum install -y qemu-kvm  libvirt  virt-manager   virt-v2v

0x02  查询宿主机中的VM

迁移前可以先列出宿主机中的所有VM,命令格式为:

$ virsh -c esx://[email protected]?no_verify=1 list --all

## esxi.example.com 为宿主机的ip或者URL

virt-v2v命令将VMware ESXI 5.5中的VM迁移到OpenStack中

0x03 迁移VM

使用virt-v2v-copy-to-local命令即可把对应的VM迁移到本地,其中需要输入两次密码,两次的密码均为esxi宿主机的登录密码,迁移完成后会在当前目录生成一个xml文件和disk1磁盘文件

$ virt-v2v-copy-to-local -ic esx://[email protected]?no_verify=1 guest

# esxi.example.com 为宿主机的ip或者URL

# guest为迁移的VM名称

virt-v2v命令将VMware ESXI 5.5中的VM迁移到OpenStack中

0x04  格式转换

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

$ virt-v2v -i libvirtxml guest.xml -o local -os /var/tmp -of raw

#guest.xml为刚才迁移时生成的xml文件

#-os为转换格式后存放的路径

#-of为指定转换的格式为raw

virt-v2v命令将VMware ESXI 5.5中的VM迁移到OpenStack中

最后,就会在/var/tmp下生成一个raw格式的OpenStack镜像,上传到OpenStack环境中即可使用。

weinxin
聂扬帆博客
一个分享IT运维相关工作经验和实战技巧的个人博客

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:4   其中:访客  4   博主  0

  1. avatar rushmyessay作家 1

    非常好的分享,谢谢。

  2. avatar Young 0

    virt-v2v -ic esx://192.168.0.8/?no_verify=1 -os vmdisk -of qcow2 -b br0 confluence
    virt-v2v: 连接 ESX 服务器失败:Bad Request

    请问博主,又遇到这个问题吗?

    还有为什么我安装工具后,执行virt-v2v-copy-to-local,会提示:-bash: virt-v2v-copy-to-local: command not found 这是为什么?
    我的机器是CentOS 6.5 Mini化安装的

    • avatar yangfannie 5

      @Young 目前没遇到过,检查下网络或其它限制先

  3. avatar 暮云 4

    感谢分享,有用