在虛擬機器 (VM) 執行個體的基礎硬體進行預定維護期間,主機伺服器會無法使用。如要在主機事件期間保持執行個體運作,Compute Engine 會將執行個體即時遷移至相同可用區中的其他主機伺服器。如要進一步瞭解主機事件,請參閱「關於主機事件」。
即時遷移功能可讓 Cloud de Confiance by S3NS 執行維護作業,而不會中斷工作負載、重新啟動執行個體,或修改執行個體的任何屬性,例如 IP 位址、中繼資料、區塊儲存空間資料、應用程式狀態或網路設定。
即時遷移功能可讓執行個體在下列情況下持續運作:
基礎架構維護。基礎架構維護作業包括資料中心的主機硬體、網路和電網,以及主機作業系統 (OS) 和 BIOS。
安全性相關更新和系統設定變更。包括安裝安全性修補程式,以及變更主機根分區的大小,以便儲存主機 OS 映像檔和套件。
硬體故障。包括記憶體、CPU、網路介面卡和磁碟故障。如果在伺服器完全故障前偵測到故障,Compute Engine 會預防性地將執行個體即時遷移至新的主機伺服器。如果硬體完全故障或無法進行即時遷移,執行個體就會終止並自動重新啟動。
Compute Engine 只會對主機維護政策設為「遷移」的 VM 執行即時遷移。如要瞭解如何變更主機維護政策,請參閱「設定 VM 主機維護政策」。
限制
下列 VM 類型不支援即時遷移:
- 具備本機 SSD 的 H4D 執行個體。
- 具有 Cloud RDMA 網路介面的執行個體。
- Bare Metal 執行個體。使用裸機機器類型建立的執行個體不支援即時遷移。這些執行個體的維護行為分別設為
TERMINATE和RESTART。 - Confidential VM 執行個體。所有 Confidential VM 類型都必須設為停止,並視需要重新啟動。詳情請參閱「即時遷移」。
- 運算最佳化 VM H4D VM 不支援即時遷移,因為啟用 RDMA 的 VM 不支援即時遷移。從 HPC 應用程式的角度來看,對執行個體執行即時遷移會嚴重影響應用程式效能,因此應用程式最好從檢查點啟動。這些 VM 的維護行為設為
TERMINATE和RESTART。Compute Engine 會在維護事件期間保留 Titanium SSD 上的資料,詳情請參閱「終止執行個體後的磁碟持續性」。
即時遷移程序如何運作?
當 VM 排定即時遷移時,Compute Engine 會提供通知,讓您為工作負載和應用程式做好準備,因應即時遷移中斷。在即時遷移期間, Cloud de Confiance by S3NS 會盡可能縮短中斷時間,通常遠低於 1 秒。如果 VM 未設為即時遷移,Compute Engine 會在主機維護期間終止 VM。設為在主機事件期間終止的 VM 會停止並重新啟動 (選用)。
Cloud de Confiance by S3NS 將執行中的 VM 從一部主機遷移至另一部主機時,會將 VM 的完整狀態從來源移至目的地,且客體 OS 和與其通訊的任何項目都不會察覺到這項操作。 這項功能涉及許多元件,可確保遷移作業順暢進行。
首先,系統會通知您需要將 VM 從目前的主機機器移出。通知可能從檔案變更開始,指出有新的 BIOS 版本可用、硬體作業排程維護,或即將發生硬體故障的自動信號。
Cloud de Confiance by S3NS的叢集管理軟體會持續監控這些事件,並根據控管資料中心的政策 (例如容量使用率,以及單一客戶一次可遷移的 VM 數量) 安排排程。
選取要遷移的 VM 後, Cloud de Confiance by S3NS 會通知訪客即將進行遷移。等待一段時間後,系統會選取目標主機,並要求主機設定新的空白「目標」VM,以接收遷移的「來源」VM。驗證機制用於建立來源與目標之間的連線。
VM 遷移作業分為三個階段:
來源限電。VM 仍在來源主機上執行,而大部分狀態會從來源 VM 傳送至目標 VM。舉例來說,Cloud de Confiance by S3NS 會將所有客體記憶體複製到目標 VM,同時追蹤來源 VM 上已變更的頁面。來源部分停機時間取決於客體記憶體大小和頁面變更速率。
停播。VM 不在任何地方執行的短暫時間。來源 VM 會暫停,並傳送在目標主機上執行 VM 所需的所有剩餘狀態。在來源降載階段,當傳送狀態變更達到報酬遞減點時,VM 就會進入停機階段。系統會使用演算法,平衡傳送的記憶體位元組數與客體變更速率。
在停播事件期間,系統時鐘會向前跳轉最多 5 秒。如果停電事件超過 5 秒, Cloud de Confiance by S3NS 會停止,並使用 VM 訪客套件中包含的 daemon 同步處理時鐘。
目標降載。VM 會在目標主機上執行。來源 VM 存在,且可能為目標 VM 提供支援。舉例來說,在網路架構趕上目標 VM 的新位置之前,來源 VM 會為傳送至目標 VM 和從目標 VM 傳出的封包提供轉送服務。
最後,遷移作業完成,系統會刪除來源 VM。您可以在 VM 的 Cloud Logging 記錄檔中查看遷移作業。
即時遷移單一租戶 VM
工作負載執行時,您可能需要將 VM 移至其他單一租戶節點或節點群組。如果您將 VM 移至一組節點,Compute Engine 會決定要將 VM 放在哪個節點。如要瞭解單一用戶群,請參閱「單一用戶群總覽」。
如要將單一租戶 VM 移至其他節點或節點群組,可以手動啟動即時遷移。您也可以手動啟動即時遷移,將多租戶主機上的 VM 移至單一租戶節點。詳情請參閱「手動即時遷移 VM」。
後續步驟
設定 VM 主機維護政策選項,將執行個體設為即時遷移。
瞭解如何取得即時遷移通知,以便觸發要在維護事件前執行的工作。
參閱如何設計可處理服務中斷情況的強大系統的相關提示。