本文說明如何建立獨立虛擬機器 (VM) 執行個體,並使用 A3 Edge 加速器最佳化機型。如要進一步瞭解機型,請參閱「A3 Edge」。
如要瞭解其他建立 VM 或叢集的方式,請參閱「總覽」頁面。
限制
建立獨立 A3 Edge VM 時,須遵守下列限制:
- 使用 A3 Edge 機型的執行個體不適用續用折扣和彈性承諾使用折扣。
- A3 Edge 機型僅適用於特定區域和可用區。
- 您無法在採用 A3 Edge 機型的執行個體上使用區域永久磁碟。
- A3 Edge 機型僅適用於 Sapphire Rapids CPU 平台。
- 無法變更 A3 Edge 機器的類型。如要切換至或切換出這個機器類型,您必須建立新的執行個體。
- Windows 作業系統無法在 A3 Edge 機型上運作。
- A3 Edge 機型不支援單一租戶。
事前準備
建立 VM 前,請先完成下列步驟 (如尚未完成):
- 選擇使用模式:您選擇的使用模式會決定如何取得及使用 GPU 資源。詳情請參閱「選擇消耗選項」。
- 取得運算資源:取得運算資源的程序因用量選項而異。如要瞭解如何為所選用量方案取得運算資源,請參閱「運算資源總覽」。
請根據您打算如何使用本頁範例,選取對應的分頁標籤:
控制台
使用 Google Cloud 控制台存取 Google Cloud 服務和 API 時,您不需要設定驗證機制。
gcloud
在 Google Cloud 控制台啟用 Cloud Shell。
Google Cloud 控制台底部會開啟 Cloud Shell 工作階段,並顯示指令列提示。Cloud Shell 是已安裝 Google Cloud CLI 的殼層環境,並已設定適用於您目前專案的值。工作階段可能要幾秒鐘的時間才能初始化。
REST
如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。
安裝 Google Cloud CLI。
若您採用的是外部識別資訊提供者 (IdP),請先使用聯合身分登入 gcloud CLI。
詳情請參閱 Google Cloud 驗證說明文件中的「使用 REST 進行驗證」一節。
必要的角色
如要取得建立 VM 所需的權限,請要求管理員授予您專案的 Compute 執行個體管理員 (v1) (roles/compute.instanceAdmin.v1) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
這個預先定義的角色具備建立 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專案 -
如要在使用舊版網路時,為 VM 指派外部 IP 位址:
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在磁碟上
總覽
建立 A3 Edge 機型執行個體的步驟如下:
建立虛擬私有雲網路
如要為 GPU VM 啟用高效通訊,您必須建立管理網路和一或多個數據網路。管理網路用於外部存取 (例如 SSH) 和大多數一般網路通訊。資料網路用於不同 VM 上的 GPU 之間的高效能通訊,例如遠端直接記憶體存取 (RDMA) 流量。
對於這些虛擬私有雲網路,建議將最大傳輸單位 (MTU) 設為較大的值。MTU 值越高,封包大小越大,封包標頭負擔越小,酬載資料處理量也越高。如要進一步瞭解如何建立虛擬私有雲網路,請參閱「建立及驗證巨型框架 MTU 網路」。
建立管理網路、子網路和防火牆規則
請按照下列步驟設定管理網路:
使用
networks create指令建立管理網路:gcloud compute networks create NETWORK_NAME_PREFIX-mgmt-net \ --project=PROJECT_ID \ --subnet-mode=custom \ --mtu=8244使用
networks subnets create指令建立管理子網路:gcloud compute networks subnets create NETWORK_NAME_PREFIX-mgmt-sub \ --project=PROJECT_ID \ --network=NETWORK_NAME_PREFIX-mgmt-net \ --region=REGION \ --range=192.168.0.0/24使用
firewall-rules create指令建立防火牆規則。為管理網路建立防火牆規則。
gcloud compute firewall-rules create NETWORK_NAME_PREFIX-mgmt-internal \ --project=PROJECT_ID \ --network=NETWORK_NAME_PREFIX-mgmt-net \ --action=ALLOW \ --rules=tcp:0-65535,udp:0-65535,icmp \ --source-ranges=192.168.0.0/16建立
tcp:22防火牆規則,限制哪些來源 IP 位址可透過 SSH 連線至 VM。gcloud compute firewall-rules create NETWORK_NAME_PREFIX-mgmt-external-ssh \ --project=PROJECT_ID \ --network=NETWORK_NAME_PREFIX-mgmt-net \ --action=ALLOW \ --rules=tcp:22 \ --source-ranges=SSH_SOURCE_IP_RANGE建立
icmp防火牆規則,用於檢查網路中的資料傳輸問題。gcloud compute firewall-rules create NETWORK_NAME_PREFIX-mgmt-external-ping \ --project=PROJECT_ID \ --network=NETWORK_NAME_PREFIX-mgmt-net \ --action=ALLOW \ --rules=icmp \ --source-ranges=0.0.0.0/0
更改下列內容:
NETWORK_NAME_PREFIX:虛擬私有雲網路和子網路使用的名稱前置字串。PROJECT_ID:您的專案 ID。REGION:要建立網路的區域。SSH_SOURCE_IP_RANGE:CIDR 格式的 IP 範圍。這會指定哪些來源 IP 位址可以透過 SSH 連線至 VM。
建立數據網路、子網路和防火牆規則
A3 Edge 需要四個數據網路。使用下列指令建立四個數據網路,每個網路都有子網路和防火牆規則。
for N in $(seq 1 4); do
gcloud compute networks create NETWORK_NAME_PREFIX-data-net-$N \
--project=PROJECT_ID \
--subnet-mode=custom \
--mtu=8244
gcloud compute networks subnets create NETWORK_NAME_PREFIX-data-sub-$N \
--project=PROJECT_ID \
--network=NETWORK_NAME_PREFIX-data-net-$N \
--region=REGION \
--range=192.168.$N.0/24
gcloud compute firewall-rules create NETWORK_NAME_PREFIX-data-internal-$N \
--project=PROJECT_ID \
--network=NETWORK_NAME_PREFIX-data-net-$N \
--action=ALLOW \
--rules=tcp:0-65535,udp:0-65535,icmp \
--source-ranges=192.168.0.0/16
done
選用:建立密集配置政策
您可以建立密集配置政策,指定 VM 的配置方式。當您對 VM 套用密集配置政策時,Compute Engine 會盡可能建立彼此靠近的 VM。如果應用程式對延遲時間較為敏感,且需要盡可能提高密集度,請在建立密集配置政策時指定 maxDistance 欄位 (預先發布版)。maxDistance 值越低,VM 彼此會越靠近,但也會增加無法建立部分 VM 的可能性。
gcloud
如要建立密集配置政策,請使用 gcloud compute resource-policies create group-placement 指令:
gcloud compute resource-policies create group-placement POLICY_NAME \
--collocation=collocated \
--max-distance=MAX_DISTANCE \
--region=REGION
更改下列內容:
POLICY_NAME:密集配置政策的名稱。MAX_DISTANCE:VM 的最大距離設定,可指定 (預先發布版,建議) 或不指定 (移除--max-distance旗標)。視機型支援的功能而定,您可以指定下列其中一個值:- 如要將 VM 放在同一個子區塊:
1 - 如要將 VM 放在同一個區塊:
2 - 如要將 VM 放在相鄰區塊:
3
- 如要將 VM 放在同一個子區塊:
REGION:要建立密集配置政策的區域。指定您打算建立執行個體的可用區所在的區域,並確認您要使用的機器類型在該區域中可用。如要瞭解區域,請參閱「各區域和可用區的 GPU 供應情形」。
REST
如要建立密集配置政策,請向 resourcePolicies.insert 方法發出 POST 要求。在要求主體中,加入設為 COLLOCATED 的 collocation 欄位和 maxDistance 欄位。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies
{
"name": "POLICY_NAME",
"groupPlacementPolicy": {
"collocation": "COLLOCATED",
"maxDistance": MAX_DISTANCE
}
}
更改下列內容:
PROJECT_ID:您的專案 ID。POLICY_NAME:密集配置政策的名稱。MAX_DISTANCE:VM 的最大距離設定,可以指定 (預先發布版,建議使用) 或不指定 (移除maxDistance欄位)。視機型支援的功能而定,您可以指定下列其中一個值:- 如要將 VM 放在同一個子區塊:
1 - 如要將 VM 放在同一個區塊:
2 - 如要將 VM 放在相鄰區塊:
3
- 如要將 VM 放在同一個子區塊:
REGION:要建立密集配置政策的區域。指定您打算建立執行個體的可用區所在的區域,並確認您要使用的機器類型在該區域中可用。如要瞭解區域,請參閱「各區域和可用區的 GPU 供應情形」。
建立 A3 Edge VM
如要建立 A3 Edge VM,請使用下列任一方法。
下列指令也會設定執行個體的存取權範圍。為簡化權限管理,Google 建議您將執行個體的存取權範圍設為cloud-platform 存取權,然後使用 IAM 角色定義執行個體可存取的服務。詳情請參閱「範圍最佳做法」。控制台
前往 Google Cloud 控制台的「Create an instance」(建立執行個體) 頁面。
指定 VM 的名稱。請參閱「資源命名慣例」。
選取要建立 VM 的「Region」(區域) 和「Zone」(可用區)。查看可用的 GPU 區域和可用區清單。
按一下「GPU」分頁標籤,然後完成下列步驟:
- 在「GPU type」(GPU 類型) 清單中,選取「
NVIDIA H100 80GB」。 - 在「Number of GPUs」(GPU 數量) 清單中,選取「
8」。 - 在「Machine type」(機器類型) 清單中,選取「a3-edgegpu-8g」。
- 在「GPU type」(GPU 類型) 清單中,選取「
請根據您要使用的消耗選項,選取下列其中一個選項,並完成下列步驟。
預留項目
A3 Edge 執行個體支援下列預留類型:
- 隨需預留項目
- 標準未來預留項目
如要使用這類預留項目,執行個體必須採用標準佈建模式。舉例來說,請使用下列建立參數。
- 在「Provisioning model」(佈建模式) 區段中,從「VM provisioning model」(VM 佈建模式) 清單中選取「Standard」(標準)。(這是預設選項)。
如要設定這個 VM 使用的預留項目,請完成下列步驟:
- 在導覽選單中,按一下「Advanced」(進階)。
在「Reservations」(預留項目) 中,選取下列其中一個選項:
隨選
- 在「Provisioning model」(佈建模式) 區段中,從「VM provisioning model」(VM 佈建模式) 清單中選取「Standard」(標準)。(這是預設選項)。
選用:如要設定這個 VM 是否使用預留項目,請完成下列步驟:
- 在導覽選單中,按一下「Advanced」(進階)。
在「預留項目」部分,選取下列其中一個選項:
如要視需要使用預留項目容量,請選取「Use automatic selection」(使用自動選取功能)。(這是預設值)。
執行個體會嘗試使用自動使用的預留項目容量,但只有在有相符的預留項目容量時,才會發生這種情況。否則,執行個體會使用隨選容量。
如要要求隨選容量,請選取「Don't use a reservation」(不使用預留項目)。
執行個體無法使用任何預留容量。
彈性啟動
- 在「Provisioning model」(佈建模式) 區段的「VM provisioning model」(VM 佈建模式) 清單中,選取「Flex-start」(彈性啟動)。
在「Enter number of hours」(輸入時數) 欄位中,輸入 VM 執行的時間長度上限。這個值必須介於 46 秒 (
0.01) 到 7 天 (168,或 168 小時) 之間。選取「設定建立 VM 的等待時間」。
請根據工作負載的可用區需求,指定下列其中一個時間長度,提高 VM 建立要求成功的機率:
- 有嚴格可用區要求的工作負載:如果工作負載要求您在特定可用區建立 VM,請指定 90 秒到 2 小時之間的時間長度。時間越長,獲得資源的機率越高。
- 沒有嚴格可用區要求的工作負載:如果 VM 可以在區域內的任何可用區執行,請指定 0 秒的時間長度,或清除「設定 VM 建立等待時間」核取方塊。這項動作會指定 Compute Engine 僅在資源立即可用時才分配資源。如果 VM 建立要求因資源無法使用而失敗,請在其他可用區中重試要求。
在「On VM termination」(在 VM 終止時) 欄位中,選取要在 VM 執行時間結束時停止或刪除 VM:
- 如要刪除 VM,請選取「刪除」。
- 如要停止 VM,請選取「Stop」(停止)。
Spot
- 在「Provisioning model」(佈建模型) 部分,從「VM provisioning model」(VM 佈建模型) 清單中選取「Spot」。
選用:如要選取 Compute Engine 搶占 VM 時執行的終止動作,請完成下列步驟:
- 展開「VM provisioning model advanced settings」(VM 佈建模式進階設定) 專區。
- 在「On VM termination」(在 VM 終止時) 清單中,選取下列其中一個選項:
- 如要在先占期間停止 VM,請選取「Stop」(停止) (預設)。
- 如要在先占期間刪除 VM,請選取「Delete」(刪除)。
在導覽選單中,按一下「OS and storage」(OS 和儲存空間),然後完成下列步驟:
- 按一下「變更」。 「開機磁碟設定」窗格隨即開啟。
在「Public images」(公開映像檔) 分頁中,選取建議的映像檔。如需建議映像檔清單,請參閱「作業系統」。
如果是 A3 Edge 機器系列,強烈建議您使用
cos-121-lts以上版本的 Container-Optimized OS 映像檔,並關閉自動更新。選用:如要設定開機磁碟大小,請根據磁碟類型,參閱 Google Cloud Hyperdisk 大小限制或永久磁碟大小限制。
按一下「選取」,確認開機磁碟選項。
按照下列指示設定服務帳戶和存取權範圍。在執行個體上執行的工作負載會使用附加的服務帳戶,授權對其他 Google Cloud 服務的要求。
- 按一下導覽選單中的「Security」(安全性)。
- 在「Service account」(服務帳戶) 清單中,選取要使用的服務帳戶。
- 在「存取權範圍」部分,選取「允許所有 Cloud API 的完整存取權」選項。建議您採用這項最佳做法,因為這樣一來,您就能透過在服務帳戶中新增或移除 IAM 角色來管理存取權。詳情請參閱「將服務帳戶附加至執行個體」。
如要建立多 NIC VM,請完成下列步驟。如要建立單一 NIC VM,請略過這些步驟。
點選導覽選單中的「Networking」(網路)。
在「Network interfaces」(網路介面) 區段中,完成下列步驟:
- 刪除預設網路介面。如要刪除介面,請按一下 「Delete」(刪除)。
- 按一下「新增網路介面」。使用這個選項,新增網路介面,並附加至您在上一節建立的虛擬私有雲網路。新增網路介面時,請注意下列事項:
- 如要將網路介面用於主機對主機通訊,請從「Network」(網路) 和「Subnetwork」(子網路) 清單中選取一般虛擬私有雲網路和子網路,並將「Network interface card」(網路介面卡) 清單設為「gVNIC」。除了第一個網路以外,將每個網路的「External IP address」(外部 IP 位址) 清單設為「None」(無)。
- 如果網路介面用於透過 GPUDirect-TCPX 進行 GPU 對 GPU 通訊,請為每個介面選取對應的專用虛擬私有雲網路和子網路,並將這些網路介面的「Network interface card」(網路介面卡) 清單設為「gVNIC」。除了第一個網路以外,將每個網路的「External IP address」(外部 IP 位址) 清單設為「None」(無)。
如要建立並啟動 VM,請按一下 [Create] (建立)。
gcloud
如要建立 VM,請使用 gcloud compute instances create 指令。
您需要指定的參數取決於您為這項部署作業使用的消耗選項。選取與計費模式對應的分頁。
預留項目
A3 Edge 執行個體支援下列預留類型:
- 隨需預留項目
- 標準未來預留項目
如要使用這類預留項目,執行個體必須採用標準佈建模式。舉例來說,請使用下列建立參數。
執行指令前,請詳閱下列所有步驟,判斷是否要加入其他旗標。
gcloud compute instances create INSTANCE_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--boot-disk-type=DISK_TYPE \
--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 \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-1,subnet=GVNIC_NAME_PREFIX-sub-1,no-address
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-2,subnet=GVNIC_NAME_PREFIX-sub-2,no-address \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-3,subnet=GVNIC_NAME_PREFIX-sub-3,no-address \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-4,subnet=GVNIC_NAME_PREFIX-sub-4,no-address \
--provisioning-model=STANDARD \
--maintenance-policy=TERMINATE \
--reservation-affinity=RESERVATION_AFFINITY \
--reservation=RESERVATION
操作步驟如下:
-
更改下列內容:
INSTANCE_NAME:VM 的名稱。MACHINE_TYPE:VM 要使用的機型。詳情請參閱 Compute Engine 說明文件中的「GPU 機型」。IMAGE_FAMILY:要使用的 OS 映像檔系列。如需所有支援作業系統的清單,請參閱「支援的作業系統」。如果是 A3 Edge 機器系列,強烈建議您使用cos-121-lts以上版本的 Container-Optimized OS 映像檔,並停用自動更新。IMAGE_PROJECT:OS 映像檔的專案 ID。 舉例來說,如果是cos-121-lts以上版本的 Container-Optimized OS 映像檔,請使用cos-cloud。ZONE:您要使用的機型所在的可用區。如要指定密集配置政策,請使用與密集配置政策位於相同區域的可用區。如要瞭解區域,請參閱「各區域和可用區的 GPU 供應情形」。DISK_TYPE:開機磁碟的類型。建議您為這個機器系列使用hyperdisk-balanced。如要進一步瞭解機型支援的磁碟類型,請參閱 Compute Engine 說明文件中的「加速器最佳化機器家族中的 GPU 機器」一節。DISK_SIZE:開機磁碟大小 (GB)。詳情請依磁碟類型參閱「Google Cloud Hyperdisk 大小限制」或「永久磁碟大小限制」。GVNIC_NAME_PREFIX:建立使用 gVNIC 的標準虛擬私有雲網路和子網路時,指定的名稱前置字串。RESERVATION_AFFINITY:執行個體可使用的預留項目 (如適用)。指定下列其中一項:RESERVATION:要使用的預留項目。根據您為RESERVATION_AFFINITY指定的值,指定下列其中一項:- 如果您指定了
any,請將RESERVATION替換為空白字串 ("")。或者,您也可以完全移除--reservation旗標。 如果您指定
specific,請將RESERVATION替換為以下內容:projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
更改下列內容:
RESERVATION_OWNER_PROJECT_ID:預留項目建立所在專案的專案 ID。RESERVATION_NAME:預留項目名稱。
- 如果您指定了
根據預設,如果執行個體當機,或 Compute Engine 因排定的停止作業 (例如維護事件) 而停止執行個體,執行個體會自動重新啟動。如要停用自動重新啟動功能,請新增下列旗標:
--no-restart-on-failure
-
選用:如要使用密集配置政策,請新增下列旗標:
--resource-policies=POLICY_NAME
更改下列內容:
POLICY_NAME:密集配置政策的名稱。
- 執行更改後的指令。
隨選
執行指令前,請詳閱下列所有步驟,判斷是否要加入其他旗標。
gcloud compute instances create INSTANCE_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--boot-disk-type=DISK_TYPE \
--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 \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-1,subnet=GVNIC_NAME_PREFIX-sub-1,no-address
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-2,subnet=GVNIC_NAME_PREFIX-sub-2,no-address \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-3,subnet=GVNIC_NAME_PREFIX-sub-3,no-address \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-4,subnet=GVNIC_NAME_PREFIX-sub-4,no-address \
--provisioning-model=STANDARD \
--maintenance-policy=TERMINATE \
--reservation-affinity=RESERVATION_AFFINITY
操作步驟如下:
-
更改下列內容:
INSTANCE_NAME:VM 的名稱。MACHINE_TYPE:VM 要使用的機型。詳情請參閱 Compute Engine 說明文件中的「GPU 機型」。IMAGE_FAMILY:要使用的 OS 映像檔系列。如需所有支援作業系統的清單,請參閱「支援的作業系統」。如果是 A3 Edge 機器系列,強烈建議您使用cos-121-lts以上版本的 Container-Optimized OS 映像檔,並停用自動更新。IMAGE_PROJECT:OS 映像檔的專案 ID。 舉例來說,如果是cos-121-lts以上版本的 Container-Optimized OS 映像檔,請使用cos-cloud。ZONE:您要使用的機型所在的可用區。如要指定密集配置政策,請使用與密集配置政策位於相同區域的可用區。如要瞭解區域,請參閱「各區域和可用區的 GPU 供應情形」。DISK_TYPE:開機磁碟的類型。建議您為這個機器系列使用hyperdisk-balanced。如要進一步瞭解機型支援的磁碟類型,請參閱 Compute Engine 說明文件中的「加速器最佳化機器家族中的 GPU 機器」一節。DISK_SIZE:開機磁碟大小 (GB)。詳情請依磁碟類型參閱「Google Cloud Hyperdisk 大小限制」或「永久磁碟大小限制」。GVNIC_NAME_PREFIX:建立使用 gVNIC 的標準虛擬私有雲網路和子網路時,指定的名稱前置字串。RESERVATION_AFFINITY:執行個體可使用的預留項目 (如適用)。指定下列其中一項:any(預留運算資源為選用項目):這是預設選項。執行個體會嘗試使用自動使用的預留項目容量,但前提是必須有相符的預留項目容量。否則,執行個體會使用隨選容量。none(必須使用隨選運算能力):禁止執行個體使用任何預留運算能力。
根據預設,如果執行個體當機,或 Compute Engine 因排定的停止作業 (例如維護事件) 而停止執行個體,執行個體會自動重新啟動。如要停用自動重新啟動功能,請新增下列旗標:
--no-restart-on-failure
-
選用:如要使用密集配置政策,請新增下列旗標:
--resource-policies=POLICY_NAME
更改下列內容:
POLICY_NAME:密集配置政策的名稱。
- 執行更改後的指令。
彈性啟動
執行指令前,請詳閱下列所有步驟,判斷是否要加入其他旗標。
gcloud compute instances create INSTANCE_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--boot-disk-type=DISK_TYPE \
--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 \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-1,subnet=GVNIC_NAME_PREFIX-sub-1,no-address
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-2,subnet=GVNIC_NAME_PREFIX-sub-2,no-address \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-3,subnet=GVNIC_NAME_PREFIX-sub-3,no-address \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-4,subnet=GVNIC_NAME_PREFIX-sub-4,no-address \
--provisioning-model=FLEX_START \
--request-valid-for-duration=REQUEST_VALID_FOR_DURATION \
--max-run-duration=MAX_RUN_DURATION \
--instance-termination-action=TERMINATION_ACTION \
--maintenance-policy=TERMINATE
操作步驟如下:
-
更改下列內容:
INSTANCE_NAME:VM 的名稱。MACHINE_TYPE:VM 要使用的機型。詳情請參閱 Compute Engine 說明文件中的「GPU 機型」。IMAGE_FAMILY:要使用的 OS 映像檔系列。如需所有支援作業系統的清單,請參閱「支援的作業系統」。如果是 A3 Edge 機器系列,強烈建議您使用cos-121-lts以上版本的 Container-Optimized OS 映像檔,並停用自動更新。IMAGE_PROJECT:OS 映像檔的專案 ID。 舉例來說,如果是cos-121-lts以上版本的 Container-Optimized OS 映像檔,請使用cos-cloud。ZONE:您要使用的機型所在的可用區。如要指定密集配置政策,請使用與密集配置政策位於相同區域的可用區。如要瞭解區域,請參閱「各區域和可用區的 GPU 供應情形」。DISK_TYPE:開機磁碟的類型。建議您為這個機器系列使用hyperdisk-balanced。如要進一步瞭解機型支援的磁碟類型,請參閱 Compute Engine 說明文件中的「加速器最佳化機器家族中的 GPU 機器」一節。DISK_SIZE:開機磁碟大小 (GB)。詳情請依磁碟類型參閱「Google Cloud Hyperdisk 大小限制」或「永久磁碟大小限制」。GVNIC_NAME_PREFIX:建立使用 gVNIC 的標準虛擬私有雲網路和子網路時,指定的名稱前置字串。REQUEST_VALID_FOR_DURATION:VM 建立要求的有效時間長度。值的格式必須是天數、小時數、分鐘數或秒數,後面分別加上d、h、m和s。例如,指定30m代表 30 分鐘,或指定1h2m3s代表 1 小時 2 分 3 秒。請根據工作負載的可用區需求,指定下列其中一個時間長度,提高 VM 建立要求成功的機率:
- 有嚴格可用區要求的工作負載:如果工作負載要求您在特定可用區建立 VM,請指定 90 秒 (
90s) 到 2 小時 (2h) 之間的時間長度。時間長度越長,取得資源的機率越高。 - 沒有嚴格可用區要求的工作負載:如果 VM 可以在區域內的任何可用區執行,請將時間長度指定為零秒 (
0s)。這項操作會指定 Compute Engine 僅在資源立即可用時才分配資源。如果 VM 建立要求因資源不足而失敗,請在其他可用區重試。
- 有嚴格可用區要求的工作負載:如果工作負載要求您在特定可用區建立 VM,請指定 90 秒 (
MAX_RUN_DURATION:要求的 VM 應執行多久。您必須將值格式化為天數、小時數、分鐘數或秒數,後面分別加上d、h、m和s。值必須介於 10 分鐘至 7 天之間。TERMINATION_ACTION:Compute Engine 是否會在執行時間結束時停止 (STOP) 或刪除 (DELETE) VM。
-
選用:如要使用密集配置政策,請新增下列旗標:
--resource-policies=POLICY_NAME
更改下列內容:
POLICY_NAME:密集配置政策的名稱。
- 執行更改後的指令。
Spot
執行指令前,請詳閱下列所有步驟,判斷是否要加入其他旗標。
gcloud compute instances create INSTANCE_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--boot-disk-type=DISK_TYPE \
--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 \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-1,subnet=GVNIC_NAME_PREFIX-sub-1,no-address
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-2,subnet=GVNIC_NAME_PREFIX-sub-2,no-address \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-3,subnet=GVNIC_NAME_PREFIX-sub-3,no-address \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-4,subnet=GVNIC_NAME_PREFIX-sub-4,no-address \
--provisioning-model=SPOT \
--instance-termination-action=TERMINATION_ACTION \
--maintenance-policy=TERMINATE \
--no-restart-on-failure
操作步驟如下:
-
更改下列內容:
INSTANCE_NAME:VM 的名稱。MACHINE_TYPE:VM 要使用的機型。詳情請參閱 Compute Engine 說明文件中的「GPU 機型」。IMAGE_FAMILY:要使用的 OS 映像檔系列。如需所有支援作業系統的清單,請參閱「支援的作業系統」。如果是 A3 Edge 機器系列,強烈建議您使用cos-121-lts以上版本的 Container-Optimized OS 映像檔,並停用自動更新。IMAGE_PROJECT:OS 映像檔的專案 ID。 舉例來說,如果是cos-121-lts以上版本的 Container-Optimized OS 映像檔,請使用cos-cloud。ZONE:您要使用的機型所在的可用區。如要指定密集配置政策,請使用與密集配置政策位於相同區域的可用區。如要瞭解區域,請參閱「各區域和可用區的 GPU 供應情形」。DISK_TYPE:開機磁碟的類型。建議您為這個機器系列使用hyperdisk-balanced。如要進一步瞭解機型支援的磁碟類型,請參閱 Compute Engine 說明文件中的「加速器最佳化機器家族中的 GPU 機器」一節。DISK_SIZE:開機磁碟大小 (GB)。詳情請依磁碟類型參閱「Google Cloud Hyperdisk 大小限制」或「永久磁碟大小限制」。GVNIC_NAME_PREFIX:建立使用 gVNIC 的標準虛擬私有雲網路和子網路時,指定的名稱前置字串。TERMINATION_ACTION:Compute Engine 搶占執行個體時要採取的動作,可以是STOP(預設) 或DELETE。
-
選用:如要使用密集配置政策,請新增下列旗標:
--resource-policies=POLICY_NAME
更改下列內容:
POLICY_NAME:密集配置政策的名稱。
- 執行更改後的指令。
REST
如要建立 VM,請向 instances.insert 方法發出 POST 要求。
您需要指定的參數取決於您為這項部署作業使用的消耗選項。選取與計費模式對應的分頁。
預留項目
A3 Edge 執行個體支援下列預留類型:
- 隨需預留項目
- 標準未來預留項目
如要使用這類預留項目,執行個體必須採用標準佈建模式。舉例來說,請使用下列建立參數。
提交要求前,請詳閱下列所有步驟,判斷是否要加入其他欄位。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
"machineType": "projects/PROJECT_ID/zones/ZONE/machineTypes/MACHINE_TYPE",
"name": "INSTANCE_NAME",
"disks": [
{
"boot": true,
"initializeParams": {
"diskSizeGb": "DISK_SIZE",
"diskType": "DISK_TYPE",
"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/GVNIC_NAME_PREFIX-net-0",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-0"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-1",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-1"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-2",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-2"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-3",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-3"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-4",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-4"
},
"scheduling": {
"provisioningModel": "STANDARD",
"onHostMaintenance": "TERMINATE",
"automaticRestart": AUTOMATIC_RESTART
},
"reservationAffinity": {
"consumeReservationType": "RESERVATION_AFFINITY",
"key": "compute.googleapis.com/reservation-name",
"values": [
"RESERVATION"
]
}
}
操作步驟如下:
-
更改下列內容:
PROJECT_ID:要建立 VM 的專案 ID。ZONE:您要使用的機型所在的可用區。如要指定密集配置政策,則必須使用與密集配置政策位於相同區域的可用區。如要瞭解區域,請參閱「各區域和可用區的 GPU 供應情形」。MACHINE_TYPE:VM 要使用的機型。詳情請參閱 Compute Engine 說明文件中的「GPU 機型」。INSTANCE_NAME:VM 的名稱。DISK_SIZE:開機磁碟大小 (GB)。詳情請依磁碟類型參閱「Google Cloud Hyperdisk 大小限制」或「永久磁碟大小限制」。DISK_TYPE:開機磁碟的類型。建議您為這個機器系列使用hyperdisk-balanced。如要進一步瞭解機型支援的磁碟類型,請參閱 Compute Engine 說明文件中的「加速器最佳化機器家族中的 GPU 機器」一節。IMAGE_PROJECT:OS 映像檔的專案 ID。 舉例來說,如果是cos-121-lts以上版本的 Container-Optimized OS 映像檔,請使用cos-cloud。IMAGE_FAMILY:要使用的 OS 映像檔系列。如需所有支援作業系統的清單,請參閱「支援的作業系統」。如果是 A3 Edge 機器系列,強烈建議您使用cos-121-lts以上版本的 Container-Optimized OS 映像檔,並停用自動更新。NETWORK_PROJECT_ID:網路的專案 ID。GVNIC_NAME_PREFIX:建立使用 gVNIC 的標準虛擬私有雲網路和子網路時,指定的名稱前置字串。REGION:子網路的區域。AUTOMATIC_RESTART:如果執行個體當機,或 Compute Engine 因排定的停止作業 (例如維護事件) 而停止執行個體,是否要自動重新啟動執行個體。指定true即可啟用自動重新啟動功能 (預設),指定false則可停用自動重新啟動功能。RESERVATION_AFFINITY:執行個體可使用的預留項目 (如適用)。指定下列其中一項:RESERVATION:要使用的預留項目。根據您為RESERVATION_AFFINITY指定的值,指定下列其中一項:- 如果您指定了
ANY_RESERVATION,請刪除RESERVATION,讓值成為空字串 ("")。或者,您也可以完全移除key和values欄位。 如果您指定
SPECIFIC_RESERVATION,請將RESERVATION替換為以下內容:projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
更改下列內容:
RESERVATION_OWNER_PROJECT_ID:預留項目建立所在專案的專案 ID。RESERVATION_NAME:預留項目名稱。
- 如果您指定了
-
選用:如果您選擇使用密集配置政策,請在要求主體中新增下列欄位:
"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]更改下列內容:
PROJECT_ID:密集配置政策的專案 ID。REGION:密集配置政策的區域。POLICY_NAME:密集配置政策的名稱。
- 提交要求。
隨選
提交要求前,請詳閱下列所有步驟,判斷是否要加入其他欄位。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
"machineType": "projects/PROJECT_ID/zones/ZONE/machineTypes/MACHINE_TYPE",
"name": "INSTANCE_NAME",
"disks": [
{
"boot": true,
"initializeParams": {
"diskSizeGb": "DISK_SIZE",
"diskType": "DISK_TYPE",
"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/GVNIC_NAME_PREFIX-net-0",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-0"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-1",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-1"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-2",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-2"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-3",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-3"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-4",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-4"
},
"scheduling": {
"provisioningModel": "STANDARD",
"onHostMaintenance": "TERMINATE",
"automaticRestart": AUTOMATIC_RESTART
},
"reservationAffinity": {
"consumeReservationType": "RESERVATION_AFFINITY"
}
}
操作步驟如下:
-
更改下列內容:
PROJECT_ID:要建立 VM 的專案 ID。ZONE:您要使用的機型所在的可用區。如要指定密集配置政策,則必須使用與密集配置政策位於相同區域的可用區。如要瞭解區域,請參閱「各區域和可用區的 GPU 供應情形」。MACHINE_TYPE:VM 要使用的機型。詳情請參閱 Compute Engine 說明文件中的「GPU 機型」。INSTANCE_NAME:VM 的名稱。DISK_SIZE:開機磁碟大小 (GB)。詳情請依磁碟類型參閱「Google Cloud Hyperdisk 大小限制」或「永久磁碟大小限制」。DISK_TYPE:開機磁碟的類型。建議您為這個機器系列使用hyperdisk-balanced。如要進一步瞭解機型支援的磁碟類型,請參閱 Compute Engine 說明文件中的「加速器最佳化機器家族中的 GPU 機器」一節。IMAGE_PROJECT:OS 映像檔的專案 ID。 舉例來說,如果是cos-121-lts以上版本的 Container-Optimized OS 映像檔,請使用cos-cloud。IMAGE_FAMILY:要使用的 OS 映像檔系列。如需所有支援作業系統的清單,請參閱「支援的作業系統」。如果是 A3 Edge 機器系列,強烈建議您使用cos-121-lts以上版本的 Container-Optimized OS 映像檔,並停用自動更新。NETWORK_PROJECT_ID:網路的專案 ID。GVNIC_NAME_PREFIX:建立使用 gVNIC 的標準虛擬私有雲網路和子網路時,指定的名稱前置字串。REGION:子網路的區域。AUTOMATIC_RESTART:如果執行個體當機,或 Compute Engine 因排定的停止作業 (例如維護事件) 而停止執行個體,是否要自動重新啟動執行個體。指定true即可啟用自動重新啟動功能 (預設),指定false則可停用自動重新啟動功能。RESERVATION_AFFINITY:執行個體可使用的預留項目 (如適用)。指定下列其中一項:ANY_RESERVATION(預留運算資源為選用項目):這是預設選項。執行個體會嘗試使用自動使用的預留項目容量,但只有在有相符的預留項目容量時,才會發生這種情況。否則,執行個體會使用隨選容量。NO_RESERVATION(必須使用隨選運算能力):禁止執行個體使用任何預留運算能力。
-
選用:如果您選擇使用密集配置政策,請在要求主體中新增下列欄位:
"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]更改下列內容:
PROJECT_ID:密集配置政策的專案 ID。REGION:密集配置政策的區域。POLICY_NAME:密集配置政策的名稱。
- 提交要求。
彈性啟動
提交要求前,請詳閱下列所有步驟,判斷是否要加入其他欄位。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
"machineType": "projects/PROJECT_ID/zones/ZONE/machineTypes/MACHINE_TYPE",
"name": "INSTANCE_NAME",
"disks": [
{
"boot": true,
"initializeParams": {
"diskSizeGb": "DISK_SIZE",
"diskType": "DISK_TYPE",
"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/GVNIC_NAME_PREFIX-net-0",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-0"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-1",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-1"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-2",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-2"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-3",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-3"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-4",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-4"
},
"params": {
"requestValidForDuration": {
"seconds": REQUEST_VALID_FOR_DURATION
}
},
"scheduling": {
"provisioningModel": "FLEX_START",
"maxRunDuration": {
"seconds": MAX_RUN_DURATION
},
"instanceTerminationAction": "TERMINATION_ACTION",
"onHostMaintenance": "TERMINATE"
}
}
操作步驟如下:
-
更改下列內容:
PROJECT_ID:要建立 VM 的專案 ID。ZONE:您要使用的機型所在的可用區。如要指定密集配置政策,則必須使用與密集配置政策位於相同區域的可用區。如要瞭解區域,請參閱「各區域和可用區的 GPU 供應情形」。MACHINE_TYPE:VM 要使用的機型。詳情請參閱 Compute Engine 說明文件中的「GPU 機型」。INSTANCE_NAME:VM 的名稱。DISK_SIZE:開機磁碟大小 (GB)。詳情請依磁碟類型參閱「Google Cloud Hyperdisk 大小限制」或「永久磁碟大小限制」。DISK_TYPE:開機磁碟的類型。建議您為這個機器系列使用hyperdisk-balanced。如要進一步瞭解機型支援的磁碟類型,請參閱 Compute Engine 說明文件中的「加速器最佳化機器家族中的 GPU 機器」一節。IMAGE_PROJECT:OS 映像檔的專案 ID。 舉例來說,如果是cos-121-lts以上版本的 Container-Optimized OS 映像檔,請使用cos-cloud。IMAGE_FAMILY:要使用的 OS 映像檔系列。如需所有支援作業系統的清單,請參閱「支援的作業系統」。如果是 A3 Edge 機器系列,強烈建議您使用cos-121-lts以上版本的 Container-Optimized OS 映像檔,並停用自動更新。NETWORK_PROJECT_ID:網路的專案 ID。GVNIC_NAME_PREFIX:建立使用 gVNIC 的標準虛擬私有雲網路和子網路時,指定的名稱前置字串。REGION:子網路的區域。REQUEST_VALID_FOR_DURATION:VM 建立要求的有效時間長度,以秒為單位。請根據工作負載的可用區需求,指定下列其中一個時間長度,提高 VM 建立要求成功的機率:
- 有嚴格可用區要求的工作負載:如果工作負載要求您在特定可用區建立 VM,請指定 90 秒 (
90) 到 2 小時 (7200) 之間的時間長度。時間長度越長,取得資源的機率越高。 - 沒有嚴格可用區要求的工作負載:如果 VM 可以在區域內的任何可用區執行,請將時間長度指定為零秒 (
0)。這項操作會指定 Compute Engine 僅在資源立即可用時才分配資源。如果 VM 建立要求因資源不足而失敗,請在其他可用區重試。
- 有嚴格可用區要求的工作負載:如果工作負載要求您在特定可用區建立 VM,請指定 90 秒 (
MAX_RUN_DURATION:要求的 VM 應執行的時間長度。您必須將值格式化為秒數。例如,指定86400代表 86,400 秒 (24 小時)。值必須介於 10 分鐘至 7 天之間。TERMINATION_ACTION:Compute Engine 是否會在執行時間結束時停止 (STOP) 或刪除 (DELETE) VM。
-
選用:如果您選擇使用密集配置政策,請在要求主體中新增下列欄位:
"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]更改下列內容:
PROJECT_ID:密集配置政策的專案 ID。REGION:密集配置政策的區域。POLICY_NAME:密集配置政策的名稱。
- 提交要求。
Spot
提交要求前,請詳閱下列所有步驟,判斷是否要加入其他欄位。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
"machineType": "projects/PROJECT_ID/zones/ZONE/machineTypes/MACHINE_TYPE",
"name": "INSTANCE_NAME",
"disks": [
{
"boot": true,
"initializeParams": {
"diskSizeGb": "DISK_SIZE",
"diskType": "DISK_TYPE",
"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/GVNIC_NAME_PREFIX-net-0",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-0"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-1",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-1"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-2",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-2"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-3",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-3"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-4",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-4"
},
"scheduling":
{
"provisioningModel": "SPOT",
"instanceTerminationAction": "TERMINATION_ACTION",
"onHostMaintenance": "TERMINATE",
"automaticRestart": false
}
}
操作步驟如下:
-
更改下列內容:
PROJECT_ID:要建立 VM 的專案 ID。ZONE:您要使用的機型所在的可用區。如要指定密集配置政策,則必須使用與密集配置政策位於相同區域的可用區。如要瞭解區域,請參閱「各區域和可用區的 GPU 供應情形」。MACHINE_TYPE:VM 要使用的機型。詳情請參閱 Compute Engine 說明文件中的「GPU 機型」。INSTANCE_NAME:VM 的名稱。DISK_SIZE:開機磁碟大小 (GB)。詳情請依磁碟類型參閱「Google Cloud Hyperdisk 大小限制」或「永久磁碟大小限制」。DISK_TYPE:開機磁碟的類型。建議您為這個機器系列使用hyperdisk-balanced。如要進一步瞭解機型支援的磁碟類型,請參閱 Compute Engine 說明文件中的「加速器最佳化機器家族中的 GPU 機器」一節。IMAGE_PROJECT:OS 映像檔的專案 ID。 舉例來說,如果是cos-121-lts以上版本的 Container-Optimized OS 映像檔,請使用cos-cloud。IMAGE_FAMILY:要使用的 OS 映像檔系列。如需所有支援作業系統的清單,請參閱「支援的作業系統」。如果是 A3 Edge 機器系列,強烈建議您使用cos-121-lts以上版本的 Container-Optimized OS 映像檔,並停用自動更新。NETWORK_PROJECT_ID:網路的專案 ID。GVNIC_NAME_PREFIX:建立使用 gVNIC 的標準虛擬私有雲網路和子網路時,指定的名稱前置字串。REGION:子網路的區域。TERMINATION_ACTION:Compute Engine 搶占執行個體時要採取的動作,可以是STOP(預設) 或DELETE。
-
選用:如果您選擇使用密集配置政策,請在要求主體中新增下列欄位:
"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]更改下列內容:
PROJECT_ID:密集配置政策的專案 ID。REGION:密集配置政策的區域。POLICY_NAME:密集配置政策的名稱。
- 提交要求。
安裝 GPU 驅動程式
建立執行個體後,必須安裝正確的 GPU 驅動程式,執行個體才能使用 GPU。 如果您未指定包含 GPU 驅動程式的 OS 映像檔,請參閱 Compute Engine 說明文件中的「安裝 GPU 驅動程式」。