本文說明如何在虛擬機器 (VM) 執行個體的代管執行個體群組 (MIG) 中,建立大小調整要求。如要進一步瞭解 MIG 大小調整要求,請參閱「關於 MIG 的大小調整要求」。
建立 MIG 大小調整要求,有助於取得 GPU 等高需求資源,並一次建立所需數量的 VM,達到最佳成本效益。如要建立 MIG 大小調整要求,以便使用 AI Hypercomputer 提供的功能和服務,請改為參閱 AI Hypercomputer 說明文件中的「建立 MIG 和大小調整要求」。
您也可以在 MIG 中使用大量模式,一次建立所有執行個體,達到設定的目標大小。如要進一步瞭解這個選項,請參閱「關於大量模式」。
事前準備
- 如要使用 MIG 大小調整要求,為執行時間不超過七天的工作負載建立彈性啟動型 VM,請確認您有足夠的配額可使用要求的資源。否則,大小調整要求會維持待處理狀態,直到配額充足為止。
-
如果尚未設定驗證,請先完成設定。驗證機制會確認您的身分,以便授予 Google Cloud 服務和 API 的存取權。如要從本機開發環境執行程式碼或範例,您可以選取下列其中一個選項,向 Compute Engine 進行驗證:
請根據您打算如何使用本頁範例,選取對應的分頁標籤:
控制台
使用 Google Cloud 控制台存取 Google Cloud 服務和 API 時,不需要設定驗證機制。
gcloud
-
安裝 Google Cloud CLI,然後 使用聯合身分登入 gcloud CLI。 登入後,執行下列指令來初始化 Google Cloud CLI:
gcloud init
-
- 設定預設區域和可用區。
REST
如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。
安裝 Google Cloud CLI,然後 使用聯合身分登入 gcloud CLI。
詳情請參閱 Google Cloud 驗證說明文件中的「使用 REST 進行驗證」一節。
必要的角色
如要取得建立 MIG 大小調整要求所需的權限,請要求管理員授予您專案的 Compute 執行個體管理員 (v1) (roles/compute.instanceAdmin.v1) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
這個預先定義的角色具備建立 MIG 大小調整要求所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:
所需權限
您必須具備下列權限,才能建立 MIG 大小調整要求:
-
如要建立執行個體範本:
compute.instanceTemplates.create專案 -
如要建立可用區 MIG:
compute.instanceGroupManagers.create專案 -
如要建立 MIG 大小調整要求,請在專案中執行下列操作:
compute.instanceGroupManagers.update
準備 MIG 以處理大小調整要求
如要建立 MIG 大小調整要求,請按照下列各節所述,設定執行個體範本和 MIG。
建立執行個體範本
根據 MIG 大小調整要求的使用案例,使用下列其中一種方法建立執行個體範本:
如要為執行時間不超過 7 天的工作負載建立彈性啟動型 VM,請使用彈性啟動佈建模式建立執行個體範本。
如要透過日曆模式,使用自動建立的未來預留項目建立 VM,請使用預留項目繫結佈建模式建立執行個體範本。
使用彈性啟動佈建模式
如要建立執行個體範本,並設定為建立 MIG 大小調整要求和彈性啟動型 VM,請在範本中指定下列設定:
使用
maxRunDuration和instanceTerminationAction欄位,在 VM 執行時間結束時刪除 VM。在主機維護事件期間停止 VM。
使用彈性啟動佈建模式。
注意:如要執行資料科學或機器學習工作負載,建議在建立執行個體範本時,使用深度學習 VM 映像檔。Deep Learning VM 是一組預先封裝的 VM 映像檔,隨附機器學習框架和基本工具。如要進一步瞭解這些映像檔,請參閱 Deep Learning VM 說明文件中的「選擇映像檔」。
如要建立執行個體範本,請選取下列其中一個選項:
控制台
前往 Google Cloud 控制台的「Instance templates」(執行個體範本) 頁面。
按一下「Create instance template」(建立執行個體範本)。「Create an instance template」(建立執行個體範本) 頁面隨即開啟。
在「Name」(名稱) 欄位中,輸入執行個體範本的名稱。
在「地區」部分,選取下列其中一個選項:
如要建立區域執行個體範本,請選取「Regional (recommended)」(區域 (建議)),然後選取支援 GPU 或 H4D 機型的區域。
如要建立全域執行個體範本,請選取「Global」(全域)。
在「機器設定」部分,指定機型。
在「佈建模式」部分,完成下列步驟:
在「VM provisioning model」(VM 佈建模式) 欄位中,選取「Flex-start」(彈性啟動)。
展開「VM provisioning model advanced settings」(VM 佈建模式進階設定)。
勾選「設定 VM 的時間限制」核取方塊。
如要為使用執行個體範本建立的 VM 設定執行時間長度,請在「Enter number of hours」(輸入時數) 欄位中輸入時數。值必須介於 36 秒 (
0.01) 至 7 天 (168) 之間。
選用:如要變更預設值開機磁碟類型或映像檔,請按一下「Boot disk」(開機磁碟) 區段中的「Change」(變更)。然後按照提示變更開機磁碟。
點選「建立」。
gcloud
如要建立執行個體範本,請使用 instance-templates create 指令,並設定下列旗標:
--instance-termination-action旗標設為DELETE。--maintenance-policy旗標設為TERMINATE。--max-run-duration標記。--provisioning-model旗標設為FLEX_START。
下列範例指令會建立區域性執行個體範本。如要建立全域執行個體範本,請使用相同指令,但不加上 --instance-template-region 旗標。
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--image-project=IMAGE_PROJECT \
--image-family=IMAGE_FAMILY \
--instance-template-region=REGION \
--instance-termination-action=DELETE \
--machine-type=MACHINE_TYPE \
--maintenance-policy=TERMINATE \
--max-run-duration=RUN_DURATION \
--provisioning-model=FLEX_START
更改下列內容:
INSTANCE_TEMPLATE_NAME:要建立的執行個體範本名稱。IMAGE_PROJECT:包含映文件的映文件專案,例如debian-cloud。如要進一步瞭解支援的映像檔專案,請參閱「公開映像檔」。IMAGE_FAMILY:映像檔系列。指定映像檔系列,即可使用未淘汰的最新 OS 映像檔。舉例來說,如果指定debian-12,系統會使用 Debian 12 映像檔系列中的最新版本。如要進一步瞭解如何使用映像檔系列,請參閱「映像檔系列最佳做法」。REGION:要建立執行個體範本的區域。指定支援 GPU 或 H4D 機型的區域。MACHINE_TYPE:彈性啟動型 VM 要使用的機器類型。如果指定 N1 機型,則必須加入--accelerator旗標,定義要附加至 VM 的 GPU 數量和類型。RUN_DURATION:要求的 VM 執行時間長度。值的格式必須是天數、小時數、分鐘數或秒數,後面分別加上d、h、m和s。例如,指定30m代表 30 分鐘,或指定1d2h3m4s代表一天、兩小時、三分鐘和四秒。值必須介於 10 分鐘至 7 天之間。
REST
如要建立執行個體範本,請向下列任一方法發出 POST 要求:
如要建立區域執行個體範本,請使用
regionInstanceTemplates.insert方法如要建立全域執行個體範本,請使用
instanceTemplates.insert方法
在要求主體中,加入下列欄位:
scheduling.instanceTerminationAction欄位設為DELETE。scheduling.maxRunDuration欄位。scheduling.onHostMaintenance欄位設為TERMINATE。scheduling.provisioningModel欄位設為FLEX_START。
下列範例要求會建立區域執行個體範本:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"disks": [
{
"boot": true,
"initializeParams": {
"sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
}
}
],
"machineType": "MACHINE_TYPE",
"networkInterfaces": [
{
"network": "global/networks/default"
}
],
"scheduling": {
"instanceTerminationAction": "DELETE",
"maxRunDuration": {
"seconds": RUN_DURATION
},
"onHostMaintenance": "TERMINATE",
"provisioningModel": "FLEX_START"
}
}
}
更改下列內容:
PROJECT_ID:要建立執行個體範本的專案 ID。REGION:要建立執行個體範本的區域。指定支援 GPU 或 H4D 機型的區域。INSTANCE_TEMPLATE_NAME:要建立的執行個體範本名稱。IMAGE_PROJECT:包含映文件的映文件專案,例如debian-cloud。如要進一步瞭解支援的映像檔專案,請參閱「公開映像檔」。IMAGE:指定下列其中一項:MACHINE_TYPE:彈性啟動型 VM 要使用的機器類型。如果指定 N1 機型,則必須加入guestAccelerators欄位,定義要附加至 VM 的 GPU 數量和類型。RUN_DURATION:要求的 VM 應執行多久時間,以秒為單位。值必須介於600(600 秒,即 10 分鐘) 和604800(604,800 秒,即 7 天) 之間。
如要進一步瞭解如何建立執行個體範本,請參閱「建立執行個體範本」。
使用「取決於預留項目」佈建模式
如要建立執行個體範本,並設定用於 MIG 大小調整要求和使用預留項目,您必須在範本中指定下列項目:
如要使用 A4 或 A3 Ultra 機型,或 H4D 機型,請在要使用的預留項目中指定。
在主機維護事件期間停止 VM。
使用
instanceTerminationAction欄位,在預留期限結束時刪除 VM。使用取決於預留項目的佈建模式。
如要建立執行個體範本,請選取下列其中一個選項:
控制台
前往 Google Cloud 控制台的「Instance templates」(執行個體範本) 頁面。
按一下「Create instance template」(建立執行個體範本)。「Create an instance template」(建立執行個體範本) 頁面隨即開啟。
在「Name」(名稱) 欄位中,輸入執行個體範本的名稱。
在「地區」部分,選取下列其中一個選項:
如要建立區域執行個體範本,請選取「Regional (recommended)」(區域 (建議)),然後選取支援 GPU 或 H4D 機型的區域。
如要建立全域執行個體範本,請選取「Global」(全域)。
在「機器設定」部分,指定機型。
在「佈建模式」部分,完成下列步驟:
展開「VM provisioning model advanced settings」(VM 佈建模式進階設定)。
在「On VM termination」(在 VM 終止時) 清單中,選取「Delete」(刪除)。
選用:如要變更預設值開機磁碟類型或映像檔,請按一下「Boot disk」(開機磁碟) 區段中的「Change」(變更)。然後按照提示變更開機磁碟。
展開「Advanced options」(進階選項) 區段,然後執行下列操作:
展開「管理」部分。
在「Reservations」(預留項目) 部分,選取「Choose a reservation」(選取預留項目),然後點選「Choose reservation」(選取預留項目)。在隨即顯示的窗格中,按照提示選取要使用的預留項目。
點選「建立」。
gcloud
如要建立執行個體範本,請使用 instance-templates create 指令,並設定下列旗標:
--instance-termination-action旗標設為DELETE。--maintenance-policy旗標設為TERMINATE。--provisioning-model旗標設為RESERVATION_BOUND。--reservation-affinity旗標設為specific。--reservation標記。
下列範例指令會建立區域性執行個體範本。如要建立全域執行個體範本,請使用相同指令,但不加上 --instance-template-region 旗標。
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--image-project=IMAGE_PROJECT \
--image-family=IMAGE_FAMILY \
--instance-termination-action=DELETE \
--instance-template-region=REGION \
--machine-type=MACHINE_TYPE \
--maintenance-policy=TERMINATE \
--provisioning-model=RESERVATION_BOUND \
--reservation-affinity=specific \
--reservation=RESERVATION_URL
更改下列內容:
INSTANCE_TEMPLATE_NAME:要建立的執行個體範本名稱。IMAGE_PROJECT:包含映文件的映文件專案,例如debian-cloud。如要進一步瞭解支援的映像檔專案,請參閱「公開映像檔」。IMAGE_FAMILY:映像檔系列。指定映像檔系列,即可使用未淘汰的最新 OS 映像檔。舉例來說,如果指定debian-12,系統會使用 Debian 12 映像檔系列中的最新版本。如要進一步瞭解如何使用映像檔系列,請參閱「映像檔系列最佳做法」。REGION:要建立執行個體範本的區域。指定支援 GPU 或 H4D 機型的區域。MACHINE_TYPE:要使用的預留項目中指定的機器類型。RESERVATION_URL:在日曆模式下,您要使用的未來預留項目自動建立預留項目網址。指定下列其中一個值:如果專案中已有自動建立的預留項目:
RESERVATION_NAME。如果自動建立的預留項目位於其他專案:
projects/PROJECT_ID/reservations/RESERVATION_NAME。
REST
如要建立執行個體範本,請向下列其中一種方法發出 POST 要求:
如要建立區域執行個體範本,請使用
regionInstanceTemplates.insert方法如要建立全域執行個體範本,請使用
instanceTemplates.insert方法
在要求主體中,加入下列欄位:
reservationAffinity.consumeReservationType欄位設為SPECIFIC_RESERVATION。reservationAffinity.key欄位設為compute.googleapis.com/reservation-name。reservationAffinity.values欄位設為自動建立的預留項目網址。scheduling.instanceTerminationAction欄位設為DELETE。scheduling.onHostMaintenance欄位設為TERMINATE。scheduling.provisioningModel欄位設為RESERVATION_BOUND。
舉例來說,如要建立區域執行個體範本,請提出下列要求:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"disks": [
{
"boot": true,
"initializeParams": {
"sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
}
}
],
"machineType": "MACHINE_TYPE",
"networkInterfaces": [
{
"network": "global/networks/default"
}
],
"reservationAffinity": {
"consumeReservationType": "SPECIFIC_RESERVATION",
"key": "compute.googleapis.com/reservation-name",
"values": [
"RESERVATION_URL"
]
},
"scheduling": {
"instanceTerminationAction": "DELETE",
"onHostMaintenance": "TERMINATE",
"provisioningModel": "RESERVATION_BOUND"
}
}
}
更改下列內容:
PROJECT_ID:要建立執行個體範本的專案 ID。REGION:要建立執行個體範本的區域。指定支援 GPU 或 H4D 機型的區域。INSTANCE_TEMPLATE_NAME:要建立的執行個體範本名稱。IMAGE_PROJECT:包含映文件的映文件專案,例如debian-cloud。如要進一步瞭解支援的映像檔專案,請參閱「公開映像檔」。IMAGE:指定下列其中一項:MACHINE_TYPE:要使用的預留項目中指定的機型。RESERVATION_URL:在日曆模式下,您要使用的未來預留項目自動建立預留項目網址。指定下列其中一個值:如果專案中已有自動建立的預留項目:
RESERVATION_NAME如果自動建立的預留項目位於其他專案:
projects/PROJECT_ID/reservations/RESERVATION_NAME
如要進一步瞭解如何建立執行個體範本,請參閱「建立執行個體範本」。
建立或更新 MIG
按照上一節所述建立執行個體範本後,請使用該範本建立 MIG (如下所示),或更新 MIG。此外,您必須執行下列操作,為 MIG 做好準備,以便處理大小調整要求:
將 MIG 的更新類型設為「機會型」(預設)。
如果您已在 MIG 中設定自動調度資源,請刪除自動調度資源設定。
如果您使用的是區域性 MIG,請將目標分配型態設為
ANY_SINGLE_ZONE。
如要建立 MIG,請選取下列任一選項。如要指定工作負載政策,盡可能縮短 VM 之間的網路延遲時間,則必須使用 gcloud CLI 或 REST API。
控制台
前往 Google Cloud 控制台的「Instance groups」(執行個體群組) 頁面。
按一下「Create instance group」(建立執行個體群組)。「Create instance group」(建立執行個體群組) 頁面隨即開啟。
在「Name」(名稱) 欄位中,輸入 MIG 的名稱。
選取執行個體範本前,請先按照下列步驟關閉修復功能:
在「VM instance lifecycle」(VM 執行個體生命週期) 區段,取消勾選「Allow repair of VMs in an alternate zone」(允許在替代可用區修復 VM) 核取方塊。
在「Default action on failure」(失敗時的預設動作) 清單中,選取「No action」(不採取任何動作)。
返回「Instance template」(執行個體範本) 欄位。在「Instance template」(執行個體範本) 清單中,選取您在上一節建立的執行個體範本。如果選取區域執行個體範本,系統會將「Region」(區域) 清單設為範本的區域。
在「Number of instances」(執行個體數量) 欄位中輸入
0。在「Location」(位置) 部分,指定要建立可用區或區域 MIG,如下所示:
如要建立可用區 MIG,請選取「單一可用區」。如要建立區域性 MIG,請選取「Multiple zones」(多可用區)。
選取 MIG 的「區域」和「可用區」。
如要建立區域性 MIG,請按照下列步驟操作:
在「Target distribution shape」(目標分配型態) 欄位中,選取「Any single zone」(任何單一可用區)。
在隨即顯示的對話方塊中,按一下「Disable instance redistribution」(停用執行個體重新分配)。
點選「建立」。
gcloud
使用 instance-groups managed create 指令,並將 --default-action-on-vm-failure 旗標設為 do_nothing。如要建立區域 MIG,則必須一併加入 --target-distribution-shape 旗標 (設為 any-single-zone) 和 --instance-redistribution-type 旗標 (設為 none)。
如要建立可用區 MIG,請執行下列指令:
gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --zone=ZONE \ --default-action-on-vm-failure=do_nothing如要建立區域性 MIG,請執行下列指令:
gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --region=REGION \ --target-distribution-shape=any-single-zone \ --instance-redistribution-type=none \ --default-action-on-vm-failure=do_nothing
更改下列內容:
MIG_NAME:要建立的 MIG 名稱。INSTANCE_TEMPLATE_URL:您在上一節建立的執行個體範本部分網址。如要使用區域性執行個體範本建立 MIG,則只能在範本的區域內建立 MIG。請指定下列其中一個值:區域性執行個體範本:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_NAME全域執行個體範本:
INSTANCE_TEMPLATE_NAME
ZONE:要建立 MIG 的可用區。REGION:要建立 MIG 的區域。
如要將工作負載政策套用至 MIG,請在指令中加入 --workload-policy 旗標。您必須指定與 MIG 位於相同區域的工作負載政策。
REST
如要建立可用區 MIG,請使用
instanceGroupManagers.insert方法傳送POST要求,如下所示:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "instanceLifecyclePolicy": { "defaultActionOnFailure": "DO_NOTHING" } }如要建立區域性 MIG,請使用
regionInstanceGroupManagers.insert方法傳送POST要求,如下所示:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "distributionPolicy": { "targetShape": "ANY_SINGLE_ZONE" }, "updatePolicy": { "instanceRedistributionType": "NONE" }, "instanceLifecyclePolicy": { "defaultActionOnFailure": "DO_NOTHING" } }
更改下列內容:
PROJECT_ID:您在上一節建立的執行個體範本所在的專案 ID。INSTANCE_TEMPLATE_URL:您在上一節建立的執行個體範本部分網址。如要使用區域性執行個體範本建立 MIG,則只能在範本的區域內建立 MIG。請指定下列其中一個值:區域性執行個體範本:
regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_NAME全域執行個體範本:
global/instanceTemplates/INSTANCE_TEMPLATE_NAME
ZONE:要建立 MIG 的可用區。REGION:要建立 MIG 的區域。MIG_NAME:要建立的 MIG 名稱。
如要將工作負載政策套用至 MIG,請在要求主體中加入 workloadPolicy 欄位。您必須指定與 MIG 位於相同區域的工作負載政策。
在 MIG 建立大小調整要求
建立 MIG 大小調整要求前,請務必按照上一節所述準備 MIG。
建立大小調整要求後,如果所有要求的資源都可供使用,MIG 會一次建立要求數量的 VM。VM 會持續運作,直到指定執行時間結束後由 MIG 刪除,或由您刪除。
如要建立大小調整要求,請選取下列其中一個選項:
指定 VM 數量
如要建立大小調整要求,指定一次要新增至 MIG 的 VM 數量,請選取下列其中一個選項。
控制台
前往 Google Cloud 控制台的「Instance groups」(執行個體群組) 頁面。
在「Name」(名稱) 欄中,按一下要建立大小調整要求的 MIG 名稱。MIG 的總覽頁面隨即開啟。
在「Resize requests」(大小調整要求) 列中,按一下 「Edit resize requests」(編輯大小調整要求)。
按一下 「New resize request」(新增大小調整要求)。「New resize requests」(新增大小調整要求) 窗格隨即顯示。
在「Name」(名稱) 欄位中,輸入大小調整要求的名稱。
在「Number of additional instances needed」(額外需要的執行個體數量) 欄位中,輸入要一次新增至 MIG 的 VM 數量。
選用:如果 MIG 的執行個體範本指定了執行時間長度,您可以指定不同的執行時間長度。方法是在「Requested run duration」(要求的執行時間長度) 欄位和「Unit」(單位) 清單中,指定執行時間長度。您必須指定一小時至七天之間的時間長度。
點選「建立」。
gcloud
如要在可用區 MIG 中建立大小調整要求,請使用
instance-groups managed resize-requests create指令。gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE如要在區域 MIG 中建立大小調整要求,請使用
instance-groups managed resize-requests create指令。gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
更改下列內容:
MIG_NAME:已設定要建立大小調整要求的 MIG 名稱。RESIZE_REQUEST_NAME:大小調整要求的名稱,在指定的 MIG 中不得重複。否則,建立大小調整要求會失敗。COUNT:一次新增至 MIG 的 VM 數量。ZONE:MIG 所在的可用區。REGION:MIG 所在的區域。
您也可以採取下列其中一項或兩項做法:
- 如果 MIG 的執行個體範本指定了執行時間長度,您可以指定不同的執行時間長度。方法是在指令中加入
--requested-run-duration旗標。您必須指定 10 分鐘至 7 天的時間長度。
REST
如要在可用區 MIG 中建立大小調整要求,請使用
instanceGroupManagerResizeRequests.insert方法傳送POST要求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }如要在區域性 MIG 中建立大小調整要求,請使用
regionInstanceGroupManagerResizeRequests.insert方法傳送POST要求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
更改下列內容:
PROJECT_ID::指定 MIG 所在的專案 ID。ZONE:MIG 所在的可用區。REGION:MIG 所在的區域。MIG_NAME:設定用來建立大小調整要求的 MIG 名稱。RESIZE_REQUEST_NAME:大小調整要求的名稱,在指定的 MIG 中不得重複。否則,系統會無法建立大小調整要求。COUNT:一次新增至 MIG 的 VM 數量。
您也可以採取下列其中一項或兩項做法:
- 如果 MIG 的執行個體範本指定了執行時間長度,您可以指定不同的執行時間長度。方法是在要求主體中加入
requestedRunDuration欄位。您必須指定時間長度 (以秒為單位),介於 10 分鐘至 7 天之間。
指定 VM 名稱清單
如果工作負載需要特定 VM 名稱,請指定名稱清單來建立 VM。您指定的名稱數量會決定 MIG 一次建立的 VM 數量。
如要透過指定 VM 名稱清單,在 MIG 中建立大小調整要求,請使用 gcloud CLI 或 REST API。
gcloud
如要在 MIG 中建立具有特定 VM 名稱的大小調整要求,請使用 beta gcloud compute instance-groups managed resize-requests create 指令搭配 --instances 旗標:
-
在可用區 MIG 中執行下列指令:
gcloud beta compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --instances=INSTANCE_NAMES \ --zone=ZONE -
在區域性 MIG 中,執行下列指令:
gcloud beta compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --instances=INSTANCE_NAMES \ --region=REGION
更改下列內容:
MIG_NAME:MIG 的名稱。RESIZE_REQUEST_NAME:大小調整要求的名稱,在指定的 MIG 中不得重複。否則,系統會無法建立大小調整要求。INSTANCE_NAMES:以半形逗號分隔的清單,列出要建立的 VM 名稱。例如:instance-1,instance-2,instance-3。ZONE:MIG 所在的可用區。REGION:MIG 所在的區域。
REST
如要在 MIG 中建立具有特定 VM 名稱的大小調整要求,請使用下列其中一種方法:
-
在可用區 MIG 中,使用
beta.instanceGroupManagerResizeRequests.insert方法傳送POST要求:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests
-
在區域性 MIG 中,使用
beta.regionInstanceGroupManagerResizeRequests.insert方法傳送POST要求:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests
舉例來說,如要指定兩個 VM 名稱,請在要求主體中加入下列內容:
{
"name": "RESIZE_REQUEST_NAME",
"instances": [
{
"name": "INSTANCE_NAME_1"
},
{
"name": "INSTANCE_NAME_2"
}
]
}
更改下列內容:
PROJECT_ID:指定 MIG 所在的專案 ID。MIG_NAME:MIG 的名稱。RESIZE_REQUEST_NAME:大小調整要求的名稱,在指定的 MIG 中不得重複。否則,系統會無法建立大小調整要求。INSTANCE_NAME_1、INSTANCE_NAME_2:要建立的 VM 名稱。ZONE:MIG 所在的可用區。REGION:MIG 所在的區域。
後續步驟
瞭解如何查看 MIG 和代管 VM 的相關資訊。