使用 H4D 機器類型和彈性啟動功能建立 MIG

本教學課程說明如何建立使用 H4D 機型的代管執行個體群組 (MIG)。MIG 會建立彈性啟動型 VM,也就是以折扣價運作最多七天的虛擬機器 (VM) 執行個體。以這種方式建立 VM 時,Compute Engine 會將 VM 放在鄰近位置,盡量減少網路延遲時間,因此非常適合執行 HPC 工作負載。

建立 MIG 後,您就能將多個 VM 視為單一實體來管理。MIG 中的每個 VM 都是以執行個體範本為基礎。MIG 會自動管理群組中的 VM,因此提供高可用性和擴充性。如要進一步瞭解 MIG,請參閱「代管執行個體群組」。

如要瞭解 HPC VM 和 HPC 叢集建立選項,請參閱「HPC 叢集建立總覽」。

本教學課程適用於 HPC 工程師、平台管理員和營運人員,以及有興趣建立互連 HPC 執行個體群組,以處理短期工作負載的資料和 MPI 專家。產生的執行個體不會使用自動調度管理工具來管理執行個體或排定工作。

目標

  1. 選用:要求先占配額。
  2. 選用:建立虛擬私有雲網路。
  3. 選用:建立工作負載政策。
  4. 建立執行個體範本。
  5. 建立 MIG 和大小調整要求。
  6. 清除所用資源。

費用

本教學課程使用 Cloud de Confiance by S3NS的計費元件,包括:

您可以使用 Pricing Calculator,根據預測用量估算費用。

事前準備

  1. 安裝 Google Cloud CLI。

  2. 設定 gcloud CLI,使用您的聯合身分。

    詳情請參閱「 使用聯合身分登入 gcloud CLI」。

  3. 執行下列指令,初始化 gcloud CLI:

    gcloud init
  4. 建立或選取 Cloud de Confiance 專案。

    選取或建立專案所需的角色

    • 選取專案:選取專案時,不需要具備特定 IAM 角色,只要您在專案中獲派角色,即可選取該專案。
    • 建立專案:如要建立專案,您需要專案建立者角色 (roles/resourcemanager.projectCreator),其中包含 resourcemanager.projects.create 權限。瞭解如何授予角色。
    • 建立 Cloud de Confiance 專案:

      gcloud projects create PROJECT_ID

      將 PROJECT_ID 替換為要建立的專案名稱。 Cloud de Confiance

    • 選取您建立的 Cloud de Confiance 專案:

      gcloud config set project PROJECT_ID

      將 PROJECT_ID 替換為 Cloud de Confiance 專案名稱。

  5. 確認 Cloud de Confiance 專案已啟用計費功能。

  6. 啟用必要的 API (如果尚未啟用):

    啟用 API 所需的角色

    如要啟用 API,您必須具備 serviceusage.services.enable 權限。如果您建立了專案,可能已透過「擁有者」角色 (roles/owner) 取得這項權限。否則,您可以透過「服務使用管理員」角色 (roles/serviceusage.serviceUsageAdmin) 取得這項權限。瞭解如何授予角色。

    gcloud services enable compute.googleapis.com
  7. 將角色授予使用者帳戶。針對下列各個 IAM 角色執行下列指令一次:roles/compute.instanceAdmin.v1,roles/compute.networkAdmin

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE

    更改下列內容:

選用:要求先占配額

新增至 MIG 的 VM 執行個體會耗用區域配額。 無論可用區為何,VM 執行個體、執行個體群組、CPU 和磁碟配額皆可供所屬區域中的任何 VM 執行個體使用。

使用彈性啟動時,配額可以是標準配額或可搶占配額。

  • 標準配額:如果專案沒有先占配額,且您從未要求先占配額,則執行個體資源會消耗標準配額。
  • 先占配額:要求先占配額可為臨時資源提供獨立配額,有助於提高配額取得率。不過,Compute Engine 在某個區域授予先占配額後,所有適用資源都只會消耗先占配額。如果這個配額用盡,您必須為 VM 資源申請額外的搶占型配額。

如要申請先占配額,請按照「申請調整配額」一文中的步驟操作。

需要的配額類型

如要使用執行個體群組,您必須具備群組所用所有資源的可用配額 (例如 CPU 配額),以及群組資源本身的可用配額。對於 H4D 執行個體,視執行個體使用的機器類型而定,可能會使用下列配額類型:

