如果您為工作負載使用單一租戶節點,可以透過節點群組自動調度資源功能,自動管理節點群組的大小。您可以在建立節點群組時設定自動調度資源,也可以在建立後再設定。
自動配置器可協助您自動管理單一租戶節點群組的大小,方法如下:
如果節點群組的容量不足,無法容納另一個虛擬機器 (VM) 執行個體,請增加節點群組的大小。自動調度器擴充節點群組大小後,系統會以透明方式排定 VM。
在有空節點時縮減節點群組大小,避免為未使用的單一用戶群節點付費。
自動調度器在調度節點群組資源時,會考量排定 VM 的必要容量、目標節點的可用容量,以及節點群組的自動調度資源政策。所需容量僅取決於 VM 大小。系統會根據節點大小、已排程的 VM,以及選用的 CPU 超額配置比例,估算可用容量。
下圖顯示:
節點群組自動調度資源功能會擴大調度資源,在沒有空節點的節點群組中部署 VM 時,會將新節點新增至節點群組。
節點群組自動調度器會從單一租戶節點群組中移除空白節點,藉此調度資源。
自動調度器模式
節點群組預設不會啟用自動調整功能。如果未啟用自動配置器,您必須手動管理節點群組的大小。在節點群組上啟用自動配置器後,您可以指定自動配置器同時增加及減少節點群組的大小 (向外擴充及向內擴充),或只增加群組的大小 (只向外擴充)。
擴充和縮減
在這個模式下,節點群組自動調度器會增加 (向外擴充) 和減少 (向內擴充) 節點群組的大小。如要使用這個模式,您必須為節點群組指定大小上限和下限。自動調度器不會將節點群組大小調度至指定上限以上或指定下限以下。
如果 VM 的排程因容量不足而失敗,系統就會觸發擴充作業。如要解決這個問題,請將新節點新增至群組,然後再次嘗試作業。
如果節點在一段時間內保持空白,就會觸發縮減作業。如果 VM 遭到刪除或移出節點群組,就會產生空白節點。如果節點群組的自動調度資源政策允許,系統會在穩定期過後,排定移除空節點。穩定期可確保節點在您需要使用時仍可運作。
僅向外擴充
在這個模式下,自動調度器會因應排程 VM 的要求,增加節點群組的大小,但不會從節點群組中移除空白節點。如果工作負載單調遞增,或需要實體伺服器親和性 (例如 BYOL 工作負載,這類工作負載需要授權位於同一部實體伺服器),Google 建議使用這個模式。
如果節點群組設定了「在節點群組內遷移」維護政策,就必須使用這個模式。
節點群組的大小範圍
啟用自動配置器時,您可以指定節點群組大小的最小值和最大值,設定節點群組的大小範圍。
如果未指定大小下限,自動調整功能會將大小下限設為零 (0)。如要指定大小下限,必須為大於或等於 0 的整數,且小於或等於大小上限。
您必須為節點群組的大小上限指定值。這個值必須是大於或等於 0 且小於或等於 100 的整數,這是單一租戶節點群組允許的最大大小,且這個值必須大於或等於指定的最小值。
如要容納可能超過節點群組大小上限 (100) 的工作負載,請建立多個具有相符相依性標籤的節點群組,例如 workload:in:my-autoscaled-node-groups
。然後使用該親和性標籤排定 VM,並在每個群組上啟用自動調度資源功能,建立動態調度資源的節點群組群組。
可用性
您只能在支援單一用戶群節點的區域使用單一用戶群節點自動調度資源功能。
事前準備
-
如果尚未設定驗證,請先完成設定。
「驗證」是指驗證身分的程序,確認您有權存取 Google Cloud 服務和 API。如要從本機開發環境執行程式碼或範例,請選取下列任一選項,向 Compute Engine 進行驗證:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
安裝 Google Cloud CLI。 安裝完成後,執行下列指令初始化 Google Cloud CLI:
gcloud init
如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
- Set a default region and zone.
REST
如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。
安裝 Google Cloud CLI。 安裝完成後,執行下列指令初始化 Google Cloud CLI:
gcloud init
如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
詳情請參閱 Google Cloud 驗證說明文件中的「Authenticate for using REST」。
啟用節點群組自動調度器
在新節點群組上設定自動調度資源。
gcloud
以下範例說明如何使用
node-groups create
指令,在建立節點群組時啟用自動調度器。如要為現有節點群組新增自動調度器,請使用node-groups update
指令。gcloud compute sole-tenancy node-groups create group-name \ --node-template template-name \ --target-size size \ --maintenance-policy maintenance-policy \ --zone zone \ --autoscaler-mode mode \ --max-nodes max-nodes \ --min-nodes min-nodes
更改下列內容:
group-name
:要建立的節點群組名稱。template-name
:要用來建立節點群組的節點範本名稱。size
:節點群組中的目標初始節點數量。maintenance-policy
:指定 VM 是否會在主機維護事件期間遷移及重新啟動。將其設為下列任一值:default
:VM 即時遷移至新節點。migrate-within-node-group
:VM 會即時遷移至節點群組中的另一個節點。restart-in-place
:VM 因維護事件而終止後,會在同一個節點上重新啟動。
zone
:要建立節點群組的區域。mode
:這個節點群組的自動調度器模式。 設為下列其中一個值:off
:停用自動調度器。on
:啟用擴大和縮減功能。only-scale-out
:僅啟用向外擴充功能。如果節點群組設定為在最少部伺服器上重新啟動代管的 VM,就必須使用這個模式。
max-nodes
:節點群組的大小上限。設為小於或等於 100 且大於或等於min-nodes
的值。min-nodes
:節點群組的最小大小,且必須是小於或等於max-nodes
的整數值。預設值為 0。
REST
以下範例說明如何使用
nodeGroups.insert
指令,在建立節點群組時啟用自動調度器。如要為現有節點群組新增自動調度器,請使用nodeGroups.patch
指令。POST https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/nodeGroups?initialNodeCount=initial-node-count { "name": "group-name", "nodeTemplate": "template-name", "autoscalingPolicy": { "mode": "mode", "min_nodes": min-nodes, "max_nodes": max-nodes } "maintenancePolicy": maintenance-policy }
更改下列內容:
project-id
:要新增具有自動調整程式的節點群組的專案 ID。zone
:要在其中建立新節點群組的可用區。initial-node-count
:建立節點群組時必須提供。這會指定節點群組中的初始節點數量。如果min-nodes
的值大於初始節點計數,節點群組的大小會擴展至min-nodes
的值。group-name
:新節點群組的名稱。template-name
:要用來建立節點群組的節點範本名稱。mode
:這個節點群組的自動調度器模式。 設為下列其中一個值:OFF
:停用自動調度器。ON
:啟用擴大和縮減功能。ONLY_SCALE_OUT
:僅啟用向外擴充功能。如果節點群組設定為在最少部伺服器上重新啟動代管的 VM,就必須使用這個模式。
max-nodes
:節點群組的大小上限。設為小於或等於 100 且大於或等於min-nodes
的值。min-nodes
:節點群組的最小大小,且必須是小於或等於max-nodes
的整數值。預設值為 0。maintenance-policy
:指定 VM 是否會在主機維護事件期間遷移及重新啟動。請將這個值設為下列其中一個值:DEFAULT
:VM 即時遷移至新節點。MIGRATE_WITHIN_NODE_GROUP
:VM 會即時遷移至節點群組中的另一個節點。RESTART_IN_PLACE
:VM 因維護事件而終止後,會在同一個節點上重新啟動。
更新自動配置器設定
如要變更節點群組的自動調度資源設定,請更新自動調度資源模式,或更新節點群組的最小和最大大小。
gcloud
以下範例說明如何使用
node-groups update
指令,變更節點群組自動配置器的模式。gcloud compute sole-tenancy node-groups update name \ --autoscaler-mode mode \ --max-nodes max-nodes \ --min-nodes min-nodes
更改下列內容:
name
:要變更自動調度資源模式的節點群組名稱。mode
:這個節點群組的自動調度器模式。 設為下列其中一個值:off
:停用自動調度器。on
:啟用擴大和縮減功能。only-scale-out
:僅啟用向外擴充功能。如果節點群組已設定為在最少台伺服器上重新啟動代管的 VM,就必須使用這個模式。
max-nodes
:節點群組的大小上限。設為小於或等於 100 且大於或等於min-nodes
的值。min-nodes
:節點群組的最小大小,且必須是小於或等於max-nodes
的整數值。預設值為 0。
REST
下列範例說明如何使用
nodeGroups.patch
指令,變更節點群組自動配置器的模式。PATCH https://compute.googleapis.com/compute/beta/projects/project-id/zones/group-zone/nodeGroups/group-name { "nodeTemplate": "template-name", "autoscalingPolicy": { "mode": "mode", "minSize": min-nodes, "maxSize": max-nodes } }
更改下列內容:
project-id
:包含節點群組的專案 ID,該節點群組的自動配置器模式將會變更。group-zone
:包含節點群組的區域,自動配置器模式會針對該節點群組變更。group-name
:要變更自動調度資源模式的節點群組名稱。template-name
:節點群組的建立來源節點範本名稱。mode
:這個節點群組的自動調度器模式。 請設為下列其中一個值:OFF
:停用自動調度器。ON
:啟用擴大和縮減功能。ONLY_SCALE_OUT
:僅啟用向外擴充功能。如果節點群組是使用「在節點群組內遷移」維護政策設定,就必須使用這個模式。
max-nodes
:節點群組的大小上限。設為小於或等於 100 且大於或等於min-nodes
的值。min-nodes
:節點群組的最小大小,且必須是小於或等於max-nodes
的整數值。預設值為 0。
手動更新自動調度資源的節點群組大小
啟用自動配置器後,系統會自動管理節點群組大小,但您可以在該節點群組上排定或移除 VM,有效手動更新群組大小。
如要手動縮減自動調度資源的節點群組大小,請從節點中刪除 VM,直到節點為空為止。節點為空時,自動配置器會移除空節點,藉此縮減節點群組大小。
如要手動增加自動調度資源的節點群組大小,請將群組的最小大小設為大於目前大小的值。如果群組的大小下限設為大於目前大小的值,自動調度器會將群組大小擴充至新指定的大小下限。
如果節點群組設為僅向外擴充,自動調度器會自動管理群組大小的增量,並停用手動增加群組大小的功能。使用這項設定,您可以從節點中移除 VM,直到節點為空,然後移除空節點,藉此縮減群組大小。
停用自動調度器
如果不再需要使用自動配置器自動管理節點群組大小,或是需要手動管理節點群組大小,請停用自動配置器。
gcloud
gcloud compute sole-tenancy node-groups update name \ --autoscaler-mode OFF
將
name
替換為要移除自動調度資源政策的節點群組名稱。REST
以下範例說明如何使用
nodeGroups.patch
指令,關閉節點群組的自動調整功能。PATCH https://compute.googleapis.com/compute/beta/projects/project-id/zones/group-zone/nodeGroups/group-name { "nodeTemplate": "template-name", "autoscalingPolicy": { "mode": "mode" } }
更改下列內容:
project-id
:包含節點群組的專案 ID,該節點群組的自動配置器模式將會變更。group-zone
:包含節點群組的區域,自動配置器模式會針對該節點群組變更。group-name
:要變更自動調度資源模式的節點群組名稱。template-name
:節點群組的建立來源節點範本名稱。mode
:這個節點群組的自動調度器模式。 設為OFF
即可停用這個節點群組的自動調度器。
查看自動配置器活動
在 Google Cloud 控制台中,查看自動配置器如何調整節點群組的大小。 Google Cloud 控制台會顯示節點群組的目前大小,如果自動配置器正在調整群組大小,您也可以看到節點群組的目標大小。
控制台
前往 Google Cloud 控制台的「單一租戶節點」頁面。
按一下「節點群組」。
查看每個節點群組中的節點數量,如果 Compute Engine 正在調整節點群組的資源配置,您也可以查看目標節點數量。
後續步驟
- 瞭解如何將現有授權的映像檔帶到 Google Cloud。
- 瞭解叢集自動配置器。
- 瞭解代管執行個體群組自動調度器。
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-07-29 (世界標準時間)。
-