從 Red Hat Virtualization 遷移至 Proxmox VE 的逐步指南
在 Enterprise 級解決方案中,Red Hat Virtualization(RHV)長期以來一直是管理虛擬機器的可靠平台。如今,隨著 RHV 即將達到生命週期終點,企業也開始探索 RHV 的替代方案,例如 Proxmox VE——這是一個日益受到歡迎的開源虛擬化平台。
這篇部落格文章將說明如何從 RHV 遷移至 Proxmox,內容涵蓋遷移的原因以及逐步操作流程。請繼續閱讀,了解如何順利完成 RHV 至 Proxmox 的遷移。
為何要從 RHV 切換到 Proxmox VE?
從 RHV 切換至 Proxmox VE 時,有許多因素需要考量。
- Proxmox 可在基於 Debian 的 Linux 發行版上運作,並具備友善的 apt 軟體儲存庫模型。具備內建備份功能性,並可透過原生工具配置高可用性叢集。
- Red Hat Virtualization 4.4 已於 2024 年 8 月達到生命週期終止。這意味著將不再發布任何更新或安全性修補程式,且 Red Hat 的官方支援也將終止。相較之下,Proxmox VE 則是一款持續積極開發且支援完善的替代方案。
- 成本與授權考量。RHV 需要付費的 Red Hat Enterprise 訂閱服務(RHEL、RHV Manager 等)。Proxmox VE 則是一個免費的開源平台,並提供可選的企業級支援服務。憑藉其靈活性與授權模式,它通常能帶來更低的總持有成本,對於中小型企業和實驗室而言尤其如此。
- Proxmox VE 採用簡化的架構。RHV 則由多個元件組成:RHV-M(管理程式)、oVirt、VDSM、RHEL 主機等。Proxmox VE 的架構更為單一,部署也更為簡便:內建網頁介面、命令列介面(CLI)及 API;無需外部資料庫或複雜的中介軟體。Proxmox 體積輕巧,既可在最低硬體規格下運行,也能縮放至大型叢集。
- 易於使用與管理。Proxmox VE 提供:
- 整合式網頁式圖形使用者介面。
- 開箱即用的集中式管理(無需額外管理主機)。
- 內建備份/還原、叢集、高可用性及防火牆特點。
RHV 的管理可能較為複雜,且仰賴 PostgreSQL 和 RHEL 訂閱等外部元件。
- 儲存與網路的靈活性。Proxmox 支援:
- 原生支援 Ceph、ZFS、LVM、NFS、iSCSI 等。
- 內建 軟體定義網路, 透過圖形化使用者介面 (GUI) 設定 VLAN、橋接器及叢集。
在進階儲存網路情境下,RHV 的需求更多。
提供基於 KVM 的相容性。RHV 和 Proxmox 皆基於 KVM/QEMU 並支援容器。虛擬機器遷移(需進行部分轉換)是可行的。Proxmox 支援 OVF/OVA, raw/qcow2 及其他格式。
從 RHV 遷移至 Proxmox:逐步操作指南
接下來,我們將說明如何為將虛擬機器從 RHV 遷移至 Proxmox VE 進行準備。
先決條件
在 RHV 方面:
- 確保虛擬機器使用的是 QCOW2 或 RAW 磁碟(不 快照, 匯出乾淨的基礎映像檔)。
- 在進行遷移之前,應先關閉虛擬機器。
- 請確保 根目錄 或 sudo RHV 主機上可提供此存取權限。
- 若使用 GlusterFS 或 iSCSI, 請記錄您的虛擬機器儲存佈局。
關於 Proxmox 方面:
- 建立一個具備充足資源的 Proxmox VE 叢集(或單一節點)。
- 請準備用於匯入虛擬機器的儲存空間(ZFS、LVM 或本機目錄)。
- 推薦:安裝 virtio 若您正在匯入 Windows 虛擬機器,請注意驅動程式。
遷移須知:
- 在進行遷移之前,請務必先備份虛擬機器。
- 在更換硬體後,可能會觸發 Windows 授權程序。
- 若要設定靜態 IP 位址,可能需要在 Proxmox VE 中重新指派 RHV、NIC 和 MAC 位址。
從 RHV 遷移至 Proxmox VE 的工作流程
完成所有準備步驟並滿足先決條件後,即可將 RHV 虛擬機器遷移至 Proxmox VE。所有遷移操作皆可在運行這些虛擬化平台的 Linux 主機上,透過命令列介面執行。
- 在 RHV 主機上找到您要遷移的虛擬機器所對應的虛擬磁碟。透過 SSH 連線至您的 RHV 運算主機(而非 RHV Manager)。您可以使用 SFTP 客戶端,透過 SSH 從 RHV 主機經由網路複製檔案。例如,來源虛擬機器的位置可以是: /rhev/資料中心/mnt/10a12345…/images/<VM-UUID>/<磁碟 UUID>.qcow2
- 將虛擬磁碟映像檔從 RHV 複製到 Proxmox 主機。若要透過網路複製檔案,最可靠的選項是 rsync 或 SCP.
- 在 Proxmox 節點上,為即將遷移的新虛擬機器建立一個目錄(請使用一個未被佔用的虛擬機器 ID,例如本例中的 123):
mkdir -p /var/lib/vz/images/123/ - 用於複製檔案的指令為 rsync:
rsync -avz root@rhv-host:/rhev/data-center/mnt/.../disk.qcow2 /var/lib/vz/images/123/vm-123-disk-0.qcow2在哪裡 123 這是我們要在 Proxmox 中指派的虛擬機器 ID。請將此 ID 替換為您自訂的值。在此範例中,該虛擬機器擁有一個虛擬磁碟。
- 您應在 Proxmox 主機上執行的 SCP 檔案複製指令如下:
scp username@remote-RHV:/file/to/receive /where/to/put/locally例如:
scp username@remote-RHV: /rhev/data-center/mnt/10a12345.../images/<VM-UUID>/<disk-UUID>.qcow2 /var/lib/vz/images/123/vm-123-disk-0.qcow2
- 在 Proxmox 節點上,為即將遷移的新虛擬機器建立一個目錄(請使用一個未被佔用的虛擬機器 ID,例如本例中的 123):
- 在 Proxmox 中建立一個新的空虛擬機器。在 Proxmox 主機上執行以下指令以建立該虛擬機器:
qm create 123 --name my-vm-name --memory 4096 --cores 2 --net0 virtio,bridge=vmbr0其中 123 是虛擬機器 ID。
- 將虛擬磁碟設定為使用從 RHV 主機複製而來的匯入虛擬磁碟檔案進行掛載:
qm importdisk 123 /var/lib/vz/images/123/vm-123-disk-0.qcow2 local-lvm - 掛載虛擬磁碟:
qm set 123 --scsihw virtio-scsi-pci --scsi0 local-lvm:vm-123-disk-0您也可以使用 ––ide0 或 ––sata0 如有需要,但 virtio 基於效能考量,建議採用此方式。
- 設定開機磁碟:
qm set 123 --boot order=scsi0 - 檢查虛擬機器設定,啟動虛擬機器,並調整虛擬機器內的客體作業系統。如有需要,請使用即時或救援 ISO 映像檔來啟動虛擬機器。
- 請檢查:
- 網路介面重新命名(RHV 使用 ethX, Proxmox 可能會使用 ensX 或 enpXsY) 若該設定取決於這些參數。
- 移除與 RHV 相關的服務和工具,例如 oVirt 套件。
- 安裝 qemu-guest-agent (可選,以實現更佳的整合)。
- 安裝 virtio 驅動程式(特別是適用於 Windows 虛擬機器):
- 將 VirtIO ISO 映像檔掛載至 Proxmox VE 中的虛擬機器。
- 啟動虛擬機器,並在 Windows 系統內安裝 VirtIO 驅動程式。
- 啟動虛擬機器,開機進入客體作業系統,並測試虛擬機器在遷移後是否運作正常。
- 在 Proxmox 中啟動虛擬機器:
qm start 123 - 開啟 Proxmox 網頁式圖形使用者介面,並監控已遷移的虛擬機器及其相關資訊。
- 請確認網路和硬碟是否正常運作。
- 請檢查虛擬機器作業系統內的日誌,以確認是否有錯誤。
- 在 Proxmox 中啟動虛擬機器:
使用虛擬機器範本將 RHV 遷移至 Proxmox
將 RHV 虛擬機器匯出至 Proxmox VE 的另一種方法,是將該虛擬機器匯出為 OVF/OVA 範本,然後在 Proxmox VE 中從該範本匯入該虛擬機器。
- 從 RHV Manager 將虛擬機器匯出為 OVA 檔案(若可行),或使用命令列:
virt-v2v -ic vddk:///path/to/your/vdsm/storage/domain -of ova -os /path/to/export/directory -n your_vm_name -b /path/to/your/bridge-network - 使用 OVA 範本將虛擬機器匯入 Proxmox 主機:
qm importovf 123 vm_name.ova local-lvm在哪裡 local-lvm 是 Proxmox 主機上的資料存放區名稱,且 123 是虛擬機器 ID。
註: 您可以建立遷移腳本,以自動化此流程,並執行批次遷移/轉換。
遷移後的設定與最佳化
建議您對 Proxmox VE 中的虛擬機器進行遷移後的設定與優化。此舉有助於確保系統穩定運作、發揮最佳效能,並與 Proxmox 的各項特點達到最佳整合。
- 您可能需要在虛擬機器儲存設定中編輯虛擬磁碟控制器。
- 調整網路設定。將已遷移虛擬機器在 Proxmox 主機上的虛擬網路介面卡連接到相應的虛擬網路(虛擬交換器)。
- 若 MAC 位址有所變更,請修正靜態 IP 位址設定,或更新 DHCP 設定。
- 如果虛擬機器上已安裝 Linux,請進行更新 /etc/network/interfaces (適用於 Debian)或 /etc/netplan/ (適用於 Ubuntu)請據此調整。其他 Linux 發行版可能使用不同的網路設定檔。
- 若虛擬機器上安裝了基於 Red Hat 的客體作業系統,請使用以下指令移除 RHV/oVirt 專屬套件:
yum remove vdsm* ovirt* rhvm* -y - 在客體作業系統中設定 QEMU 客體代理程式。此代理程式可在 Proxmox 介面中提供精確的虛擬機器資訊(IP 位址、主機名稱),並支援虛擬機器的安全關機以及線上備份(當虛擬機器正在運行時)。
- 在 Ubuntu 中,您可以透過以下指令,從線上軟體儲存庫安裝客體代理程式:
apt install qemu-guest-agentsystemctl enable --now qemu-guest-agent - 在 Windows 虛擬機器中,將 VirtIO ISO 映像檔掛載至虛擬機器,並進行安裝 qemu-ga-x64.msi 來自 guest-agent 目錄(適用於 64 位元 Windows)。
- 在 Ubuntu 中,您可以透過以下指令,從線上軟體儲存庫安裝客體代理程式:
- 若尚未啟用,請在 Proxmox 中啟用 QEMU 來賓代理程式:
qm set <VMID> --agent enabled=1 - 您可能需要更新 GRUB:
update-grub && reboot - 請重新檢查磁碟掛載設定。若虛擬機器使用多個磁碟和分割區,請確保磁碟與分割區的順序正確,並且 fstab 設定與磁碟設定相符。請檢查 /etc/fstab 以確保在磁碟匯入後,UUID 或標籤均正確無誤。如有需要,請編輯設定。
透過 NAKIVO 確保 Proxmox 虛擬機器保護
完成將虛擬機器從 Red Hat Virtualization 遷移至 Proxmox 後,建議您設定虛擬機器的備份。 NAKIVO Backup & Replication 是一套全面的数据保護解決方案,支援 Proxmox 虛擬機器備份 透過提供的 API,在主機層級進行操作。
此方法可確保 Proxmox VE 中的資料保護具備高效率與高可靠性。支援個別的 Proxmox 主機及叢集。NAKIVO 解決方案包含豐富的特點,包括:
- 增量備份 讓您僅能複製自上次備份以來有所變更的資料。此方法可加快備份作業速度並節省儲存空間。若搭配備份壓縮功能,資料備份速度將更快速,儲存空間的節省幅度也更大。
- 備份加密 可防止資料遭未經授權存取,並提升備份環境的安全性。資料可在來源端、目標端以及網路傳輸過程中進行加密。
- 備份的不可變性 可保護備份免受勒索軟體的侵害。您可設定不可變期間,一旦資料寫入後便無法修改。勒索軟體無法刪除、破壞或竄改不可變的備份。
- 快速資料還原. NAKIVO 解決方案支援完整還原與細粒度還原。您可以根據當前情境選擇最適合的方法,以實現快速且有效的還原。您可以將資料還原至原始位置或自訂位置。
- 多個備份目的地. 您可以將備份儲存於本地端、檔案分享資料夾、私有或公有雲端、S3 相容儲存裝置以及 NAS 上。
結論
從 RHV 遷移至 Proxmox VE 看似頗具挑戰性,但只要進行妥善的規劃與準備,整個過程便會變得容易許多。隨著 RHV 即將達到生命週期終點,各組織正評估替代方案,而 Proxmox 作為一款具備高度靈活性、開源且擁有強大社群支持的解決方案,在眾多選項中脫穎而出。遵循結構化的遷移工作流程,可將風險降至最低,並確保您的工作負載能持續運作。