資源 標準配額 先占配額
CPU CPUS_PER_VM_FAMILY Preemptible CPUs
本機 SSD Local SSD per machine family (GB) Preemptible Local SSDs (GB)

如要建立本教學課程中的資源,可能需要下列額外的區域配額:

  • 區域性 (單一可用區) 代管執行個體群組:Instance group managers 和 Instance groups
  • Google Cloud Hyperdisk:

    • Hyperdisk Balanced Capacity (GB)
    • Hyperdisk Balanced Throughput (MB/s)
    • Hyperdisk Balanced IOPS

選用:建立虛擬私有雲網路

除非您選擇停用,否則每個專案都有預設網路,可用於為執行個體提供網路連線。建立 VM 時,您可以指定虛擬私有雲網路和子網路。如果省略這項設定,系統會使用預設網路和子網路。

H4D 執行個體可設為使用 Cloud RDMA。Cloud RDMA 採用 IRDMA 網路驅動程式,支援 Compute Engine 執行個體之間的遠端直接記憶體存取 (RDMA),可提供低延遲、可靠的訊息傳遞功能。

在本教學課程中:

  • 如要設定 H4D 執行個體使用 Cloud RDMA,請完成本節中的步驟。
  • 如果不想使用 Cloud RDMA,可以略過本節,改用預設網路。

如要設定與執行個體搭配使用的 Falcon 虛擬私有雲網路,您可以按照說明文件中的指示操作,或使用提供的指令碼。

操作指南

如要建立網路,請按照下列操作說明進行:

指令碼

每個執行個體最多可建立九個 gVNIC 網路介面和一個 IRDMA 網路介面。每個網路介面都必須連接到不同的網路。如要建立網路,您可以使用下列指令碼,建立兩個 gVNIC 網路和一個 IRDMA 網路。

  1. 選用:執行指令碼前,請列出 Falcon VPC 網路設定檔,確認有可用的設定檔。
      gcloud compute network-profiles list
      
  2. 複製下列程式碼,並在 Linux 殼層視窗中執行。

      #!/bin/bash
      # Set the number of GVNIC interfaces to create. You can create up to 9.
      NUM_GVNIC=NUMBER_OF_GVNIC
    
      # Create regular VPC networks and subnets for the GVNIC interfaces
        for N in $(seq 0 $(($NUM_GVNIC - 1))); do
          gcloud compute networks create GVNIC_NAME_PREFIX-net-$N \
              --subnet-mode=custom
    
          gcloud compute networks subnets create GVNIC_NAME_PREFIX-sub-$N \
              --network=GVNIC_NAME_PREFIX-net-$N \
              --region=REGION \
              --range=10.$N.0.0/16
    
          gcloud compute firewall-rules create GVNIC_NAME_PREFIX-internal-$N \
              --network=GVNIC_NAME_PREFIX-net-$N \
              --action=ALLOW \
              --rules=tcp:0-65535,udp:0-65535,icmp \
              --source-ranges=10.0.0.0/8
      done
    
      # Create SSH firewall rules
      gcloud compute firewall-rules create GVNIC_NAME_PREFIX-ssh \
          --network=GVNIC_NAME_PREFIX-net-0 \
          --action=ALLOW \
          --rules=tcp:22 \
          --source-ranges=IP_RANGE
    
      # Optional: Create a firewall rule for the external IP address for the
      #  first GVNIC network interface
      gcloud compute firewall-rules create GVNIC_NAME_PREFIX-allow-ping-net-0 \
          --network=GVNIC_NAME_PREFIX-net-0 \
          --action=ALLOW \
          --rules=icmp \
          --source-ranges=IP_RANGE
    
      # Create a Falcon VPC network for the Cloud RDMA network interface
      gcloud compute networks create RDMA_NAME_PREFIX-irdma \
          --network-profile=ZONE-vpc-falcon \
          --subnet-mode custom
    
      # Create a subnet in the Falcon VPC network
      gcloud compute networks subnets create RDMA_NAME_PREFIX-irdma-sub \
          --network=RDMA_NAME_PREFIX-irdma \
          --region=REGION \
          --range=10.2.0.0/16  # offset to avoid overlap with GVNIC subnet ranges
      

    更改下列內容:

    • NUMBER_OF_GVNIC:要建立的 GVNIC 介面數量。請指定介於 1 至 9 之間的數字。
    • GVNIC_NAME_PREFIX:用於一般虛擬私有雲網路和子網路的名稱前置字元,這些網路和子網路使用 GVNIC NIC 類型。
    • REGION:要建立網路的區域。建立 Falcon 虛擬私有雲網路時,這必須對應至為 --network-profile 旗標指定的可用區。舉例來說,如果您將可用區指定為 europe-west4-b,則區域為 europe-west4。
    • IP_RANGE:虛擬私有雲網路外部的 IP 位址範圍,用於 SSH 防火牆規則。建議您指定需要允許存取的特定 IP 位址範圍,而非所有 IPv4 或 IPv6 來源。請勿使用 0.0.0.0/0 或 ::/0 做為來源範圍,因為這樣會允許來自所有 IPv4 或 IPv6 來源的流量,包括 Cloud de Confiance by S3NS以外的來源。
    • RDMA_NAME_PREFIX:用於虛擬私有雲網路和子網路的名稱前置字元,這些網路和子網路使用 IRDMA NIC 類型。
    • ZONE:要建立網路和運算執行個體的可用區。使用 us-central1-a 或 europe-west4-b。
  3. 選用:如要確認虛擬私有雲網路資源是否建立成功,請在 Cloud de Confiance 控制台中檢查網路設定:

    1. 前往 Cloud de Confiance 控制台的「VPC Networks」(虛擬私有雲網路) 頁面。

      前往虛擬私有雲網路

    2. 在清單中搜尋您在上一個步驟建立的網路。
    3. 如要查看子網路、防火牆規則和其他網路設定,請按一下網路名稱。

