本文說明如何大量建立大量相同且彼此獨立的高效能運算 (HPC) 虛擬機器 (VM) 執行個體。執行個體使用 H4D 機器類型,並在預留的容量區塊上執行。
如要進一步瞭解如何大量建立 VM,請參閱「關於大量建立 VM」。如要大量建立不使用保留項目的執行個體,以提升叢集管理功能,請參閱大量建立 VM。
如要瞭解如何以其他方式建立緊密耦合的 H4D VM 大型叢集,請參閱「建立高效能運算叢集總覽」頁面。
事前準備
選擇用量選項:如要大量建立運算執行個體,並啟用進階叢集管理功能,您可以選擇「日曆」模式中的「未來預訂」或搶占型 VM。
如果您選擇使用 Spot VM,VM 可能不會緊密共置。此外,系統會視需要先占 Spot VM,且 Spot VM 不符合管理 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 驗證說明文件中的「使用 REST 進行驗證」。
必要的角色
如要取得大量建立 VM 的權限,請要求管理員在專案中授予您下列 IAM 角色:
- Compute 執行個體管理員 (v1) (
roles/compute.instanceAdmin.v1) -
Compute 網路管理員 (
roles/compute.networkAdmin)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
這些預先定義的角色具備大量建立 VM 所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:
所需權限
如要大量建立 VM,您必須具備下列權限:
-
專案的
compute.instances.create -
如要使用自訂映像檔建立 VM:
compute.images.useReadOnly在映像檔上 -
如要使用快照建立 VM:
compute.snapshots.useReadOnly快照 -
如要使用執行個體範本建立 VM,請按照下列步驟操作:
compute.instanceTemplates.useReadOnly在執行個體範本上 -
如要為 VM 指定子網路:
compute.subnetworks.use專案或所選子網路的 -
如要為 VM 指定靜態 IP 位址:
專案的
compute.addresses.use -
使用虛擬私有雲網路時,如要將外部 IP 位址指派給 VM:
compute.subnetworks.useExternalIp專案或所選子網路的權限 -
如要將舊版網路指派給 VM,請按照下列步驟操作:
compute.networks.use專案的 -
使用舊版網路時,如要將外部 IP 位址指派給 VM,請在專案中設定
compute.networks.useExternalIp。 -
如要為 VM 設定 VM 執行個體中繼資料,請在專案中執行下列指令:
compute.instances.setMetadata -
如要為 VM 設定標記,請按照下列步驟操作:
compute.instances.setTags在 VM 上 -
如要為 VM 設定標籤,請按照下列步驟操作:
compute.instances.setLabels在 VM 上 -
如要設定 VM 使用的服務帳戶:
compute.instances.setServiceAccount在 VM 上 -
為 VM 建立新磁碟:
專案的
compute.disks.create -
如要以唯讀或讀寫模式附加現有磁碟:
磁碟的
compute.disks.use -
如要以唯讀模式附加現有磁碟:
compute.disks.useReadOnly磁碟的
總覽
使用 H4D 機器類型大量建立 HPC 執行個體,包括下列步驟:
- 選用:建立虛擬私有雲網路。
- 選用:如果不是在同一個區塊或子區塊中建立運算執行個體,請建立放置位置政策。
- 大量建立 H4D 執行個體。
選用:建立虛擬私有雲網路
建立運算執行個體時,您可以指定虛擬私有雲網路和子網路。如果省略這項設定,系統會使用預設的網路和子網路。
- 如要將 MIG 中的 H4D 執行個體設為使用 Cloud RDMA,請完成本節中的步驟。
- 如果您不想使用 Cloud RDMA,可以略過本節,改用預設網路。
如要在 H4D 執行個體上使用 Cloud RDMA,您必須設定至少兩個網路,每個網路各對應一種網路介面 (NIC):
- NIC 類型
GVNIC:使用gve驅動程式處理 TCP/IP 和網際網路流量,以進行一般的 VM 對 VM 和 VM 對網際網路通訊。 - NIC 類型
IRDMA:使用 IDPF/iRDMA 驅動程式,在執行個體之間建立 Cloud RDMA 網路。
使用 Cloud RDMA 的執行個體只能有一個
IRDMA介面。您最多可以新增八個額外的GVNIC網路介面,每個執行個體總共可有 10 個 vNIC。如要設定與執行個體搭配使用的 Falcon 虛擬私有雲網路,您可以按照文件中的操作說明,或使用提供的指令碼。
操作指南
如要建立網路,請按照下列操作說明進行:
如要為
GVNIC網路介面建立主機網路,請參閱「建立及管理虛擬私有雲網路」。如果您只設定一個
GVNIC網路介面,可以使用預設虛擬私有雲網路,以及與執行個體位於相同區域的自動子網路。如要為
IRDMA網路介面建立網路,請參閱「使用 Falcon 虛擬私有雲網路設定檔建立虛擬私有雲網路」。Falcon 虛擬私有雲網路的最大傳輸單位 (MTU) 預設值為8896。
指令碼
每個執行個體最多可建立九個 gVNIC 網路介面和一個 IRDMA 網路介面。每個網路介面都必須連接到不同的網路。如要建立網路,可以使用下列指令碼,為 gVNIC 建立兩個網路,並為 IRDMA 建立一個網路。
- 選用:執行指令碼前,請列出 Falcon VPC 網路設定檔,確認有可用的設定檔。
gcloud compute network-profiles list
複製下列程式碼,並在 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 來源的流量,包括 Google Cloud以外的來源。RDMA_NAME_PREFIX:用於虛擬私有雲網路和子網路的名稱前置字元,這些網路和子網路使用 IRDMA NIC 類型。ZONE:要建立網路和運算執行個體的區域。使用us-central1-a或europe-west4-b。
選用:如要確認虛擬私有雲網路資源是否建立成功,請在 Google Cloud 控制台中檢查網路設定:
- 前往 Google Cloud 控制台的「VPC Networks」(虛擬私有雲網路) 頁面。
- 在清單中搜尋您在上一個步驟中建立的網路。
- 如要查看子網路、防火牆規則和其他網路設定,請按一下網路名稱。
選用:建立配置政策
您可以建立密集配置政策來指定 VM 配置。將密集配置政策套用至 VM 時,Compute Engine 會盡可能建立彼此距離最近的 VM。如果您的應用程式對延遲時間很敏感,且希望 VM 之間的位置較接近 (達到最密集狀態),請在建立密集放置群組政策時,指定
如要建立精簡配置政策,請選取下列任一選項:maxDistance欄位 (預先發布)。maxDistance值越低,VM 的配置距離就越近,但有些 VM 可能無法建立。gcloud
如要建立精簡的放置位置政策,請使用
gcloud beta compute resource-policies create group-placement指令:gcloud beta compute resource-policies create group-placement POLICY_NAME \ --collocation=collocated \ --max-distance=MAX_DISTANCE \ --region=REGION更改下列內容:
REST
如要建立密集配置政策,請對 Beta 版
resourcePolicies.insert方法發出POST要求。在要求主體中,加入設為COLLOCATED的collocation欄位,以及maxDistance欄位。POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "POLICY_NAME", "groupPlacementPolicy": { "collocation": "COLLOCATED", "maxDistance": MAX_DISTANCE } }更改下列內容:
大量建立 VM 執行個體
本節中的操作說明說明如何大量建立 H4D VM。
使用 Cloud RDMA 建立 H4D 執行個體前,請先詳閱下列限制:
- 如果執行個體有 Cloud RDMA 網路介面,就無法在主機維護事件期間使用即時遷移功能。您必須將執行個體設為在維護事件期間終止。
- gVNIC 網路介面只能有一個 IPv6 位址 (內部或外部),不能同時有兩個。
使用 IRDMA 網路介面和 Falcon 虛擬私有雲網路時,只能使用 IPv4 位址。
gcloud
如要大量建立 VM,請使用
gcloud compute instances create指令。您需要指定的參數取決於這項部署作業使用的耗用量選項。選取與用量選項佈建模式對應的分頁標籤。
取決於預留項目
請先執行下列
gcloud compute instances create指令。gcloud compute instances bulk create \ --name-pattern=NAME_PATTERN \ --count=COUNT \ --machine-type=MACHINE_TYPE \ --image-family=IMAGE_FAMILY \ --image=project= IMAGE_PROJECT \ --instance-termination=action=DELETE \ --maintenance-policy=TERMINATE \ --region=REGION \ --boot-disk-type=hyperdisk-balanced \ --boot-disk-size=DISK_SIZE操作步驟如下:
更改下列內容:
NAME_PATTERN:執行個體的名稱模式。舉例來說,使用vm-#名稱模式會產生vm-1和vm-2等名稱的執行個體,最多可達--count旗標指定的數量。COUNT:要建立的執行個體數量。MACHINE_TYPE:執行個體使用的機器類型。使用其中一種 H4D 機器類型,例如h4d-highmem-192-lssd。IMAGE_FAMILY:您要使用的 OS 映像檔映像檔系列,例如rocky-linux-9-optimized-gcp。如需支援的 OS 映像檔清單,請參閱「支援的作業系統」。選擇支援 IRDMA 介面的 OS 映像檔版本。
IMAGE_PROJECT:OS 映像檔的專案 ID,例如rocky-linux-cloud。REGION:指定要使用的機器類型所在的地區,例如europe-west4。如要瞭解可用地區,請參閱「可用地區與區域」。DISK_SIZE:選用:開機磁碟大小 (以 GiB 為單位)。值必須為整數。
選用:如果您選擇使用密集配置政策,請加入
--resource-policies旗標:--resource-policies=POLICY_NAME將 POLICY_NAME 替換為精簡放置政策的名稱。
如要指定預留項目,請採取下列任一做法:
-
如果您使用配置政策,或 VM 可放置在預訂區塊的任何位置,請在指令中加入下列標記:
--provisioning-model=RESERVATION_BOUND \ --reservation-affinity=specific \ --reservation=RESERVATION_NAME \將 RESERVATION_NAME 替換為預訂名稱,例如
h4d-highmem-exfr-prod。 -
如果您未使用緊密放置政策,且希望將執行個體放置在特定區塊中,請在指令中加入下列標記:
--provisioning-model=RESERVATION_BOUND \ --reservation-affinity=specific \ --reservation=<RESERVATION_BLOCK_NAME \將 RESERVATION_BLOCK_NAME 替換為預訂中的區塊名稱,例如
h4d-highmem-exfr-prod/reservationBlocks/h4d-highmem-exfr-prod-block-1。
如要查看預訂名稱或可用的預訂時段,請參閱「查看容量」。
-
-
選用:如要設定執行個體使用 Cloud RDMA,請在指令中加入類似下列的標記。這個範例會設定兩個 GVNIC 網路介面和一個 IRDMA 網路介面:
--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 \更改下列內容:
GVNIC_NAME_PREFIX:您為 GVNIC 介面建立虛擬私有雲網路和子網路時使用的名稱前置字元。對於第一個 gVNIC 網路介面,您可以省略
network和subnet旗標,改用default網路。STACK_TYPE:選用:GVNIC 網路介面的堆疊類型。STACK_TYPE必須是IPV4_ONLY或IPV4_IPV6。預設值為IPV4_ONLY。EXTERNAL_IPV4_ADDRESS:選用:要與網路介面搭配使用的靜態外部 IPv4 位址。您必須先保留外部 IPv4 位址。 執行下列任一操作:- 從子網路指定有效的 IPv4 位址。
- 如果不想讓網路介面擁有外部 IP 位址,請改用
no-address旗標。 - 如要讓介面接收臨時外部 IP 位址,請指定
address=''。
如要指定外部 IPv6 位址,請改用
--external-ipv6-address標記。RDMA_NAME_PREFIX:建立 IRDMA 介面的虛擬私有雲網路和子網路時使用的名稱前置字元。
- 選用:視需要新增其他旗標,自訂其餘執行個體屬性。
- 執行更改後的指令。
Spot
請先執行下列
gcloud compute instances create指令。gcloud compute instances bulk create \ --name-pattern=NAME_PATTERN \ --count=COUNT \ --machine-type=MACHINE_TYPE \ --image-family=IMAGE_FAMILY \ --image=project= IMAGE_PROJECT \ --region=REGION \ --boot-disk-type=hyperdisk-balanced \ --boot-disk-size=DISK_SIZE \ --provisioning-model=SPOT \ --instance-termination=action=TERMINATION_ACTION操作步驟如下:
更改下列內容:
NAME_PATTERN:執行個體的名稱模式。舉例來說,使用vm-#名稱模式會產生vm-1和vm-2等名稱的執行個體,最多可達--count旗標指定的數量。COUNT:要建立的執行個體數量。MACHINE_TYPE:執行個體使用的機器類型。使用其中一種 H4D 機器類型,例如h4d-highmem-192-lssd。IMAGE_FAMILY:您要使用的 OS 映像檔映像檔系列,例如rocky-linux-9-optimized-gcp。如需支援的 OS 映像檔清單,請參閱「支援的作業系統」。選擇支援 IRDMA 介面的 OS 映像檔版本。
IMAGE_PROJECT:OS 映像檔的專案 ID,例如rocky-linux-cloud。REGION:指定要使用的機器類型所在的地區,例如europe-west4。如要瞭解可用地區,請參閱「可用地區與區域」。DISK_SIZE:選用:開機磁碟大小 (以 GiB 為單位)。值必須為整數。TERMINATION_ACTION:Compute Engine 先占執行個體時採取的動作,可以是STOP(預設) 或DELETE。
-
選用步驟:如果您選擇使用精簡刊登位置政策,請在指令中加入下列旗標:
--resource-policies=POLICY_NAME \請將
POLICY_NAME替換為精簡放置政策的名稱。 -
選用:如要設定執行個體使用 Cloud RDMA,請在指令中加入類似下列的標記。這個範例會設定兩個 GVNIC 網路介面和一個 IRDMA 網路介面:
--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 \更改下列內容:
GVNIC_NAME_PREFIX:您為 GVNIC 介面建立虛擬私有雲網路和子網路時使用的名稱前置字元。對於第一個 gVNIC 網路介面,您可以省略
network和subnet旗標,改用default網路。STACK_TYPE:選用:GVNIC 網路介面的堆疊類型。STACK_TYPE必須是IPV4_ONLY或IPV4_IPV6。預設值為IPV4_ONLY。EXTERNAL_IPV4_ADDRESS:選用:要與網路介面搭配使用的靜態外部 IPv4 位址。您必須先保留外部 IPv4 位址。 執行下列任一操作:- 從子網路指定有效的 IPv4 位址。
- 如果不想讓網路介面擁有外部 IP 位址,請改用
no-address旗標。 - 如要讓介面接收臨時外部 IP 位址,請指定
address=''。
如要指定外部 IPv6 位址,請改用
--external-ipv6-address標記。RDMA_NAME_PREFIX:建立 IRDMA 介面的虛擬私有雲網路和子網路時使用的名稱前置字元。
- 選用:視需要新增其他旗標,自訂其餘執行個體屬性。
- 執行更改後的指令。
REST
如要大量建立 VM 執行個體,請對
instances.bulkInsert方法發出POST要求。您需要指定的參數取決於這項部署作業使用的耗用量選項。選取與用量選項佈建模式對應的分頁標籤。
取決於預留項目
首先,請對
instances.bulkInsert方法發出下列POST要求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert { "namePattern":"NAME_PATTERN", "count":"COUNT", "instanceProperties":{ "machineType":"MACHINE_TYPE", "disks":[ { "boot":true, "initializeParams":{ "diskSizeGb":"DISK_SIZE", "diskType":"hyperdisk-balanced", "sourceImage":"projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY" }, "mode":"READ_WRITE", "type":"PERSISTENT" } ], "scheduling":{ "provisioningModel":"RESERVATION_BOUND", "instanceTerminationAction":"DELETE", "onHostMaintenance": "TERMINATE", "automaticRestart":true } } }操作步驟如下:
更改下列內容:
PROJECT_ID:要在當中建立執行個體的專案 ID。ZONE:指定您要使用的機器類型所在的可用區。如果您使用密集配置政策,請使用與密集配置政策位於相同區域的可用區。如要瞭解 H4D 機器類型適用的地區,請參閱「可用地區與區域」。NAME_PATTERN:執行個體的名稱模式。舉例來說,使用vm-#名稱模式會產生vm-1和vm-2等名稱的執行個體,最多可達count欄位指定的數量。COUNT:要建立的執行個體數量。MACHINE_TYPE:執行個體使用的機器類型。使用其中一種 H4D 機器類型,例如h4d-highmem-192-lssd。DISK_SIZE:開機磁碟的大小,單位為 GiB。IMAGE_PROJECT:OS 映像檔的專案 ID,例如debian-cloud。IMAGE_FAMILY:您要使用的 OS 映像檔系列,例如rocky-linux-9-optimized-gcp。如需支援的 OS 映像檔清單,請參閱「支援的作業系統」。選擇支援 IRDMA 介面的 OS 映像檔版本。
選用:如果您選擇使用精簡版刊登位置政策,請在要求主體中加入
resourcePolicies參數,做為"instanceProperties"參數的一部分。"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ],將 POLICY_NAME 替換為精簡放置政策的名稱。
-
如要指定預留項目,請採取下列任一做法:
-
如果您使用配置政策,或 VM 可放置在預訂區塊的任何位置,請將下列項目新增至要求主體,做為
"instanceProperties"參數的一部分:"reservationAffinity":{ "consumeReservationType":"SPECIFIC_RESERVATION", "key":"compute.googleapis.com/reservation-name", "values":[ "RESERVATION_NAME" ], },將 RESERVATION_NAME 替換為預訂名稱,例如
h4d-highmem-exfr-prod。 -
如果您未使用密集配置政策,或希望將執行個體放置在特定區塊中,請將下列項目新增至要求主體,做為
"instanceProperties"參數的一部分:"reservationAffinity":{ "consumeReservationType":"SPECIFIC_RESERVATION", "key":"compute.googleapis.com/reservation-name", "values":[ "RESERVATION_BLOCK_NAME" ], },將 RESERVATION_BLOCK_NAME 替換為預訂中的區塊名稱,例如
h4d-highmem-exfr-prod/reservationBlocks/h4d-highmem-exfr-prod-block-1。
如要查看預訂名稱或可用的預訂時段,請參閱「查看容量」。
-
如要設定執行個體使用 Cloud RDMA,請在要求主體中加入類似下列的參數區塊,做為
"instanceProperties"參數的一部分。本範例會設定兩個 GVNIC 網路介面和一個 IRDMA 網路介面:"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", } ],更改下列內容:
GVNIC_NAME_PREFIX:您為 GVNIC 介面建立虛擬私有雲網路和子網路時使用的名稱前置字元。如果是 GVNIC 網路介面,您可以省略
network和subnetwork欄位,改用default網路。EXTERNAL_IPV4_ADDRESS:選用:要與網路介面搭配使用的靜態外部 IPv4 位址。您必須先保留外部 IPv4 位址。RDMA_NAME_PREFIX:建立 IRDMA 介面的虛擬私有雲網路和子網路時使用的名稱前置字元。
- 選用:視需要自訂其餘執行個體屬性。
- 提交要求。
Spot
首先,請對
instances.bulkInsert方法發出下列POST要求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert { "namePattern":"NAME_PATTERN", "count":"COUNT", "instanceProperties":{ "machineType":"MACHINE_TYPE", "disks":[ { "boot":true, "initializeParams":{ "diskSizeGb":"DISK_SIZE", "diskType":"hyperdisk-balanced", "sourceImage":"projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY" }, "mode":"READ_WRITE", "type":"PERSISTENT" } ], "scheduling":{ "provisioningModel":"SPOT", "instanceTerminationAction":"TERMINATION_ACTION" } } }操作步驟如下:
更改下列內容:
PROJECT_ID:要在當中建立執行個體的專案 ID。ZONE:指定您要使用的機器類型所在的可用區。如果您使用密集配置政策,請使用與密集配置政策位於相同區域的可用區。如要瞭解 H4D 機器類型適用的地區,請參閱「可用地區與區域」。NAME_PATTERN:執行個體的名稱模式。舉例來說,使用vm-#名稱模式會產生vm-1和vm-2等名稱的執行個體,最多可達count欄位指定的數量。COUNT:要建立的執行個體數量。MACHINE_TYPE:執行個體使用的機器類型。使用其中一種 H4D 機器類型,例如h4d-highmem-192-lssd。DISK_SIZE:開機磁碟的大小,單位為 GiB。IMAGE_PROJECT:OS 映像檔的專案 ID,例如debian-cloud。IMAGE_FAMILY:您要使用的 OS 映像檔系列,例如rocky-linux-9-optimized-gcp。如需支援的 OS 映像檔清單,請參閱「支援的作業系統」。選擇支援 IRDMA 介面的 OS 映像檔版本。TERMINATION_ACTION:Compute Engine 先占執行個體時採取的動作,可以是STOP(預設) 或DELETE。
選用:如果您選擇使用精簡版刊登位置政策,請在
"instanceProperties"參數中加入resourcePolicies參數。"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]如要設定執行個體使用 Cloud RDMA,請在要求主體中加入類似下列的參數區塊,做為
"instanceProperties"參數的一部分。本範例會設定兩個 GVNIC 網路介面和一個 IRDMA 網路介面:"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", } ],更改下列內容:
GVNIC_NAME_PREFIX:您為 GVNIC 介面建立虛擬私有雲網路和子網路時使用的名稱前置字元。如果是 GVNIC 網路介面,您可以省略
network和subnetwork欄位,改用default網路。EXTERNAL_IPV4_ADDRESS:選用:要與網路介面搭配使用的靜態外部 IPv4 位址。您必須先保留外部 IPv4 位址。RDMA_NAME_PREFIX:建立 IRDMA 介面的虛擬私有雲網路和子網路時使用的名稱前置字元。
- 選用:視需要自訂其餘執行個體屬性。
- 提交要求。
後續步驟
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-12-04 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["難以理解","hardToUnderstand","thumb-down"],["資訊或程式碼範例有誤","incorrectInformationOrSampleCode","thumb-down"],["缺少我需要的資訊/範例","missingTheInformationSamplesINeed","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-12-04 (世界標準時間)。"],[],[]] -