virt-v2v命令将ESXI 虚机迁移到OpenStack中

一简介: 

virt-v2v是将外部的虚拟化平台上的虚拟机转化到可以运行的KVM平台上。它可以读取在VMware、Xen运行Hyper-V和其他虚拟机管理程序上的Windows和Linux的虚拟机,并将其转换为KVM的libvirt,OpenStack等几种方式。 ESXI 平台下线,将虚机迁移至openstack 运行,但windows 虚机,大多是存在驱动问题的,因此需要先考虑驱动问题。   二、安装软件
# yum install -y qemu-kvm libvirt virt-manager virt-v2v 
三、命令介绍   1、 查看EXSI 主机虚机列表     #virsh -c esx://root@EXSI_server_IP?no_verify=1 list --all        ## EXSI_server_IP : EXSI 主机IP,需要输入服务器的root 密码     2、拷贝虚拟机到本地,拷贝完成后会在当前目录生成一个xml文件和disk1磁盘文件,同样也是需要输入EXSI 服务器密码     #mkdir /data         #创建用于存放文件的目录     #virt-v2v-copy-to-local -ic esx://root@EXSI_server_IP?no_verify=1 vm_name            #vm_name: 需要拷贝到本地的虚机名称(在步骤一中获取)      virt-v2v命令将ESXI 虚机迁移到OpenStack中

 

 

     3、转换数据格式,把磁盘文件的格式转换成OpenStack能够识别的格式 (如果有报错,查看最后的报错总结)     # mkdir /data/vms          #创建用于存放格式转换后的文件    # virt-v2v -i libvirtxml vm_name.xml -o local -os vms/ -of raw               # -of :转换为row 格式        -os :指定输出路径      vm_name.xml:为第二步骤中生成的文件      virt-v2v命令将ESXI 虚机迁移到OpenStack中

 

 

  4、将转换完成后的 vm_name-sda 文件上传至openstack中,启动新的虚机。

    流程:创建卷-->通过rbd 导入 vm_name-sda 的设备---> 启动虚机 

           四、报错总结:   第三步报错:Failed to connect socket to '/var/run/libvirt/libvirt-sock'      解决:     1、# groupadd libvirtd       #增加libvirtd用户组     2、# sudo usermod -a -G libvirtd $USER     #设置用户到组     3、# vi /etc/libvirt/libvirtd.conf         #取消注释并修改为如下:         virt-v2v命令将ESXI 虚机迁移到OpenStack中

 

    4、增加权限启动配置       
vi /etc/polkit-1/localauthority/50-local.d/50-org.libvirtd-group-access.pkla

[libvirtd group Management Access]
Identity=unix-group:libvirtd
Action=org.libvirt.unix.manage
ResultAny=yes
ResultInactive=yes
ResultActive=yes

 

    5、重启服务       # service libvirtd restart  
上一篇:在centos7上安装kvm虚拟机


下一篇:kvm虚拟化管理平台WebVirtMgr部署-完整记录(1)