選用:建立工作負載政策

如要讓 Compute Engine 將 VM 執行個體放在單一區塊或相鄰區塊,請建立工作負載政策來指定執行個體配置。不過,如果您希望 Compute Engine 將執行個體放在特定區塊,請略過這個步驟,並在建立執行個體範本時,於預留項目相似度中提供區塊名稱。

如要建立工作負載政策,請選取下列任一選項:

gcloud

如要建立工作負載政策,請使用 gcloud compute resource-policies create workload-policy 指令。

  • 如要盡量配置 VM,請在指令中指定 --type=high-throughput 旗標:

    gcloud compute resource-policies create workload-policy WORKLOAD_POLICY_NAME \
        --type=high-throughput \
        --region=REGION
    
  • 如要嚴格共置 VM,請在指令中指定 --max-topology-distance 和 --type=high-throughput 旗標:

    gcloud compute resource-policies create workload-policy WORKLOAD_POLICY_NAME \
        --type=high-throughput \
        --max-topology-distance=TOPOLOGY_DISTANCE \
        --region=REGION
    

更改下列內容:

  • WORKLOAD_POLICY_NAME:工作負載政策的名稱。
  • TOPOLOGY_DISTANCE:拓撲距離上限。請指定下列其中一個值:
    • 如要將 VM 放在同一個子區塊中,請按照下列步驟操作:SUBBLOCK
    • 如要將 VM 放在同一個區塊中,請按照下列步驟操作:BLOCK
    • 如要將 VM 放在同一個叢集,請按照下列步驟操作: CLUSTER
    注意:如果縮短最大距離,虛擬機可用性可能會降低。詳情請參閱「 拓撲距離上限屬性」。
  • REGION:要建立工作負載政策的區域。指定要建立 MIG 的區域,以及要使用的可用機型。如要瞭解區域和可用區,請參閱「可用的區域和可用區」。

REST

如要建立工作負載政策,請向 resourcePolicies.insert 方法發出 POST 要求。

  • 如要盡可能將 VM 放在一起,請在要求中指定 type 欄位,如下所示:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies
      {
        "name": "WORKLOAD_POLICY_NAME"
        "workloadPolicy": {
          "type": "HIGH_THROUGHPUT"
        }
      }
    
  • 如要嚴格共置 VM,請在要求中指定 maxTopologyDistance 和 type 欄位,如下所示:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies
      {
        "name": "WORKLOAD_POLICY_NAME"
        "workloadPolicy": {
          "type": "HIGH_THROUGHPUT",
          "maxTopologyDistance": "TOPOLOGY_DISTANCE"
        }
      }
    

