如何從 Xen 遷移到 XCP?
我正在執行安裝了 Xen 4.1 的 Ubuntu 伺服器。所有虛擬機都在該伺服器上執行,其中一個或多個虛擬磁碟以 qcow2 格式儲存。這些虛擬機由“xl”工具棧管理。一個 VM 是 HVM 模式下的 Windows,其他 VM 是 PV VM。qcow2 文件只包含根文件系統,沒有分區結構。
現在我用 XCP 1.6 安裝了一個新伺服器。無論如何我可以將這些虛擬機遷移到 XCP 嗎?提前致謝。
只是為了結束這個循環:在 xen-api 郵件列表上的一個執行緒中提供了對 Lingfeng 問題的答案。這是詹姆斯布爾平的回答:
一種方法是,對於每個 VM:
- 使用 qcow2raw 將每個 qcow2 文件轉換為原始文件 ’ 將這些文件放在某個位置(例如 NFS 導出),您可以從 XCP 的 domain0 臨時訪問它們
- 使用 XCP 使用最合適的模板“安裝”虛擬機,但不實際啟動虛擬機或完成安裝。確保選擇的虛擬磁碟大小至少與原始 qcow2 的虛擬大小一樣大。設置虛擬 NIC MAC 地址以匹配您的 xl VM。‘對於 PV,你需要讓 XCP 認為你已經完成了安裝
一種。將 PV-bootloader 更改為 pygrub (xe vm-param-set uuid= PV-bootloader=pygrub)
灣。使第一個 VBD 可啟動(xe vbd-param-set uuid=$(xe vbd-list vm-uuid= userdevice=0 –minimal) bootable=true)
C。使虛擬 CD 驅動器(如果存在)不可引導: (xe vbd-param-set uuid=$(xe vbd-list vm-uuid= type=CD –minimal) bootable=false) 3. 將 VM 的虛擬磁碟一個一個附加到 dom0 ’ 我首選的方法是:
一種。使用 ‘xe vm-disk-list uuid=’ 查找 VDI 的 UUID 查找例如 ‘Disk 0 VDI’
灣。執行 ‘/opt/xensource/debug/with-vdi ’ ’ 這會將 VDI 作為 /dev/$DEVICE 附加到 dom0 並將您放入 shell ’ 退出此 shell 將分離 VDI 4. 使用 /opt/xensource/libexec/sparse_dd 將原始文件(來自步驟 1)的內容添加到 VDI。
一種。例如 /opt/xensource/libexec/sparse_dd -src /mnt/MyVM.img -dest /dev/$DEVICE -size 8589934592 -prezeroed 5. 退出“with-vdi”外殼
我已經為我擁有的 xl PV VM 嘗試了這個並且它工作正常(我從原始圖像而不是 qcow2 開始,所以跳過了第 1 步)。我的測試也不同,因為 root 在 xvda1 上,但是你的情況應該沒問題’ IIRC pygrub 可以在原始設備上使用 root。