1. 程式人生 > 其它 >virt-v2v命令將ESXI 虛機遷移到OpenStack中

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@E
XSI_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: 需要拷貝到本地的虛機名稱(在步驟一中獲取)           3、轉換資料格式,把磁碟檔案的格式轉換成OpenStack能夠識別的格式 (如果有報錯,檢視最後的報錯總結)
    # mkdir /data/vms #建立用於存放格式轉換後的檔案    #virt-v2v -i libvirtxml vm_name.xml -o local -os vms/ -of raw # -of :轉換為row 格式 -os :指定輸出路徑 vm_name.xml:為第二步驟中生成的檔案     

  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 #取消註釋並修改為如下:            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