更改下列內容:

  • PROJECT_ID:專案 ID
  • REGION:要建立工作負載政策的區域。指定要建立 MIG 的區域,以及要使用的可用機型。如要瞭解區域和可用區,請參閱「適用區域及可用區」。
  • WORKLOAD_POLICY_NAME:工作負載政策的名稱。
  • TOPOLOGY_DISTANCE:拓撲距離上限。請指定下列其中一個值:
    • 如要將 VM 放在同一個子區塊中,請執行下列操作:SUBBLOCK
    • 如要將 VM 放在同一個區塊:BLOCK
    • 如要將 VM 放在同一個叢集,請執行下列操作:CLUSTER
    注意:縮短最大距離可能會降低 VM 可用性。詳情請參閱「拓撲距離上限屬性」。

建立執行個體範本

如要使用「彈性啟動」消耗選項,請建立空白 MIG,然後為該 MIG 建立大小調整要求。當要求的容量可用時,Compute Engine 會佈建容量,並在 MIG 中建立執行個體。您最多可取得七天的資源。

如要為 MIG 中的每個執行個體指定執行個體和消耗量屬性,請使用下列任一方法建立執行個體範本:

gcloud

如要建立區域性執行個體範本,請使用 gcloud compute instance-templates create 指令。

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --instance-template-region=REGION \
    --boot-disk-type=hyperdisk-balanced \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    
--network-interface=nic-type=GVNIC, \
      network=GVNIC_NAME_PREFIX-net-0, \
      subnet=GVNIC_NAME_PREFIX-sub-0, \
      stack-type=STACK_TYPE, \
      address=EXTERNAL_IPV4_ADDRESS \
--network-interface=nic-type=GVNIC, \
      network=GVNIC_NAME_PREFIX-net-1, \
      subnet=GVNIC_NAME_PREFIX-sub-1,no-address \
--network-interface=nic-type=IRDMA, \
      network=RDMA_NAME_PREFIX-irdma, \
      subnet=RDMA_NAME_PREFIX-irdma-sub, \
      stack-type=IPV4_ONLY,no-address \
    
    --instance-termination-action=DELETE \
    --max-run-duration=RUN_DURATION \
    --maintenance-policy=TERMINATE \
    --provisioning-model=FLEX_START

更改下列內容:

  • INSTANCE_TEMPLATE_NAME:執行個體範本的名稱。
  • MACHINE_TYPE:執行個體要使用的 H4D 機型。
  • IMAGE_FAMILY:要使用的 OS 映像檔系列。如需支援的作業系統清單,請參閱「支援的作業系統」。
  • IMAGE_PROJECT:OS 映像檔的專案 ID。
  • REGION:要建立執行個體範本的區域。指定要使用的機型所在的區域。
  • DISK_SIZE:開機磁碟大小 (以 GiB 為單位)。
  • GVNIC_NAME_PREFIX:為 gVNIC 介面建立標準虛擬私有雲網路和子網路時,使用的名稱前置字串。

    如果您使用預設網路,請只加入一個 --network-interface 欄位,並將 nic-type 欄位設為 GVNIC。此外,請省略這個網路介面的 network 和 subnetwork 設定。

  • STACK_TYPE:選用:gVNIC 介面要使用的堆疊類型。請指定 IPV4_ONLY 或 IPV4_IPV6。如未指定值,系統預設會使用 IPV4_ONLY。
  • EXTERNAL_IPV4_ADDRESS:選用:要搭配 gVNIC 網路介面使用的靜態外部 IPv4 位址。您必須先預留外部 IPv4 位址。 執行下列其中一個步驟:

    • 請指定子網路中的有效 IPv4 位址。
    • 如果您不希望網路介面具有外部 IP 位址,請使用 no-address 旗標。
    • 如要讓網路介面接收暫時外部 IP 位址,請指定 address=''。

    如要為 GVNIC 網路介面指定外部 IPv6 位址,請改用 --external-ipv6-address 旗標。

  • RDMA_NAME_PREFIX:為 IRDMA 網路介面建立虛擬私有雲網路和子網路時,使用的名稱前置字串。

    如果 H4D 執行個體未搭配使用 Cloud RDMA,請省略 IRDMA 介面的 --network-interface 欄位。

  • RUN_DURATION:要求的執行個體應執行的時間長度。值的格式必須是天數、小時數、分鐘數或秒數,後面分別加上 d、h、m 和 s。例如,指定 30m 代表 30 分鐘,或指定 1d2h3m4s 代表一天兩小時三分四秒。這個值必須介於 10 分鐘至 7 天之間。

REST

