在虛擬機器管理程式類型之間轉換

在虛擬機器管理程式類型之間轉換

我的公司需要使用我們的專有解決方案自動創建新的虛擬機,為此,我們希望以標準化格式(OVA 似乎是唯一的“標準”)交付產品,或者能夠從同一台機器到各種不同的虛擬化類型。

到目前為止,這是手動完成的,這意味著如果客戶想要 HyperV VM,我們需要在我們內部的 HyperV 伺服器、VMWare 上的 VMWare 等上建立它…我們的目標是實現此自動化。

更好地解釋一下:計劃是擁有一個 KVM 伺服器,配置 VM,並在配置後將其匯出為 OVA 格式,並且可能作為對我們的客戶選擇的虛擬機器管理程式的額外禮貌。

我可以使用“qemu-img Convert”來很好地轉換磁碟,但是我似乎無法將機器定義(XML)轉換為其他虛擬機器管理程式所需的其他格式。

我找不到任何合適的工具,有建議嗎?

注意:我們無法存取將安裝這些的虛擬機器管理程序,因此我們需要將其匯出為 OVA/TAR 等...

答案1

不幸的是,OVA 的承諾遠遠超過了它所能提供的。它充其量只是一種用於分發磁碟映像的標準格式,但它在確保磁碟映像可以在多個虛擬機器管理程式上無縫引導方面幾乎沒有什麼作用(如果有的話)。每個虛擬機器管理程式模擬一組不同的虛擬硬件,因此來賓作業系統需要為每個虛擬機器管理程式安裝不同的驅動程式。一些作業系統(例如 Linux)相當不錯,能夠使用任意硬體啟動,自動檢測驅動程式以匹配它們找到的內容,但即使如此,它也很容易搞砸並使其崩潰。例如,如果您/etc/fstab將“/”列為/dev/vda1磁碟上(對於 QEMU 的 virtio-blk 磁碟機驅動程式),則在使用顯示為/dev/sda1. Windows 確實很難適應不同的硬件,因為牠喜歡將特定的驅動程式緊密綁定到每個磁碟/網卡等。

還有一個問題是,每個虛擬機器管理程式都有自己首選的磁碟映像格式 - VMWare 更喜歡 vmdk,QEMU 理想情況下喜歡 raw 或 qcow2,VirtualBox 有另一個,等等。

這些問題就是為什麼像 virt-v2v 這樣的工具(http://libguestfs.org/virt-v2v.1.html)存在,它為一個虛擬機管理程式獲取磁碟映像並重新配置來賓作業系統以在不同的虛擬機管理程式上工作,同時更改磁碟格式。

即使您以某種方式建立了您認為適用於所有這些磁碟映像的磁碟映像,您仍然需要對其進行完整的 QA 測試週期,以確保它實際上能夠正常運作。

恕我直言,為每個虛擬機器管理程式建立專用磁碟映像要容易得多。

相關內容