當 Proxmox VE 叢集建立完成以後,除了方便的多節點單一介面管理的好處之外,最令人開心的就是終於可以來體會客體機不停機線上遷移的強大威力了。
對於許多難以停機做遷移的服務來說,採用線上遷移是可以兼顧服務不中斷,又可以移動至其它實體機節點的實用功能;而 Proxmox VE 的遷移功能可以支援放在本機儲存 (Local Storage) 與共用儲存 (Share Storage) 這兩種方式,本文將介紹如何使用。
要在 Proxmox VE 管理介面上遷移客體機操作簡單,請在資源檢視區選取要遷移的客體機後,再按下右方的 遷移
按鈕。
準備進行客體機遷移
當進入遷移的選項視窗後,發現這裡有一則錯誤訊息,若沒有解決的話無法提供遷移功能。
進行客體機遷移選項視窗錯誤
這一則錯誤指的是客體機硬體有建立虛擬光碟機,並且使用了放在本地儲存的 ISO 映像檔,所以無法被遷移。
既然知道了錯誤原因那就好辦,請先切換至客體機的 硬體
頁籤,找到 CD/DVD 裝置 (ide2)
後,點選兩下進去將 ISO 映像檔移除即可。
移除客體機掛接的 ISO 映像檔
補充:
若需要遷移但又有掛接 ISO 映像檔使用的需求時,請把 ISO 映像檔放置在共用儲存 (如 NFS、CIFS 等掛接進來的儲存區) 即可。
解決了因使用本機儲存 ISO 映像檔導致無法遷移的問題後,我們可以再次來到遷移功能的選項視窗,可以發現該則錯誤已經消失。
不過,在資訊欄中還是有一筆警告資訊,它是提醒這個客體機的磁碟是放在本機儲存且容量較大,可能會導致遷移的時間比較久。
在 目標節點
欄位,可以下拉選取要遷移過去的目標節點。而 目標儲存
欄位可以選取遷移至另一個節點後,要放在那一個儲存集區裡,若留空不動,系統自動選擇與來源一樣名稱的儲存集區,例如原本放在 vmdisk-2 裡,遷移過去目標節點時也會放在該節點的 vmdisk-2
裡面。
進行客體機遷移選項視窗
當按下遷移按鈕後,即會出現作業記錄視窗顯示目前進度,而在遷移進行時客體機的運作也不會停止,繼續提供服務當中,在資源檢視區也會以一個紙飛機圖示標示在客體機旁,表示目前正在進行遷移中。
開始遷移客體機
客體機遷移中繼續運作
當全部遷移完成後,作業記錄視窗會顯示遷移所花費的時間。
遷移的時間長短取決於幾個重點:
客體機遷移作業完成
接著我們可以看到這個客體機 ubuntu-desktop
已經由原本 host-106
節點之下,改為出現在 host-111
節點之下了,表示它已經在另一個節點繼續提供服務。
客體機已經在另一個節點運作
補充:
在安裝有不同品牌 CPU 的節點之間遷移,只要 CPU 類型是設為 KVM64 類行通常不會有問題。但也有極少數例外的情況,例如遇到放在 AMD CPU 節點的客體虛擬機遷移至 Intel CPU 節點後該客體機會當機的問題,反之亦然。
前一節的使用情況是客體機磁碟放在節點的本機儲存集區裡,若我們有掛接外部儲存如 iSCSI、NFS 等,而且客體機的磁碟是放在這些共用儲存之上,在做線上遷移的時候速度會快更多,因為遷移過程中只需要將記憶體內容的資料遷移過去,磁碟不需要遷移。
做法一樣,先選取客體機後,按下 遷移
按鈕,當開始遷移之後可以在作業記錄視窗中發現,Proxmox VE 直接從 VM-State
開始遷移,而不用像前一節放在本機儲存的客體機,需要先遷移 scsi0
的磁碟。
遷移磁碟放在共用儲存的客體機
因此,整個遷移作業的時間會來的快上許多,這次花費 46 秒,先前遷移本機儲存的客體機則花費 3 分 59 秒,此環境是採用 1Gb 網路,若使用更高頻寬的連線能力可以大幅加速遷移的時間。
遷移客體機完成