如要建立區域執行個體範本,請向 regionInstanceTemplates.insert 方法提出 POST 要求。

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
  "name":"INSTANCE_TEMPLATE_NAME",
  "properties":{
    "disks":[
      {
        "boot":true,
        "initializeParams":{
          "diskSizeGb":"DISK_SIZE",
          "diskType":"hyperdisk-balanced",
          "sourceImage":"projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
        },
        "mode":"READ_WRITE",
        "type":"PERSISTENT"
      }
    ],
    "machineType":"MACHINE_TYPE",
    
        "networkInterfaces": [
        {
          "network": "GVNIC_NAME_PREFIX-net-0",
          "subnetwork": "GVNIC_NAME_PREFIX-sub-0",
          "accessConfigs": [
            {
                "type": "ONE_TO_ONE_NAT",
                "name": "External IP",
                "natIP": "EXTERNAL_IPV4_ADDRESS"
            }
          ],
          "stackType": "IPV4_ONLY",
          "nicType": "GVNIC",
      },
      {
          "network": "GVNIC_NAME_PREFIX-net-1",
          "subnetwork": "GVNIC_NAME_PREFIX-sub-1",
          "stackType": "IPV4_ONLY",
          "nicType": "GVNIC",
      },
      {
          "network": "RDMA_NAME_PREFIX-irdma",
          "subnetwork": "RDMA_NAME_PREFIX-irdma-sub",
          "stackType": "IPV4_ONLY",
          "nicType": "IRDMA",
      }
    ],
,
    "scheduling": {
        "instanceTerminationAction": "DELETE",
        "maxRunDuration": {
          "seconds": RUN_DURATION
        },
        "onHostMaintenance": "TERMINATE",
        "provisioningModel": "FLEX_START"
      }

  }
}

更改下列內容:

  • INSTANCE_TEMPLATE_NAME:執行個體範本的名稱。
  • MACHINE_TYPE:執行個體要使用的機型。指定 H4D 機型。詳情請參閱「H4D 機型」。
  • IMAGE_FAMILY:要使用的 OS 映像檔系列。如需支援的作業系統清單,請參閱「支援的作業系統」。
  • IMAGE_PROJECT:OS 映像檔的專案 ID。
  • REGION:要建立執行個體範本的區域。指定要使用的機器類型所在的區域。 如要瞭解區域,請參閱「區域和可用區」。
  • DISK_SIZE:開機磁碟大小 (以 GiB 為單位)。
  • GVNIC_NAME_PREFIX:為 gVNIC 介面建立標準虛擬私有雲網路和子網路時,使用的名稱前置字串。

    如果您使用的是預設網路,請只加入一個 --network-interface 欄位,並將 nic-type 欄位設為 GVNIC。此外,請省略這個網路介面的 network 和 subnetwork 設定。

  • EXTERNAL_IPV4_ADDRESS:選用:與 gVNIC 網路介面搭配使用的靜態外部 IPv4 位址。您必須預先保留外部 IPv4 位址。

    如要為 GVNIC 網路介面指定外部 IPv6 位址,請改用 --external-ipv6-address 旗標。

  • RDMA_NAME_PREFIX:為 IRDMA 網路介面建立虛擬私有雲網路和子網路時,使用的名稱前置字串。

    如果 H4D 執行個體未使用 Cloud RDMA,請省略 IRDMA 介面的 --network-interface 欄位。

  • RUN_DURATION:要求執行的執行個體應執行的時間長度 (以秒為單位)。值必須介於 600 (600 秒,即 10 分鐘) 和 604800 (604,800 秒,即 7 天) 之間。

建立執行個體範本後,您可以查看範本,瞭解其 ID 並檢查執行個體屬性。

建立 MIG 並提出大小調整要求

如要同時建立所有要求的彈性啟動執行個體,請建立 MIG,然後按照本節說明在 MIG 中建立大小調整要求。

建立 MIG

如要建立 MIG,請選取下列其中一個選項:

gcloud

建立可用區或區域 MIG 的步驟如下:

  • 如要建立可用區 MIG,請使用 instance-groups managed create 指令,如下所示。

        gcloud compute instance-groups managed create MIG_NAME \
            --template=INSTANCE_TEMPLATE_URL \
            --size=0 \
            --default-action-on-vm-failure=do-nothing \
            --workload-policy=WORKLOAD_POLICY_URL \
            --zone=ZONE
        
  • 如要建立區域性 MIG,請使用 instance-groups managed create 指令,如下所示。

        gcloud compute instance-groups managed create MIG_NAME \
            --template=INSTANCE_TEMPLATE_URL \
            --size=0 \
            --default-action-on-vm-failure=do-nothing \
            --zones=ZONE \
            --target-distribution-shape=any-single-zone \
            --instance-redistribution-type=none
        

