本文說明如何建立獨立的 Compute Engine 執行個體,並使用針對 A4X Max 加速器最佳化的機器類型。如要瞭解運算執行個體和叢集建立選項,請參閱「部署選項總覽」頁面。
A4X Max 執行個體類型
Compute Engine 執行個體 (或稱運算執行個體) 是託管於 Google 基礎架構的運算資源,可以是虛擬機器 (VM) 或裸機執行個體。A4X Max 執行個體以裸機執行個體的形式提供,與 VM 執行個體不同,可直接存取底層實體硬體,無需虛擬化。如要進一步瞭解 A4X Max 機器類型,請參閱 Compute Engine 說明文件中的「A4X Max 系列」。
限制
建立獨立的 A4X Max 執行個體時,須遵守下列限制:
- 使用這類機型的執行個體無法享有續用折扣或彈性承諾使用折扣。
- 您只能在特定區域和可用區建立執行個體。
- 您無法使用永久磁碟 (區域或可用區)。只能使用 Google Cloud Hyperdisk。
- 這個機型僅適用於 NVIDIA Grace 平台。
- A4X Max 不支援變更機器類型。如要切換至或切換出這個機器類型,您必須建立新的執行個體。
- 您無法在這個機器類型上執行 Windows 作業系統。如需支援的 Linux 作業系統清單,請參閱 GPU 執行個體支援的作業系統。
- A4X Max 執行個體不支援下列項目:
- 2026 年 2 月 4 日前建立的 Hyperdisk ML 磁碟無法附加至 A4X Max 機器類型。
事前準備
建立 A4X Max 執行個體前,請先完成下列步驟 (如尚未完成):
必要的角色
如要取得建立 Compute 執行個體所需的權限,請要求管理員授予您專案的「Compute 執行個體管理員 (v1)」 (roles/compute.instanceAdmin.v1) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
這個預先定義的角色具備建立運算執行個體所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:
所需權限
如要建立運算執行個體,必須具備下列權限:
-
專案的
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磁碟
A4X Max 基礎知識
A4X Max 叢集會劃分為多個區塊和子區塊,方便大規模執行無阻斷網路作業。預留容量及部署工作負載時,瞭解這項拓撲至關重要。
- A4X Max 執行個體
- A4X Max 執行個體是單一 A4X Max 機型,連接了 4 個 GPU。
- 子模塊
- 子區塊是 A4X Max 容量的基本單位。對於 A4X Max,一個子區塊包含 18 個 A4X Max 執行個體 (72 個 GPU);這些執行個體會形成 NVLink 網域,並使用多節點 NVLink 系統互連。您要套用指定
1x72拓撲的精簡配置政策,建立 A4X Max 子區塊。 - 封鎖
- A4X Max 區塊由 25 個子區塊 (NVLink 網域) 組成,最多可達 450 個 A4X Max 執行個體 (1,800 個 GPU)。子區塊會與導軌對齊,方便有效擴充。每個子區塊都需要緊湊型配置政策。因此,單一 A4X Max 區塊最多可建立 25 個密集配置政策。
下表列出 A4X Max 執行個體支援的拓撲選項:
拓撲 (gpuTopology) |
GPU 數量 | 執行個體數量 |
|---|---|---|
1x72 |
72 | 18 |
總覽
使用 A4X Max 機器類型建立執行個體時,請按照下列步驟操作:
建立虛擬私有雲網路
如要為 A4X Max 機型設定網路,請為下列網路介面建立兩個虛擬私有雲網路:
- 1 個一般虛擬私有雲網路,其中包含兩個子網路,用於 IDPF 網路介面 (NIC)。這些位址用於主機間的通訊。
- 建立多個 A4X Max 子區塊時,請為 CX-8 NIC 建立 1 個具有 RoCE 網路設定檔的虛擬私有雲網路。RoCE VPC 網路使用名為
default-subnet-1-RDMA_NAME_PREFIX-net的單一子網路,該子網路會自動提供,且所有八個 CX-8 NIC 都會使用這個子網路。這些 NIC 使用 RDMA over Converged Ethernet (RoCE),提供高頻寬、低延遲的通訊,對於擴展至多個 A4X Max 子區塊至關重要。如果是單一 A4X Max 子區塊,您可以略過這個 VPC 網路,因為在單一子區塊中,GPU 對 GPU 的直接通訊是由多節點 NVLink 處理。
如要進一步瞭解 NIC 配置,請參閱「查看網路頻寬和 NIC 配置」。
您可以按照操作說明手動建立網路,也可以使用提供的指令碼自動建立網路。
操作指南
如要建立網路,請按照下列操作說明進行:
- 如要為 gVNIC 建立一般虛擬私有雲網路,請參閱「建立及管理虛擬私有雲網路」。
- 如要建立 RoCE 虛擬私有雲網路,請參閱「為 RDMA NIC 建立虛擬私有雲網路」。
對於這些虛擬私有雲網路,建議您將最大傳輸單元 (MTU) 設為較大的值。如果是 A4X Max 機型,建議的 MTU 為 8896 位元組。
如要查看其他 GPU 機型的建議 MTU 設定,請參閱「GPU 機型的 MTU 設定」。
指令碼
如要建立網路,請按照下列步驟操作。
對於這些虛擬私有雲網路,建議您將最大傳輸單元 (MTU) 設為較大的值。如果是 A4X Max 機型,建議的 MTU 為 8896 位元組。
如要查看其他 GPU 機型的建議 MTU 設定,請參閱「GPU 機型的 MTU 設定」。
請使用下列指令碼,為 IDPF NIC 建立一般 VPC 網路。
#!/bin/bash # Create regular VPC network for the IDPF NICs gcloud compute networks create IDPF_NETWORK_PREFIX-net \ --subnet-mode=custom \ --mtu=8896 \ --enable-ula-internal-ipv6 # Create subnets for the IDPF NICs for N in $(seq 0 1); do gcloud compute networks subnets create IDPF_NETWORK_PREFIX-$N \ --network=IDPF_NETWORK_PREFIX-net \ --region=REGION \ --stack-type=IPV6_ONLY \ --ipv6-access-type=INTERNAL done gcloud compute firewall-rules create IDPF_NETWORK_PREFIX-internal \ --network=IDPF_NETWORK_PREFIX-net \ --action=ALLOW \ --rules=tcp:0-65535,udp:0-65535,58 \ --source-ranges=IP_RANGE如需多個 A4X Max 子區塊,請使用下列指令碼,為每個 A4X Max 執行個體上的四個 CX-8 NIC 建立 RoCE VPC 網路和子網路。
#!/bin/bash # List and make sure network profiles exist in the machine type's zone gcloud compute network-profiles list --filter "location.name=ZONE" # Create network for RDMA NICs gcloud compute networks create RDMA_NAME_PREFIX-net \ --network-profile=ZONE-vpc-roce-metal \ --subnet-mode custom \ --mtu=8896 # For RoCE VPC networks for bare metal instances, a single subnet named # default-subnet-1-RDMA_NAME_PREFIX-net is automatically provided. # For more details, see https://cloud.google.com/vpc/docs/rdma-network-profiles.更改下列內容:
IDPF_NETWORK_PREFIX:用於 IDPF NIC 的一般 VPC 網路和子網路的自訂名稱前置字串。RDMA_NAME_PREFIX:用於 CX-8 NIC 的 RoCE 虛擬私有雲網路和子網路的自訂名稱前置字元。ZONE:指定要使用的機型所在的可用區域,例如us-central1-a。如需地區相關資訊,請參閱「各個地區和區域的 GPU 供應情形」。REGION:要建立子網路的區域。這個區域必須與指定的可用區相符。舉例來說,如果可用區是us-central1-a,則區域為us-central1。IP_RANGE:用於 SSH 防火牆規則的 IP 範圍。
- 選用:如要確認虛擬私有雲網路資源是否建立成功,請在 Google Cloud 控制台中檢查網路設定:
- 前往 Google Cloud 控制台的「VPC Networks」(虛擬私有雲網路) 頁面。
- 在清單中搜尋您在上一個步驟中建立的網路。
- 如要查看子網路、防火牆規則和其他網路設定,請按一下網路名稱。
建立密集配置政策
如要建立精簡的刊登位置政策,請選取下列任一選項:gcloud
如要建立精簡的放置位置政策,請使用
gcloud beta compute resource-policies create group-placement 指令:
gcloud beta compute resource-policies create group-placement POLICY_NAME \
--collocation=collocated \
--gpu-topology=1x72 \
--region=REGION
更改下列內容:
POLICY_NAME:密集配置政策的名稱。REGION:要建立密集配置政策的區域。指定您要使用的機器類型適用的區域。如要瞭解地區,請參閱「各區域和可用區的 GPU 供應情形」。
REST
如要建立密集配置政策,請對 betaresourcePolicies.insert 方法發出 POST 要求。
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/resourcePolicies
{
"name": "POLICY_NAME",
"groupPlacementPolicy": {
"collocation": "COLLOCATED",
"gpuTopology": "1x72"
}
}
更改下列內容:
PROJECT_ID:您的專案 ID。POLICY_NAME:密集配置政策的名稱。REGION:要建立密集配置政策的區域。指定您要使用的機器類型適用的區域。如要瞭解地區,請參閱「各區域和可用區的 GPU 供應情形」。
建立 A4X Max 執行個體
如要取得 1x72 的 GPU 拓撲,請建立 18 個 A4X Max 執行個體。建立執行個體時,請套用指定 gpuTopology 欄位的緊密配置政策。套用政策後,Compute Engine 會在一個子區塊中建立所有 18 個 A4X Max 執行個體,以使用 NVLink 網域。
如果子區塊沒有 A4X Max 執行個體的容量,建立執行個體的要求就會失敗。
如要建立 A4X Max 執行個體,請選取下列任一選項。
下列指令也會設定執行個體的存取範圍。為簡化權限管理,Google 建議您將執行個體的存取權範圍設為cloud-platform 存取權,然後使用 IAM 角色定義執行個體可存取的服務。詳情請參閱「範圍最佳做法」。gcloud
如要建立 A4X Max 執行個體,請使用
gcloud compute instances create 指令。
gcloud compute instances create INSTANCE_NAME \
--machine-type=a4x-maxgpu-4g-metal \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--boot-disk-type=hyperdisk-balanced \
--boot-disk-size=DISK_SIZE \
--scopes=cloud-platform \
--network-interface=nic-type=IDPF,network=IDPF_NETWORK_PREFIX-net,stack-type=IPV6_ONLY,subnet=IDPF_NETWORK_PREFIX-sub-0 \
--network-interface=nic-type=IDPF,network=IDPF_NETWORK_PREFIX-net,stack-type=IPV6_ONLY,subnet=IDPF_NETWORK_PREFIX-sub-1,no-address \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--reservation-affinity=specific \
--reservation=RESERVATION \
--provisioning-model=RESERVATION_BOUND \
--instance-termination-action=TERMINATION_ACTION \
--maintenance-policy=TERMINATE \
--restart-on-failure \
--resource-policies=POLICY_NAME
更改下列內容:
INSTANCE_NAME:A4X Max 執行個體的名稱。IMAGE_FAMILY:您要使用的 OS 映像檔映像檔系列。 如需支援的作業系統清單,請參閱「作業系統詳細資料」。IMAGE_PROJECT:OS 映像檔的專案 ID。ZONE:您要使用的機器類型所在的可用區。您必須使用與密集配置政策位於相同區域的可用區。 如需地區相關資訊,請參閱「各區域和可用區的 GPU 供應情形」。DISK_SIZE:開機磁碟的大小,單位為 GB。IDPF_NETWORK_PREFIX:建立使用 IDPF NIC 的虛擬私有雲網路和子網路時,您指定的前置字元名稱。RDMA_NAME_PREFIX:建立使用 RDMA NIC 的虛擬私有雲網路和子網路時指定的名稱前置字元。-
RESERVATION:預留項目名稱、區塊或預留項目內的子區塊。如要取得預留名稱或可用區塊,請參閱「查看預留容量」。根據執行個體放置位置的需求,選擇下列其中一個選項:- 如要在任何單一區塊上建立 A4X Max 執行個體:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME - 如要在特定區塊上建立 A4X Max 執行個體,請執行下列操作:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME - 如要在特定子區塊中建立 A4X Max 執行個體,請按照下列步驟操作:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME/reservationSubBlocks/RESERVATION_SUBBLOCK_NAME
- 如要在任何單一區塊上建立 A4X Max 執行個體:
TERMINATION_ACTION:在預訂期間結束時,Compute Engine 是要停止 (STOP) 還是刪除 (DELETE) A4X Max 執行個體。POLICY_NAME:密集配置政策的名稱。
REST
如要建立 A4X Max 執行個體,請對
instances.insert 方法發出 POST 要求。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
"machineType": "projects/PROJECT_ID/zones/ZONE/machineTypes/a4x-maxgpu-4g-metal",
"name": "INSTANCE_NAME",
"disks":[
{
"boot":true,
"initializeParams":{
"diskSizeGb": "DISK_SIZE",
"diskType": "hyperdisk-balanced",
"sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
},
"mode": "READ_WRITE",
"type": "PERSISTENT"
}
],
"serviceAccounts": [
{
"email": "default",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
}
],
"networkInterfaces": [
{
"accessConfigs": [
{
"name": "external-nat",
"type": "ONE_TO_ONE_NAT"
}
],
"network": "projects/NETWORK_PROJECT_ID/global/networks/IDPF_NETWORK_PREFIX-net",
"nicType": "IDPF",
"stackType": "IPV6_ONLY",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/IDPF_NETWORK_PREFIX-sub-0"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/IDPF_NETWORK_PREFIX-net",
"nicType": "IDPF",
"stackType": "IPV6_ONLY",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/IDPF_NETWORK_PREFIX-sub-1"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
}
],
"reservationAffinity":{
"consumeReservationType": "SPECIFIC_RESERVATION",
"key": "compute.googleapis.com/reservation-name",
"values":[
"RESERVATION"
]
},
"scheduling":{
"provisioningModel": "RESERVATION_BOUND",
"instanceTerminationAction": "TERMINATION_ACTION",
"onHostMaintenance": "TERMINATE",
"automaticRestart": true
},
"resourcePolicies": [
"projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
]
}
更改下列內容:
PROJECT_ID:您要在當中建立 A4X Max 執行個體的專案 ID。ZONE:您要使用的機器類型所在的可用區。您必須使用與密集配置政策位於相同區域的可用區。 如需地區相關資訊,請參閱「各區域和可用區的 GPU 供應情形」。INSTANCE_NAME:A4X Max 執行個體的名稱。DISK_SIZE:開機磁碟的大小,單位為 GB。IMAGE_PROJECT:OS 映像檔的專案 ID。IMAGE_FAMILY:您要使用的 OS 映像檔映像檔系列。 如需支援的作業系統清單,請參閱「作業系統詳細資料」。NETWORK_PROJECT_ID:網路的專案 ID。IDPF_NETWORK_PREFIX:建立使用 IDPF NIC 的虛擬私有雲網路和子網路時指定的名稱前置字元。REGION:子網路的區域。RDMA_NAME_PREFIX:建立使用 RDMA NIC 的虛擬私有雲網路和子網路時指定的名稱前置字元。-
RESERVATION:預留項目名稱、區塊或預留項目內的子區塊。如要取得預留名稱或可用區塊,請參閱「查看預留容量」。根據執行個體放置位置的需求,選擇下列其中一個選項:- 如要在任何單一區塊上建立 A4X Max 執行個體:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME - 如要在特定區塊上建立 A4X Max 執行個體,請執行下列操作:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME - 如要在特定子區塊中建立 A4X Max 執行個體,請按照下列步驟操作:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME/reservationSubBlocks/RESERVATION_SUBBLOCK_NAME
- 如要在任何單一區塊上建立 A4X Max 執行個體:
TERMINATION_ACTION:在預訂期間結束時,Compute Engine 是要停止 (STOP) 還是刪除 (DELETE) A4X Max 執行個體。PROJECT_ID:精簡放置政策的專案 ID。REGION:密集配置政策的區域。POLICY_NAME:密集配置政策的名稱。