最簡單的自動調度資源方式,是根據執行個體的 CPU 使用率,調度代管執行個體群組 (MIG) 的資源。
您也可以根據負載平衡服務規模、監控指標或排程,自動調度 MIG 資源。
事前準備
- 查看自動調度器限制。
- 瞭解自動調度資源基本概念。
-
如果尚未設定驗證,請先完成設定。
「驗證」是指驗證身分的程序,確認您有權存取 Trusted Cloud by S3NS 服務和 API。如要從本機開發環境執行程式碼或範例,請選取下列任一選項,向 Compute Engine 進行驗證:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Trusted Cloud console to access Trusted Cloud by S3NS services and APIs, you don't need to set up authentication.
gcloud
-
安裝 Google Cloud CLI,然後 使用同盟身分登入 gcloud CLI。 登入後,執行下列指令初始化 Google Cloud CLI:
gcloud init
- Set a default region and zone.
REST
如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。
安裝 Google Cloud CLI,然後 使用同盟身分登入 gcloud CLI。 登入後,執行下列指令初始化 Google Cloud CLI:
gcloud init
詳情請參閱 Trusted Cloud 驗證說明文件中的「Authenticate for using REST」。
根據 CPU 使用率調度資源
您可以依據代管執行個體群組 (MIG) 的平均 CPU 使用率自動調度資源。使用此政策會要求自動配置器收集群組中執行個體的 CPU 使用率,並確定其是否需要調度資源。您也可以設定自動配置器要維持的目標 CPU 使用率,則自動配置器會運作以維持該目標等級。
對自動配置器而言,目標 CPU 使用率等級就等於是執行個體群組內、所有 vCPU 長時間平均使用情況的一部分。如果總 vCPU 的平均使用率超過目標使用率,則自動配置器會新增更多 VM 執行個體。如果總 vCPU 的平均使用率低於目標使用率,則自動配置器會移除執行個體。舉例來說,如果將目標使用率設定在 0.75,自動配置器會將執行個體群組中所有 vCPU 的平均使用率維持在 75%。
您也可以根據預測的 CPU 使用率調度資源。如要瞭解詳情,以及這項功能是否適合您的工作負載,請參閱「根據預測結果調度資源」一文。
啟用根據 CPU 使用率自動調度資源
主控台
前往控制台的「Instance groups」(執行個體群組) 頁面。
如果您有執行個體群組,請選取該群組,然後按一下「Edit」(編輯)。如果您沒有執行個體群組,請按一下 [Create instance group] (建立執行個體群組)。
如果沒有自動調度資源設定,請按一下「Autoscaling」(自動調度資源) 下方的「Configure autoscaling」(設定自動調度資源功能)。
在「Autoscaling mode」(自動調度資源模式) 底下,選取「On: add and remove instances to the group」(開啟:在群組中新增和移除執行個體) 即可啟用自動調度資源功能。
指定您要讓自動配置器在這個群組中建立的執行個體數量下限與上限。
在「Autoscaling signals」(自動調度資源信號) 區段中,如果目前沒有「CPU utilization」(CPU 使用率) 指標,請先新增這個指標:
- 按一下「新增信號」。
- 在「信號類型」下拉式選單中,選取「CPU 使用率」。
- 在「Target CPU utilization」(目標 CPU 使用率) 中輸入您想要的值,系統會將這個值以百分比格式處理。例如,若需 75% 的 CPU 使用率,請輸入
75
。 - 在「Predictive autoscaling」(預測式自動調度資源) 底下,選取「Off」(關閉)。如要進一步瞭解預測式自動調度資源功能,以及這項功能是否適合您的工作負載,請參閱「根據預測結果調度資源」一文。
- 按一下 [完成]。
您可以使用「Initialization period」(初始化期間) ,讓自動配置器知道應用程式初始化所需的時間。指定正確的初始化期間可提升自動配置器的決策品質。舉例來說,向外擴充時,自動配置器會忽略仍在初始化的 VM 資料,因為這些 VM 可能尚未呈現您應用程式的一般使用情形。預設的初始化週期為 60 秒。
按一下 [儲存]。
gcloud
請使用
set-autoscaling
子指令,啟用代管執行個體群組的自動調度資源功能。舉例來說,下列指令會建立目標 CPU 使用率為 60% 的自動配置器。建立自動配置器時,必須使用--target-cpu-utilization
和--max-num-replicas
參數:gcloud compute instance-groups managed set-autoscaling example-managed-instance-group \ --max-num-replicas 20 \ --target-cpu-utilization 0.60 \ --cool-down-period 90
您可以使用
--cool-down-period
標記設定初始化期間,讓自動配置器知道應用程式初始化所需的時間。指定正確的初始化期間可提升自動配置器的決策品質。舉例來說,向外擴充時,自動配置器會忽略仍在初始化的 VM 資料,因為這些 VM 可能尚未呈現您應用程式的一般使用情形。預設的初始化週期為 60 秒。您也可以選擇啟用預測式自動調度資源功能,在預測負載出現前預先擴充資源。如要瞭解預測式自動調度資源是否適合您的工作負載,請參閱「根據預測結果調度資源」一文。
您可以使用
instance-groups managed describe
子指令來驗證是否成功啟用自動調度資源功能,該指令會說明對應的代管執行個體群組,並提供該執行個體群組自動調度資源功能的相關資訊:gcloud compute instance-groups managed describe example-managed-instance-group
如需可用的
gcloud
指令和旗標清單,請參閱gcloud
參考資料。REST
如要建立自動調整器,請使用區域 MIG 的
autoscalers.insert
方法,或區域 MIG 的regionAutoscalers.insert
方法。以下範例會為可用區 MIG 建立自動調度器:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/autoscalers/
要求主體必須包含
name
、target
和autoscalingPolicy
欄位。而autoscalingPolicy
必須定義cpuUtilization
和maxNumReplicas
。您可以使用
coolDownPeriodSec
欄位設定初始化期間,讓自動配置器知道應用程式初始化所需的時間。指定正確的初始化期間可提升自動配置器的決策品質。舉例來說,向外擴充時,自動配置器會忽略仍在初始化的 VM 資料,因為這些 VM 可能尚未呈現您應用程式的一般使用情形。預設的初始化週期為 60 秒。您也可以選擇啟用預測式自動調度資源功能,在預測負載出現前預先擴充資源。如要瞭解預測式自動調度資源是否適合您的工作負載,請參閱「根據預測結果調度資源」一文。
{ "name": "example-autoscaler", "target": "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/instanceGroupManagers/example-managed-instance-group", "autoscalingPolicy": { "maxNumReplicas": 10, "cpuUtilization": { "utilizationTarget": 0.6 }, "coolDownPeriodSec": 90 } }
如要進一步瞭解依據 CPU 使用率來啟用自動調度資源功能的資訊,請完成以下教學課程:對高擴充性的應用程式序使用自動調度資源功能。
自動配置器如何處理繁重的 CPU 使用率
當 CPU 使用率偏高時,如果使用率接近 100%,自動配置器會估計群組可能已嚴重超載。在這種情況下,自動配置器最多可將虛擬機器數量增加 50%。
後續步驟
- 瞭解如何啟用預測式自動調度資源。
- 瞭解如何管理自動調度器。
- 瞭解自動配置器如何做出決策。
- 瞭解如何使用多個自動調度資源信號來調度群組資源。
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-08-08 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-08-08 (世界標準時間)。"],[[["Autoscaling for managed instance groups (MIGs) can be based on the CPU utilization of its instances, allowing for automatic scaling in response to changes in demand."],["In addition to CPU utilization, MIGs can also be scaled based on load balancing serving capacity, monitoring metrics, or predefined schedules."],["Setting the target CPU utilization allows the autoscaler to adjust the number of instances, adding more when utilization exceeds the target and removing instances when it's below the target."],["The initialization period setting is crucial, as it tells the autoscaler how long an application takes to initialize, thereby improving the accuracy of scaling decisions."],["During periods of heavy CPU utilization, when utilization approaches 100%, the autoscaler will increase the number of virtual machines by no more than 50%, to help prevent overloading."]]],[]] -