如要將工作負載政策套用至 MIG,請在指令中加入 --workload-policy 旗標。

REST

建立可用區或區域 MIG 的步驟如下:

  • 如要建立可用區 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"
            },
            "resourcePolicies": {
              "workloadPolicy": "WORKLOAD_POLICY_URL"
            }
          }
         
  • 如要建立區域 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",
              "zones": [
                {
                "zone": "projects/PROJECT_ID/zones/ZONE"
                }
              ]
            },
            "updatePolicy": {
              "instanceRedistributionType": "NONE"
            },
            "instanceLifecyclePolicy": {
              "defaultActionOnFailure": "DO_NOTHING"
            },
            "resourcePolicies": {
              "workloadPolicy": "WORKLOAD_POLICY_URL"
            }
          }
         

如要將工作負載政策套用至 MIG,請在要求主體中加入 resourcePolicies.workloadPolicy 欄位。

建立大小調整要求

如要在 MIG 中建立大小調整要求,請選取下列其中一個選項:

gcloud

建立大小調整要求的步驟如下:

  • 如要在可用區 MIG 中建立大小調整要求,請使用 instance-groups managed resize-requests create 指令,如下所示:

        gcloud compute instance-groups managed resize-requests create MIG_NAME \
            --resize-request=RESIZE_REQUEST_NAME \
            POPULATION_METHOD \
            --zone=ZONE
        
  • 如要在區域 MIG 中建立大小調整要求,請使用 beta instance-groups managed resize-requests create 指令,如下所示:

          gcloud beta compute instance-groups managed resize-requests create MIG_NAME \
              --resize-request=RESIZE_REQUEST_NAME \
              POPULATION_METHOD \
              --region=REGION
          

如要將工作負載政策套用至 MIG,請在指令中加入 --workload-policy 旗標。

REST

在可用區或區域 MIG 中建立大小調整要求,步驟如下:

  • 如要在可用區 MIG 中建立大小調整要求,請向 instanceGroupManagerResizeRequests.insert 方法發出 POST 要求,如下所示:
          POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests
          {
            "name": "RESIZE_REQUEST_NAME",
            POPULATION_METHOD
          }
          
  • 如要在區域性 MIG 中建立大小調整要求,請向 beta.regionInstanceGroupManagerResizeRequests.insert 方法發出 POST 要求,如下所示:
          POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests
          {
            "name": "RESIZE_REQUEST_NAME",
            POPULATION_METHOD
          }
          

如要將工作負載政策套用至 MIG,請在要求主體中加入 resourcePolicies.workloadPolicy 欄位。

清除所用資源

為避免因為本教學課程所用資源,導致系統向 Google Cloud 帳戶收取費用,請刪除含有相關資源的專案,或者保留專案但刪除個別資源。

刪除專案

刪除 Cloud de Confiance 專案:

gcloud projects delete PROJECT_ID

刪除資源

  1. 刪除 MIG 中的大小調整要求。

  2. 刪除 MIG 和執行個體。

  3. 如果在執行個體範本中,磁碟的自動刪除狀態設為 False,則刪除 VM 執行個體時,系統不會自動刪除磁碟。您可以透過下列任一方式刪除磁碟:

    控制台

    1. 前往 Cloud de Confiance 控制台的「Disks」(磁碟) 頁面。

    前往「Disks」(磁碟) 頁面

    1. 選取包含您在本教學課程中建立磁碟的資料列。確認每個磁碟的「In use by」(使用者) 欄都是空白。

    2. 依序點選 「Delete」(刪除) 和「Delete」(刪除) 確認操作。

    gcloud

    使用 gcloud compute disks delete 指令。

    gcloud compute disks delete DISK_NAME \
        --project PROJECT_ID --zone ZONE
    

    更改下列內容:

    • DISK_NAME :要刪除的磁碟名稱
    • PROJECT_ID:磁碟所在專案的 ID
    • ZONE:磁碟的可用區

    REST

    使用 disks.delete 方法刪除磁碟。

    DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME 
    

    更改下列內容:

    • PROJECT_ID:磁碟所在專案的 ID
    • ZONE:磁碟的可用區
    • DISK_NAME :要刪除的磁碟名稱
  4. 刪除網路。

  5. 刪除執行個體範本。

後續步驟