建立含有多項信號的自動調度資源政策時,自動配置器會根據信號調度資源,以在代管執行個體群組 (MIG) 中提供最多虛擬機器 (VM) 執行個體。這可確保隨時都有足夠的 VM 來處理您的應用程式工作負載,並能讓您針對多個潛在瓶頸調度應用程式資源。
如要進一步瞭解不同類型的自動調度資源信號,請參閱自動調度資源政策。
事前準備
- 瞭解自動調度器 基本概念。
-
如果尚未設定驗證,請先完成設定。
「驗證」是指驗證身分的程序,確認您有權存取 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」。
自動調度資源功能如何處理多項信號
自動調度器處理多個信號的方法如下:為每個信號計算建議的 VM 數量,然後挑選會讓 MIG 擁有最多 VM 的信號。
自動調度器可以為每一指標類型處理一項信號,但 Cloud Monitoring 指標和調度時間表例外。您可以為 Cloud Monitoring 指標選擇最多 5 個自動調度資源信號,並為每個 MIG 建立最多 128 個排程。例如,您可以建立一個自動調度器,最多使用 1 個 CPU 使用率信號、1 個負載平衡信號、5 個自訂指標信號,以及 128 個調度排程。
舉例來說,您可以定義具有以下所有信號的自動配置器:
cpuUtilization
:目標為 0.8loadBalancingUtilization
:目標為 0.6customMetricUtilization
:針對指標 1,目標為 1000customMetricUtilization
:針對指標 2,目標為 2000scalingSchedules
- 每週六和週日凌晨 12 點起,至少 24 小時內有 6 部 VM
- 週一至週五上午 9 點起,至少 15 部 VM 須運作 8 小時
在這個範例中,假設自動調度器在測量時,為含有 10 個 VM 的 MIG 測得的平均用量值如下:
- CPU 使用率 0.5
- 0.4 負載平衡使用率
- 指標 1:1100
- 指標 2:2700
自動配置器會使用上述值,根據每項信號計算建議的 VM 數量:
- 根據 CPU 使用率,為 7 個 VM
- 7 根據負載平衡使用率的 VM
- 根據指標 1,為 11 個 VM
- 根據指標 2,為 14 個虛擬機器。
- 根據第一個縮放排程,每週六和週日全天使用 6 部 VM
- 根據第二個縮放排程,每週一至週五上午 9:00 至下午 5:00 會有 15 部 VM
自動調度器會選取可讓 MIG 擁有最多 VM 的信號,並將 MIG 的建議大小設為該值。在這種情況下,如果第二個時間表目前處於啟用狀態,自動調整資源配置功能會將 MIG 大小調整為 15 部 VM,否則會調整為 14 部 VM。
建立具有多項信號的自動配置器
視您使用的 Trusted Cloud 控制台、gcloud CLI 或 REST 為何,具有多項信號的自動配置器建立程序會略有差異。
主控台
前往 Trusted Cloud 控制台的「Instance groups」(執行個體群組) 頁面。
從清單中按一下 MIG 名稱。然後按一下「編輯」。
在編輯頁面的「Autoscaling mode」(自動調度資源模式) 底下,從下拉式選單中選取「On: add and remove instances to the group」(開啟:在群組中新增和移除執行個體),即可開啟自動調度資源功能。
在「Minimum number of instances」(執行個體數量下限) 底下,輸入這個 MIG 的 VM 數量下限。無論這個 MIG 的自動調度資源信號為何,系統一律會保留其大小下限。
在「Maximum number of instances」(執行個體數量上限) 底下,輸入這個 MIG 的虛擬機器數量上限。無論這個 MIG 的自動調度資源信號產生的大小建議為何,一律不得超過其大小上限。
如要新增每個以指標為準的自動調度資源信號,請在「自動調度資源信號」下方點選「新增信號」。
- 如要根據平均 CPU 使用率建立自動調度資源信號,請在「信號類型」下方,從下拉式選單中選取「CPU 使用率」。然後輸入「目標 CPU 使用率」,並按一下「完成」。 詳情請參閱根據 CPU 使用率執行資源調度。
- 如要根據 HTTP 負載平衡服務規模建立自動調度信號,請在「信號類型」下方,從下拉式選單選取「HTTP 負載平衡使用率」。 然後輸入「目標 HTTP 負載平衡使用率」,並按一下「完成」。詳情請參閱根據負載平衡服務規模執行資源調度。
- 如要根據 Cloud Monitoring 指標建立自動調度資源信號,請在「信號類型」下方,從下拉式選單中選取「Cloud Monitoring 指標」。接著填寫剩餘欄位,然後按一下「完成」。詳情請參閱根據 Cloud Monitoring 指標執行資源調度。
如要新增以時間表為準的自動調度資源信號,請展開「自動調度資源時間表」部分,按一下「管理時間表」,然後按一下「建立時間表」。
在新的「建立縮放排程」窗格中,填寫必填欄位,然後按一下「儲存」。然後在「縮放時間表」窗格中,按一下「完成」。詳情請參閱根據時間表執行資源調度。
在「初始化期間」下方,輸入應用程式初始化所需的秒數,讓 VM 完成初始化,自動調度器才會將使用率資料視為可靠。詳情請參閱「初始化期間」一節。
選用:如要啟用向內縮減控制項,請按一下「向內縮減控制項」,然後選取「啟用向內縮減控制項」核取方塊。詳情請參閱縮減控制項。
按一下 [儲存]。
gcloud
如要建立具有多項信號的自動配置器,請使用
set-autoscaling
指令。使用各自的指令列標記傳入多個信號規格。舉例來說,下列指令會建立自動配置器,使用 CPU 使用率、負載平衡服務規模、兩項自訂指標和一項資源調度排程。
--max-num-replicas
和--min-num-replicas
標記會限制 MIG 的大小。gcloud compute instance-groups managed set-autoscaling MIG_NAME \ --target-cpu-utilization=0.8 \ --target-load-balancing-utilization=0.6 \ --custom-metric-utilization metric=PATH_TO_CUSTOM_METRIC_1,utilization-target=1000.0,utilization-target-type=GAUGE \ --custom-metric-utilization metric=PATH_TO_CUSTOM_METRIC_2,utilization-target=2000.0,utilization-target-type=DELTA_PER_SECOND \ --set-schedule=workday-capacity \ --schedule-cron="30 8 * * Mon-Fri" \ --schedule-duration-sec=30600 \ --schedule-min-required-replicas=10 \ --schedule-description="Have at least 10 VMs every Monday through Friday from 8:30 AM to 5 PM UTC" \ --min-num-replicas=1 \ --max-num-replicas=50
更改下列內容:
MIG_NAME
:MIG 的名稱。PATH_TO_CUSTOM_METRIC_1
和PATH_TO_CUSTOM_METRIC_2
:選用:自訂指標的路徑,格式與custom.cloudmonitoring.googleapis.com/path/to/metric1
和custom.cloudmonitoring.googleapis.com/path/to/metric2
類似。詳情請參閱「自訂指標」。
您可以利用自訂指標標記的例外設定,為每個指標類型最多傳遞一個標記 (每個
gcloud
指令)。針對自訂指標,只要重複--custom-metric-utilization
標記,即可在單一指令中提供多項自訂指標。如要進一步瞭解如何為各類自動調整規模訊號設定旗標,請參閱下列頁面:
REST
如要建立自動調整器,請使用區域 MIG 的
autoscalers.insert
方法,或區域 MIG 的regionAutoscalers.insert
方法。舉例來說,下列要求會建立自動配置器,使用 CPU 使用率、負載平衡服務容量、兩項自訂指標和兩項資源調度時間表。
maxNumReplicas
和minNumReplicas
欄位會限制 MIG 的大小。POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/autoscalers { "autoscalingPolicy" : { "cpuUtilization":{ "utilizationTarget": 0.8 }, "loadBalancingUtilization":{ "utilizationTarget": 0.6 }, "customMetricUtilizations":[ { "metric": "PATH_TO_CUSTOM_METRIC_1", "utilizationTarget": 1000, "utilizationTargetType":"GAUGE" }, { "metric": "PATH_TO_CUSTOM_METRIC_2", "utilizationTarget": 2000, "utilizationTargetType": "DELTA_PER_SECOND" } ], "scalingSchedules": { "workday-capacity": { "minRequiredReplicas": 10, "schedule": "30 8 * * Mon-Fri", "durationSec": 30600, "description": "Have at least 10 VMs every Monday through Friday from 8:30 AM to 5 PM UTC" }, "january-30-2030-schedule": { "minRequiredReplicas": 30, "schedule": "0 0 30 1 * 2030", "timeZone": "America/New_York", "durationSec": 86400, "description": "Schedule a minimum of 30 VMs all day for January 30, 2030" } }, "maxNumReplicas": 50, "minNumReplicas": 1 }, "target": "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroupManagers/MIG_NAME", "name": "MIG_NAME" }
更改下列內容:
PROJECT
:您的專案 ID。ZONE
:MIG 所在的可用區。MIG_NAME
:MIG 的名稱。PATH_TO_CUSTOM_METRIC_1
和PATH_TO_CUSTOM_METRIC_2
:選用:自訂指標的路徑,格式與custom.cloudmonitoring.googleapis.com/path/to/metric1
和custom.cloudmonitoring.googleapis.com/path/to/metric2
類似。詳情請參閱「自訂指標」。
如本例所示,您可以在同一個要求中提供多項自訂指標和縮放排程。
如要進一步瞭解如何為各類自動調度訊號設定欄位,請參閱下列頁面:
除非另有註明,否則本頁面中的內容是採用創用 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 (世界標準時間)。"],[[["Autoscaler with multiple signals will scale based on the signal that calculates the highest number of virtual machines (VMs) needed in the managed instance group (MIG)."],["The autoscaler can manage multiple signal types such as CPU utilization, load balancing, custom metrics, and scaling schedules, with limitations on the number of each signal."],["When configuring an autoscaler, you define target values for each signal, and the autoscaler will recommend the number of VMs needed based on current usage and schedule requirements."],["Creating an autoscaler with multiple signals involves setting up the desired signals and their specifications via the Google Cloud console, `gcloud` CLI, or REST API."],["The minimum and maximum size for a MIG is defined and will always be maintained, regardless of the signals that the autoscaler uses."]]],[]] -