代管執行個體群組提供自動調度資源功能,可根據負載的增減,自動新增或刪除代管執行個體群組的執行個體。自動調度資源服務可協助應用程式緩解流量增加的問題,並在資源需求降低時節省成本。您只需要定義自動調度資源政策,自動配置器就會根據測得的負載自動調整資源配置。
自動調度資源功能會在負載增加時,在執行個體群組中新增其他執行個體 (擴充規模),並在執行個體需求減少時移除執行個體 (縮減規模)。
基礎知識
自動調度資源功能牽涉到下列基本概念和服務。
代管執行個體群組
自動調度資源是代管執行個體群組的功能。代管執行個體群組是透過常用執行個體範本建立的一組性質相同的執行個體。自動配置器會新增或刪除代管執行個體群組中的執行個體。雖然 Compute Engine 有代管和非代管執行個體群體,但只有代管執行個體可以與自動配置器搭配使用。
如要瞭解代管執行個體群組和非代管執行個體群組之間的差異,請參閱執行個體群組說明文件。
自動調度資源政策和目標使用率
如要建立自動配置器,您必須指定自動調度資源政策和目標使用率,讓自動配置器決定調度群組資源的時機。您可以使用下列政策來調度資源:
- 平均 CPU 使用率
- HTTP 負載平衡服務規模 (可根據使用率或每秒要求數判定)
- Stackdriver Monitoring 指標
自動配置器會根據政策持續收集使用量資訊,並將實際使用率與您想要的目標使用率進行比較,以判斷群組規模需要擴充或縮減。
目標使用率是指您想讓虛擬機器執行個體維持的等級。舉例來說,如果您要根據 CPU 使用率調度資源,可以將目標使用率設為 75%,這樣自動配置器就會將指定執行個體群組的 CPU 使用率維持在 75% 或近似的值。每項指標的使用率解讀方式會因自動調度資源政策而有所不同。
如需各項政策的簡短摘要,請參閱總覽中的自動調度資源政策相關頁面。如需各項政策的詳細說明,請參閱:
等待期
設定自動調度資源功能時,請指定等待期,讓執行個體在自動配置器開始收集資訊前完成初始化程序。執行個體啟動期間的資訊可能不適合提供給自動配置器做決定,因此建議您省略這項資料。預設的等待期為 60 秒。
穩定期
為了縮小規模,自動配置器會根據最近 10 分鐘的尖峰負載來計算群組的建議目標大小。最近 10 分鐘稱為穩定期。
這個 10 分鐘的穩定期看似是縮減規模時發生延遲,但實際上是自動調度資源的內建功能。延遲可確保較小的群組大小足以支援最近 10 分鐘的尖峰負載。
相關規範
- 自動調度資源功能僅適用於代管執行個體群組,而不支援非代管執行個體群組。
- 如果主動式執行個體重新分配功能已停用,自動調度資源功能將不適用於代管執行個體群組。
請勿將 Compute Engine 自動調度資源功能用於由 Google Kubernetes Engine 所擁有的代管執行個體群組。針對 Google Kubernetes Engine 群組,請改為使用叢集自動調度資源功能。
如果您不確定群組是否屬於 Google Kubernetes Engine 叢集,請查看代管執行個體群組名稱中是否有
gke
前置字串,例如gke-test-1-3-default-pool-eadji9ah
。自動配置器可根據多種指標做出資源調度的決定,但只能為每種指標處理一項政策。不過,Stackdriver Monitoring 指標為例外狀況;自動配置器可根據 Stackdriver Monitoring 指標處理最多五項政策。自動配置器會為每項政策計算建議的虛擬機器數,然後根據在群組中提供最多虛擬機器的政策調度資源。
自動調度資源的運作方式與自動修復無關。如果您為群組設定了自動修復功能,但有某個執行個體未通過健康狀態檢查,則自動修復程式會嘗試重新建立執行個體,這會導致群組中的執行個體數量低於您指定的自動調度資源門檻 (
minNumReplicas
)。
事前準備
瞭解代管執行個體群組
自動調度資源是代管執行個體群組的功能,因此在自動調度資源之前,請先瞭解代管執行個體群組的運作方式。
取得代管執行個體群組名稱或網址
對於所有自動調度資源要求,您都必須提供代管執行個體群組的名稱或網址。在
gcloud
指令列工具中,可以使用代管執行個體群組名稱,API 則需要使用完整網址。如要取得現有代管執行個體群組的網址,您可以使用
instance-groups managed list --uri
指令或instance-groups managed list [INSTANCE_GROUP] --uri
指令。舉例來說,以下指令可提供 us-central1-f 區域中某個代管執行個體群組的網址:gcloud compute instance-groups managed list example-group --uri --filter="zone:(us-central1-f)"
gcloud
工具會傳回代管執行個體群組網址:https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/instanceGroupManagers/example-group
如果您目前沒有任何代管執行個體群組,請參閱這篇文章瞭解如何建立代管執行個體群組。
後續步驟
當您準備就緒時,請建立自動配置器以根據 CPU 或負載平衡服務規模或 Stackdriver Monitoring 指標調度資源。