先佔 VM 執行個體

本頁介紹的是先佔虛擬機器 (VM) 執行個體。如要瞭解如何建立先佔執行個體,請參閱建立先佔執行個體一文。如要進一步瞭解關於執行個體的一般資訊,請參閱虛擬機器執行個體說明文件。

什麼是先佔執行個體?

先佔虛擬機器是一種執行個體,與一般執行個體相比,建立和執行起來的價格較低。不過 Compute Engine 在因應其他工作的資源調度需求時,可能會終止 (先佔) 這些執行個體。先佔執行個體是額外的 Compute Engine 容量,因此其供應情形會隨用量而異。

如果您的應用程式具備容錯能力,且能承受執行個體可能遭到先佔的影響,先佔執行個體就可大幅節省您的 Compute Engine 費用。例如可在先佔執行個體上執行批次處理工作。若部分執行個體在處理過程中終止,工作執行速度會變慢,但並不會完全停止。先佔執行個體不會對現有執行個體造成額外的工作負載,就能完成批次處理工作,且不用全額購買更多一般執行個體。

先佔執行個體限制

先佔執行個體的功能與一般執行個體類似,但有以下限制:

  • Compute Engine 可能會因系統事件的緣故,隨時終止先佔執行個體。一般而言,Compute Engine 因系統事件而終止先佔執行個體的可能性很低,但仍需視當前狀況,每天和不同區域間都可能有所差異。
  • 先佔執行個體執行 24 小時後,Compute Engine 會一律將之終止。某些操作會重設此 24 小時計數器。
  • 先佔執行個體為有限的 Compute Engine 資源,因此可能無法隨時供應。
  • 發生維護事件時,先佔執行個體無法即時遷移,也無法設為自動重新啟動。
  • 由於有上述限制,因此先佔執行個體未涵蓋在任何「服務水準協議」內 (明確來說,先佔執行個體已排除在 Google Compute Engine 服務水準協議之外)。
  • Google Cloud Platform 免費版並未包含先佔執行個體。

先佔程序

Compute Engine 會執行下列步驟以先佔執行個體:

  1. Compute Engine 以 ACPI G2 Soft Off 信號形式,向執行個體傳送先佔通知。您可使用關閉指令碼來處理先佔通知,並在執行個體停止前完成清除動作。.
  2. 若執行個體未在 30 秒後停止,Compute Engine 會向作業系統傳送 ACPI G3 Mechanical Off 信號。
  3. Compute Engine 將執行個體轉換為 TERMINATED 狀態。

可以停止執行個體,藉以模擬執行個體先佔行為。

遭到先佔的執行個體仍會顯示在您的專案中,但只要執行個體仍處於 TERMINATED 狀態,就不會向您收取執行個體的時數費用。您可以存取和還原執行個體所連接的永久磁碟內的資料,但除非刪除磁碟,否則磁碟仍會產生儲存費用。與一般執行個體相同,若刪除先佔執行個體,亦會刪除標示為自動刪除的永久磁碟。

如果 Compute Engine 在建立先佔執行個體後不到一分鐘便將其終止,就不會向您收取該虛擬機器執行個體的使用費。如此便能確保您不用支付先佔執行個體的費用 (除非先佔執行個體已耗費時間完成大量工作)。不過,系統仍會照常計算付費作業系統的費用。

先佔選擇

一般而言,Compute Engine 會避免先佔單一客戶過多的執行個體,且會先佔最近啟動的執行個體。此策略起初可能會讓人感到不便,但長期運作下有助於將整個叢集的工作中斷狀況降至最低。如果執行個體在執行後的一分鐘內即已先佔,Compute Engine 就不會收取該執行個體的費用。

對歷來資料的觀察結果顯示,每項專案每七天的平均先佔率變動範圍在 5% 至 15% 之間,有時會因時間與區域因素而升高。提醒您,上述觀察資訊僅供參考:對於先佔率或先佔的分配,先佔執行個體不做任何保證,亦無任何服務水準協議。

