Compute Engine 執行個體生命週期

從建立到刪除,Compute Engine 執行個體會經歷不同狀態。本文將說明運算執行個體生命週期,協助您排解問題、管理資源、規劃遷移作業,以及瞭解費用。

如要查看運算執行個體的目前狀態,請參閱下列文章:

運算執行個體狀態

建立運算執行個體時,執行個體會先進入 PROVISIONING 狀態,然後移至 STAGING 狀態,最後進入 RUNNING 狀態。具有等待時間 (requestValidForDuration) 的彈性啟動虛擬機器 (VM) 執行個體和 TPU 執行個體,則會改為進入 PENDING 狀態。從 RUNNING 狀態開始,您可以將運算執行個體移至 SUSPENDEDTERMINATED 狀態,也可以刪除執行個體。

下圖顯示 Compute Engine 可將運算執行個體設為的不同狀態:

運算執行個體不同狀態的流程圖。

上圖顯示的狀態說明如下:

PENDING 個州

建立運算執行個體後,如果符合下列條件,就會進入 PENDING 狀態。否則,運算執行個體會直接轉換為 PROVISIONING 狀態。

  • 等待時間 (requestValidForDuration) 達 90 秒以上的彈性啟動型 VM

  • 獨立 TPU 執行個體。

  • 屬於代管執行個體群組 (MIG) 的彈性啟動型 VM 或 TPU 執行個體,除非 MIG 已停用建立重試

PENDING 狀態下,Compute Engine 會嘗試取得啟動運算執行個體所需的資源,直到等待時間結束為止。如果 Compute Engine 在這段時間內取得資源,且您有足夠的資源配額,運算執行個體狀態就會變更為 PROVISIONING。否則,您會遇到錯誤,而 Compute Engine 會刪除運算執行個體。如果不再需要運算執行個體,您也可以在等待時間結束前刪除。

PROVISIONING 個州

建立、重新啟動或恢復運算執行個體後,Compute Engine 會開始為運算執行個體分配資源,並將其狀態設為 PROVISIONING。Compute Engine 完成資源分配後,運算執行個體會轉換為 STAGING 狀態。

STAGING 個州

STAGING 狀態下,Compute Engine 會因下列其中一個原因,準備首次啟動的運算執行個體:

  • Compute Engine 仍在建立及設定運算執行個體。

  • 您或排定的作業重新啟動或繼續執行運算執行個體。

在這個狀態下,運算執行個體尚未執行。開始執行或啟動時,運算執行個體會進入 RUNNING 狀態。

RUNNING 個州

RUNNING 狀態下,Compute Engine 會啟動運算執行個體,或運算執行個體正在執行。根據採取的動作、系統事件或運算執行個體設定,運算執行個體可以從 RUNNING 狀態轉換為 PENDING_STOPSTOPPINGSUSPENDINGREPAIRING

PENDING_STOP 個州

PENDING_STOP 狀態下,運算執行個體會開始正常關機。只有在啟用正常關機時,才會發生這個關機程序。如果您停止或刪除運算執行個體,或者 Compute Engine 自動執行排定的停止或刪除作業,運算執行個體就會進入這個狀態。發生下列其中一種情況時,運算執行個體狀態會變更為 STOPPING

  • 您手動結束正常關機程序。

  • 正常關機期間逾時。如果仍有任何工作在執行,Compute Engine 會強制停止這些工作。

STOPPING 個州

處於 STOPPING 狀態時,運算執行個體會關閉客體 OS。在下列情況中,系統會執行這項程序:

  • 您或排定的作業停止或刪除運算執行個體。

  • 發生主機錯誤。

除非您將運算執行個體設定為略過訪客 OS 關機,否則關機時間取決於運算執行個體類型。不過,如果運算執行個體因主機錯誤而停止,關機時間可能會與預期長度不同。訪客 OS 關機後,進行中的停止或刪除作業會依下列方式結束:

  • 停止作業:運算執行個體狀態會變更為 TERMINATED

  • 刪除作業:Compute Engine 會永久刪除運算執行個體和所有附加資源。

TERMINATED 個州

當運算執行個體進入 TERMINATED 狀態時,Compute Engine 會完成停止作業。除非您或排定的作業重新啟動或刪除運算執行個體,否則該執行個體會維持 TERMINATED 狀態。如果您要求重新啟動運算執行個體,但 Compute Engine 無法分配您要求的資源,則重新啟動要求會失敗,且運算執行個體會維持在 TERMINATED 狀態。否則,重新啟動要求會成功,且運算執行個體狀態會變更為 PROVISIONING

REPAIRING 個州

REPAIRING 狀態下,Compute Engine 會對運算執行個體啟動修復作業。如果 Compute Engine 發生內部錯誤,或運算執行個體的主機伺服器因維護作業而無法使用,Compute Engine 就會修復運算執行個體。運算執行個體修復期間會發生下列情況:

如果 Compute Engine 成功修復運算執行個體,運算執行個體狀態就會還原為修復作業開始前的狀態。這個狀態可以是 STAGINGRUNNINGSUSPENDINGSTOPPING。如果運算執行個體設定為在修復作業完成後自動重新啟動 (automaticRestart),您可以在修復程序中選擇停止運算執行個體。這項動作可防止運算執行個體在修復完成後自動重新啟動,並將運算執行個體保留在 TERMINATED 狀態。

SUSPENDING 個州

處於 SUSPENDING 狀態時,Compute Engine 會開始暫停運算執行個體。您只能暫停特定運算執行個體。暫停作業完成後,運算執行個體狀態會變更為 SUSPENDED

SUSPENDED 個州

SUSPENDED 狀態下,Compute Engine 會完成暫停作業。您可以繼續或刪除運算執行個體。如果您要求繼續運算執行個體,但 Compute Engine 無法分配您要求的資源,則繼續要求會失敗,且運算執行個體會維持在 SUSPENDED 狀態。否則,繼續要求會成功,且運算執行個體狀態會變更為 PROVISIONING

運算執行個體最多可處於 SUSPENDED 狀態 60 天。之後,Compute Engine 會將運算執行個體狀態變更為 TERMINATED

運算執行個體定價

在運算執行個體生命週期內,您需支付運算執行個體費用,如下所示:

  • 如果運算執行個體處於下列狀態,您需要支付 CPU 使用量費用:

    • RUNNING

    • PENDING_STOP

  • 如果運算執行個體處於下列狀態,您需要支付記憶體用量費用:

    • RUNNING

    • PENDING_STOP

    • SUSPENDING

    • SUSPENDED

  • 對於磁碟或外部 IP 位址等附加資源,只要資源存在,您就必須支付費用,與運算執行個體狀態無關。

詳情請參閱運算執行個體定價

後續步驟