本文說明如何暫停及停止代管執行個體群組 (MIG) 中的虛擬機器 (VM) 執行個體。本文也說明暫停及停止 MIG 中的 VM 如何協助您節省費用,以及在群組中需要更多 VM 時,如何縮短等待時間。
您可以透過 MIG 暫停及停止 VM,達到下列目的:
- 暫停未使用的應用程式或服務,避免支付運算資源費用,進而節省成本。
- 加快 MIG 向外擴充的速度:從已停止和已暫停 VM 的待命集區啟動預先初始化的 VM。
用途
以下各節說明 MIG 中待命集區的常見用途。
暫停應用程式或服務
您可以暫停或停止 MIG 中的 VM,以便暫停應用程式,並視需要根據運算量、工作時間、尖峰時段和預算限制恢復應用程式。您可以將目前運算結果保留在永久磁碟上,或 (如果是暫停的 VM) 保留在記憶體中。
舉例來說,在下列情況下,您可能會想暫停或停止 MIG 中的 VM:
- 您在平日有大量工作負載,想在週末暫停 VM,以節省費用。
- 您在實作變更時需要測試環境,但不想在不積極開發時繼續使用。
加快 MIG 向外擴充速度
您可以保留預先初始化的 VM 待命集區,在 MIG 向上調整大小時啟動。MIG 會從待命集區啟動或恢復 VM,而不是建立新的 VM,並等待應用程式初始化及準備好執行。在這種情況下,VM 初始化作業會提前完成,而不是在負載增加的關鍵時刻完成。
如果應用程式需要很長時間才能初始化,備用集區就非常實用,例如在下列情境中:
- 需要將最新內容下載至永久磁碟的應用程式。
- 需要透過從外部儲存空間下載、從本機運算,或兩者兼具的方式,在記憶體中快取額外內容的應用程式。
- 需要在初始化期間安裝全新軟體的應用程式,例如 Kubernetes 節點。
保留資源
下表列出在 MIG 中暫停及停止 VM 時保留的資源。
已保留 | 已暫停的 VM | 已停止的 VM |
---|---|---|
VM 名稱 | ||
內部 IP | ||
外部 IP (臨時) | ||
外部 IP (靜態*) | ||
磁碟† | ||
中繼資料 | ||
記憶體 |
*如要在停止或暫停 MIG 中的 VM 時保留外部 IP,請使用具狀態 MIG 設定,將外部 IP 升級為靜態 IP。
†如果 VM 附加任何本機 SSD 磁碟,當您停止或暫停 VM 時,系統不會保留本機 SSD 磁碟中的資料。
行為和設定
待命集區是由停止和暫停的 VM 集區組成。所有已停止的 VM 都會成為已停止集區的一部分,所有已暫停的 VM 則會成為已暫停集區的一部分。如果您在 MIG 中設定自動調度資源,暫停或停止 VM 後,MIG 會立即建立新的 VM,以維持 MIG 的建議大小。
已暫停和已停止集區的目標大小
與 MIG 的目標大小類似,已停止和暫停的集區也有各自的目標大小。您可以透過下列方式控制待命集區目標大小:
- 設定已停止和已暫停目標大小的值。
- 手動停止及暫停 VM,系統會自動變更目標大小。
如果變更已停止或暫停集區的目標大小,MIG 的行為如下:
- 增加暫停或停止集區的大小時,MIG 會建立新的 VM,等待 VM 初始化,然後視情況暫停或停止 VM。如果是區域性 MIG,系統會根據設定的目標分配型態建立 VM。
- 縮減暫停或停止集區的大小時,MIG 會任意選取要刪除的暫停或停止 VM。
- 同時變更 MIG 目標大小和暫停或停止集區的大小時,MIG 會盡量減少套用變更所需的操作次數。也就是說,MIG 可能會從待命集區繼續或啟動 VM,或是暫停或停止部分正在執行的 VM。
待機政策
待命政策會根據您指定的下列參數,定義待命集區的行為:
- 模式:MIG 使用已暫停和停止的 VM 時採用的模式。可以是
manual
或scale-out-pool
模式。 - 初始延遲:MIG 執行新建立的 VM 後,暫停或停止 VM 前的時間。設定初始延遲時間,讓應用程式有足夠的時間預先初始化,並在 VM 啟動或恢復時準備好執行。
模式
您可以設定作業模式,選擇如何管理待命集區。
有兩種模式可供選擇:manual
模式和 scale-out-pool
模式。
手動模式 (預設)
在手動模式中,您可以完全掌控要停止及暫停 MIG 中的哪些 VM。待命集區的預設模式為手動模式。
手動模式適用於下列情況:
- 暫停工作負載,節省閒置 VM 的執行費用。
- 與需要進階管理個別 VM 的第三方自動調度器整合 MIG。
- 停止所選 VM,以進行偵錯。
在手動模式下,MIG 不會對待命集區套用任何自動化作業:
- 當您或自動調度器增加 MIG 的目標大小時,MIG 不會自動啟動或恢復 VM,而是建立新的 VM。
- 當您或自動調度器縮減 MIG 的目標大小時,MIG 不會自動停止或暫停執行中的 VM,而是刪除這些 VM。
向外擴充集區模式
在向外擴充集區模式中,MIG 會使用待命集區中的 VM,藉由恢復或啟動這些 VM 來加速向外擴充。接著,MIG 會自動以新的 VM 補充待命集區,以維持目標大小。
在下列情況中,向外擴充集區模式有助於加速 MIG 向外擴充:
- 如果您使用 Compute Engine 自動配置器。
- 如果您使用第三方自動調度器,且想保留現有的任何整合。
- 手動增加執行中 VM 的目標大小。
在擴充集區模式中,MIG 的行為如下:
當您或自動調度器增加 MIG 中執行 VM 的目標大小時,MIG 會依下列順序採取行動:
- 如果 MIG 擴充的可用區中有任何 VM 可用,MIG 就會繼續執行已暫停的 VM。
- 恢復暫停的 VM 後,如果 MIG 尚未達到目標大小,MIG 會在 MIG 擴充的區域中啟動停止的 VM (如有)。
- 啟動 VM 後,如果 MIG 的目標大小仍未達到,系統會從頭建立新的 VM。
待命集區用於加速擴充作業後,MIG 會執行下列動作:
- 系統會根據目標大小建立新的 VM,以補充暫停和停止的集區,如果是區域性 MIG,則會依據目標分配型態建立。
- 這會將新 VM 設為執行中狀態。
- 在初始延遲時間過後,系統會暫停或停止新的 VM。
當您或自動調度器縮減 MIG 的目標大小時,MIG 不會自動停止或暫停執行中的 VM,而是刪除這些 VM。
初始延遲
如要確保 VM 正確初始化,請在待命政策中指定初始延遲時間。初始延遲時間是指 VM 建立後,在停止或暫停前等待的時間。這樣初始化指令碼就有時間完成作業。
在下列情況下,可能會發生初始延遲:
- 系統會建立新的 VM,並將目標狀態設為
SUSPENDED
或TERMINATED
。 - 處於
RUNNING
狀態的現有執行個體已暫停或停止。
在這兩種情況下,執行個體都可以在暫停或停止前初始化。
如要使用待命集區加速 MIG 的擴充作業,建議您先測量應用程式在所選機器類型上初始化所需的時間,確保應用程式有足夠的時間完全準備就緒,再暫停或停止。否則,從待命集區恢復或啟動 VM 的時間可能會比從頭建立 VM 更長。
MIG 中 VM 的目標狀態
MIG 具有宣告式 API。這表示您為 MIG 中的 VM 宣告目標狀態,且在儲存目標狀態時,API 要求會成功。MIG 接著會執行必要作業,達到目標狀態,您可以使用 API 檢查所有 VM 的目前動作和目前狀態。
暫停及停止 MIG 中的 VM 時,運作方式與宣告式方法相同。 當您傳送要求來暫停或停止 VM 時,MIG 會儲存每個 VM 的目標狀態相關資訊,並啟動必要作業來達成目標。
列出 MIG 中的代管 VM 時,您會看到 targetStatus
欄位。說明 MIG 穩定時的 VM 最終狀態。可為下列其中一個值:
RUNNING
STOPPED
SUSPENDED
MIG 中的 VM 可以具有與單一 VM 相同的生命週期狀態。以下列出 MIG 可能的作業範例,以及 targetStatus
欄位的相關聯值:
- 建立新的 VM,並在初始化後暫停。
- VM 的目標狀態:
SUSPENDED
。
- VM 的目標狀態:
- 繼續執行先前暫停的 VM。
- VM 的目標狀態:
RUNNING
- VM 的目標狀態:
- 停止先前執行的 VM。
- VM 的目標狀態:
STOPPED
- VM 的目標狀態:
- 啟動先前停止的 VM。
- VM 的目標狀態:
RUNNING
- VM 的目標狀態:
限制
- 以下暫停獨立 VM 的限制也適用於暫停 MIG 中的 VM:
- 您無法暫停使用 GPU 的執行個體。
- 您無法暫停 Bare Metal 執行個體。
- 您無法使用訪客環境內建的標準程序暫停執行個體。不支援使用指令 (如 Ubuntu 16.04 以上版本的
systemctl suspend
指令)。系統會忽略訪客模式信號。 - 執行個體最多只能暫停 60 天,之後 VM 就會自動停止。
- 您無法暫停記憶體超過 208 GB 的執行個體。
- 您可以暫停先占執行個體,但先占執行個體可能會在成功暫停前終止。
- 您無法暫停機密 VM。
- 您無法暫停已連結受 CSEK 保護磁碟的 VM。
- 在啟用執行個體重新分配功能的區域性 MIG 中,如果目標分配型態為
EVEN
,您無法暫停、停止、繼續或啟動群組中的特定 VM。如要管理待命集區,請設定已暫停和已停止集區的目標大小。 - 如果已在 MIG 中為初期測試更新設定第二個執行個體範本,就無法使用擴充集區模式。
- 如果您已關閉 MIG 中的修復作業,就無法暫停或停止 MIG 中的 VM。
- 執行個體最多只能暫停 60 天,之後 VM 就會自動停止。
定價
停止和暫停的 VM 仍會產生下列項目的費用:
- 開機磁碟的任何永久磁碟用量,以及附加至 VM 的任何額外磁碟。 詳情請參閱永久磁碟定價。
- 連結至 VM 的任何靜態 IP。 詳情請參閱「IP 定價」。
- 如果是已暫停的 VM,則為 VM 記憶體和裝置狀態。 詳情請參閱 VM 執行個體定價。
後續步驟
- 瞭解如何手動暫停或停止 MIG 中的 VM。
- 瞭解如何利用已暫停和已停止的 VM 加速向外擴充。
- 進一步瞭解已暫停和已停止 VM 的更新。