某些操作會重設先佔執行個體的 24 小時計數器。具體來說,在您停止啟動執行個體時,Compute Engine 會因執行個體轉換為 TERMINATED 狀態而重設計數器。不過,當執行個體維持 RUNNING 狀態時,其他操作並不會重設計數器,例如重設執行個體,或在 VM 內執行 sudo reboot 時。

代管執行個體群組中的先佔執行個體

您可在代管執行個體群組中,建立先佔執行個體。請在執行個體範本中指定先佔選項,然後再建立或更新群組。

僅當有額外的 Compute Engine 資源可供使用時,代管執行個體群組才可建立或新增先佔執行個體。若這些資源受到限制,代管執行個體群組就無法調整規模大小,也無法自動調整群組中的先佔執行個體數量。

代管執行個體群組會一直嘗試維持目標大小,或是維持該群組以自動配置器指定的大小。若 Compute Engine 終止了代管執行個體群組中的先佔執行個體,則群組會重複嘗試使用指定的執行個體範本,來重新建立該執行個體。只要重新供應必要資源,群組就會重新建立執行個體並維持目標群組大小。

先佔執行個體的付費作業系統

先佔執行個體不會減少付費作業系統的費用,亦不會變更這些作業系統的使用收費方式。若 Compute Engine 終止的是執行付費作業系統的先佔執行個體,則會視為是您自行終止執行個體,而向您收取該作業系統的費用。您仍需支付基本費用,而系統仍會將用量依計費單位進位成整數,以計算付費作業系統的費用。

在執行付費作業系統的先佔執行個體上,機器類型的費用一律會按秒數收費,並以機器類型定價頁面上列出的價格為準。

先佔執行個體上的本機 SSD

您可以啟動具有本機 SSD 的先佔 VM 執行個體,Compute Engine 會依據先佔價格,向您收取本機 SSD 的使用費。連接至先佔執行個體的本機 SSD 會如一般本機 SSD 工作,且只會在執行個體存留時常駐。您可以要求先佔本機 SSD 的獨立配額,但您也可以選擇在建立先佔本機 SSD 時,使用您的一般本機 SSD。

如果本機 SSD 的執行個體在其開始執行後的一分鐘內即已先佔,則 Compute Engine 不會向您收取本機 SSD 的使用費用。

如需本機 SSD 的詳細資料,請查看本機 SSD 文件

先佔執行個體上的 GPU

您可以用較低的 GPU 先佔價格在先佔 VM 執行個體中新增 GPU。連接到先佔執行個體的 GPU,在運作方式上就如同一般的 GPU,但僅會在執行個體的可用期限內保留。具有 GPU 的先佔執行個體,其先佔程序與其他所有先佔執行個體皆相同。

在將 GPU 新增至先佔執行個體時,使用的是一般 GPU 配額。如果您的先佔 GPU 需要獨立配額,請要求獨立的先佔 GPU 配額

在維護作業期間,根據預設會先佔具有 GPU 的先佔執行個體,且這類執行個體無法自動重新啟動。若您想要重新建立已先佔的執行個體,請使用代管執行個體群組。代管執行個體群組會在 vCPU、記憶體和 GPU 資源可供使用時,重新建立執行個體。

若您想在執行個體遭到先佔前收到警告訊息,或是想將執行個體設為在維護作業過後自動重新啟動,請使用具有 GPU 的非先佔執行個體。針對具有 GPU 的非先佔執行個體,Google 如要先佔具有 GPU 的非先佔執行個體,會於一小時前預先通知

如果 GPU 的執行個體在其開始執行後的一分鐘內即已先佔,則 Compute Engine 不會向您收取 GPU 的使用費用。

如需自動重新啟動非先佔執行個體的步驟,請參閱執行個體的更新選項一節。

要瞭解如何建立附加 GPU 的先佔執行個體,請參閱建立具有 GPU 的執行個體一節。

測試先佔設定

您可在執行個體上執行模擬維護事件,以強制先佔這些執行個體。使用這項功能可測試應用程式處理先佔執行個體的方式。請參閱測試適用政策,瞭解如何在執行個體上測試維護事件。

您也可以停止執行個體,藉以模擬執行個體先佔行為,這個模擬操作可用來取代模擬維護事件,並避免超過配額限制。

後續步驟

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Compute Engine 說明文件