建立 G2 或 G4 執行個體

本文說明如何建立使用 G2 或 G4 機器系列的虛擬機器 (VM) 執行個體。這些 G 系列加速器最佳化機型非常適合執行需要大量圖形資源的應用程式,以及經濟實惠的機器學習 (ML) 推論。

您可以將這些 VM 建立為隨選 VM。如要降低成本,您也可以建立 G2 和 G4 Spot VM,或是建立 G2 彈性啟動型 VM。如要進一步瞭解如何建立附加 GPU 的 VM,請參閱「建立附加 GPU 的執行個體總覽」。

如果工作負載不需要完整 GPU 的資源,您可以建立附加部分 GPU (vGPU) 的 VM,讓多個工作負載存取單一實體 GPU,藉此節省成本。

如要建立多個 G2 或 G4 VM,可以使用下列任一方法:

事前準備

  • 如要查看建立附加 GPU 的執行個體時的限制和額外必要步驟,例如選取 OS 映像檔和檢查 GPU 配額,請參閱「建立附加 GPU 的執行個體總覽」。
  • 如果尚未設定驗證,請先完成設定。驗證可確認您的身分,以便存取 Google Cloud 服務和 API。如要從本機開發環境執行程式碼或範例,請選取下列其中一個選項,向 Compute Engine 進行驗證:

    請根據您打算如何使用本頁範例,選取對應的分頁標籤:

    控制台

    使用 Google Cloud 控制台存取 Google Cloud 服務和 API 時,不需要設定驗證。

    gcloud

    1. 安裝 Google Cloud CLI。 安裝完成後,請執行下列指令,初始化 Google Cloud CLI:

      gcloud init

      如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud 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 磁碟

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

建立已連結 GPU 的執行個體

您可以使用 Google Cloud 控制台、Google Cloud CLI 或 REST,建立 G2 或 G4 加速器最佳化執行個體。

控制台

  1. 前往 Google Cloud 控制台的「建立執行個體」頁面。

    前往「建立執行個體」

  2. 在「名稱」欄位中,輸入執行個體的專屬名稱。請參閱「資源命名慣例」。

  3. 選取提供這些 GPU 機型的區域和可用區。 請參閱 GPU 區域和可用區。

  4. 在機器類型部分,選取「GPU」。

    1. 在「GPU type」(GPU 類型) 清單中,選取 GPU 類型。

      • 如果是 G2 執行個體,請選取 NVIDIA L4
      • 如果是 G4 執行個體,請選取 NVIDIA RTX PRO 6000
    2. 在「Number of GPUs」(GPU 數量) 清單中,選取 GPU 數量。

      • 如果是 G4 執行個體,控制台會根據所選 GPU 數量,自動選取對應的機型。
      • 如果是 G2 執行個體,請查看下列事項:

        • 如果選取一個 GPU,則可從一組機型中選擇,這些機型已預先設定適合工作負載的 vCPU 數量和記憶體容量。
        • 如果選取兩個以上的 GPU,控制台會根據選取的 GPU 數量,自動選取對應的機型。

        對於 G2 執行個體,您也可以指定自訂機型。 如要指定執行個體的 vCPU 數量和記憶體容量,請拖曳滑桿或在文字方塊中輸入值。當您變更 vCPU 數量和記憶體時,控制台會顯示執行個體的預估費用。

    3. 選用:G2 和 G4 機器系列支援NVIDIA RTX 虛擬工作站 (vWS),可處理圖形工作負載。如果您打算在執行個體上執行需要大量圖形處理的工作負載,請選取「啟用虛擬工作站 (NVIDIA GRID)」。

  5. 設定開機磁碟,步驟如下:

    1. 在「OS 和儲存空間」部分,點選「變更」。系統隨即開啟「開機磁碟設定」頁面。
    2. 在「開機磁碟設定」頁面中,執行下列操作:

      1. 在「Public images」(公開映像檔) 分頁中,選擇支援的 Compute Engine 映像檔或 Deep Learning VM Images。
      2. 指定至少 40 GiB 的開機磁碟大小。
      3. 按一下「選取」,確認開機磁碟選項。
  6. 選用:新增本機 SSD。本機 SSD 可做為快速暫存磁碟,或將資料饋送至 GPU,同時避免 I/O 瓶頸。如要將本機 SSD 新增至執行個體,請完成下列步驟:

    1. 在「OS 和儲存空間」部分,按一下「新增本機 SSD」。
    2. 在「介面」部分,選取「NVMe」。
    3. 在「硬碟容量」中,選取要附加的本機 SSD 數量。 如要瞭解每個執行個體最多可使用的本機 SSD 磁碟數量,請參閱本機 SSD 的機器系列限制。
  7. 選用:如要為 g4-standard-384 執行個體提高網路頻寬,請設定多個網路介面。最多可以設定兩個網路介面。這項設定會建立具有雙重網路介面 (2x 200 Gbps) 的 g4-standard-384 執行個體。在「Networking」(網路) 區段中,完成下列步驟:

    1. 展開預設網路介面。
    2. 為第一個介面指定「網路」和「子網路」。
    3. 在「網路介面卡」中選取「gVNIC」。
    4. 按一下「新增網路介面」,新增第二個介面。 設定第二個網路介面,步驟如下:

      1. 選取其他虛擬私有雲「網路」和「子網路」。 每個網路介面都必須位於專屬的虛擬私有雲網路。
      2. 在「網路介面卡」中選取「gVNIC」。
  8. 選用:設定不同的佈建模型,以降低費用。 在「Advanced options」(進階選項) 專區的「VM provisioning model」(VM 佈建模式) 下方,選取下列其中一個選項:

    • (僅限 G2) 彈性啟動:適用於可接受彈性開始時間的短期工作負載。詳情請參閱「關於彈性啟動型 VM」。

    • Spot:適用於可先占的容錯工作負載。詳情請參閱「Spot VM」。

  9. 選用:在「On VM termination」(在 VM 終止時) 清單中,選取 Compute Engine 先占 Spot VM 或彈性啟動型 VM 達到執行時間長度上限時,要採取的動作:

    • 如要在先占期間停止 VM,請選取「Stop」(停止) (預設)。
    • 如要在先占期間刪除 VM,請選取「刪除」。
  10. 如要建立並啟動 VM,請按一下 [Create] (建立)。

gcloud

如要建立並啟動執行個體,請使用 gcloud compute instances create 指令。下列指令包含必要旗標。

  gcloud compute instances create VM_NAME \
      --machine-type=MACHINE_TYPE \
      --zone=ZONE \
      --boot-disk-size=DISK_SIZE \
      --image=IMAGE \
      --image-project=IMAGE_PROJECT \
      --maintenance-policy=TERMINATE \
      --restart-on-failure

更改下列內容:

  • VM_NAME:新執行個體的名稱。
  • MACHINE_TYPE:您選取的機器類型。選擇下列其中一個選項:

    • G4 機型。
    • G2 機型。 G2 機型也支援自訂記憶體。記憶體必須是 1024 MB 的倍數,且在支援的記憶體範圍內。舉例來說,如要建立具有 4 個 vCPU 和 19 GB 記憶體的執行個體,請指定 --machine-type=g2-custom-4-19456。
  • ZONE:執行個體的可用區。可用區必須支援您選取的 GPU 模型。
  • DISK_SIZE:開機磁碟的大小 (以 GiB 為單位)。指定至少 40 GiB 的開機磁碟大小。
  • IMAGE:支援 GPU 的作業系統映像檔。如要使用映像檔系列中的最新映像檔,請將 --image 旗標替換為 --image-family 旗標,並將其值設為支援 GPU 的映像檔系列。例如:--image-family=rocky-linux-8-optimized-gcp。
    您也可以指定自訂映像檔或 深度學習 VM 映像檔。
  • IMAGE_PROJECT:OS 映像檔所屬的 Compute Engine 映像檔專案。如果使用自訂映像檔或深度學習 VM 映像檔,請指定這些映像檔所屬的專案。

選用旗標

如要進一步設定執行個體,以滿足工作負載或作業系統需求,請在執行 gcloud compute instances create 指令時加入一或多個下列旗標。

功能 說明
佈建模型 設定執行個體的佈建模式。您可以指定 STANDARD、SPOT 或 FLEX_START。如果您指定 FLEX_START,則必須在指令中指定其他旗標,才能建立執行個體。如未指定佈建模式,Compute Engine 會將值設為 STANDARD。詳情請參閱「Compute Engine 執行個體佈建模式」。
--provisioning-model=PROVISIONING_MODEL
虛擬工作站 指定用於圖形工作負載的 NVIDIA RTX 虛擬工作站 (vWs)。
--accelerator=type=VWS_ACCELERATOR_TYPE,count=VWS_ACCELERATOR_COUNT

更改下列內容:

  • 在「VWS_ACCELERATOR_TYPE」部分,選擇下列其中一個選項:
    • 如果是 G4 執行個體,請指定 nvidia-rtx-pro-6000-vws
    • 如果是 G2 執行個體,請指定 nvidia-l4-vws
  • 如為 VWS_ACCELERATOR_COUNT,請指定所需的虛擬 GPU 數量。
本機 SSD 將一或多個本機 SSD 連接至執行個體。本機 SSD 可做為快速暫存磁碟,或將資料饋送至 GPU,同時避免 I/O 瓶頸。
    --local-ssd=interface=nvme \
    --local-ssd=interface=nvme \
    --local-ssd=interface=nvme ...
每個 VM 執行個體可連接的本機 SSD 磁碟數量上限,請參閱本機 SSD 限制。
網路介面 將多個網路介面附加至執行個體。對於 g4-standard-384 執行個體,最多可附加兩個網路介面。您可以使用這個旗標建立具有雙重網路介面 (2 個 200 Gbps) 的執行個體。每個網路介面都必須位於不重複的虛擬私有雲網路。
   --network-interface=network=VPC_NAME_1,subnet=SUBNET_NAME_1,nic-type=GVNIC \
   --network-interface=network=VPC_NAME_2,subnet=SUBNET_NAME_2,nic-type=GVNIC
   

雙網路介面僅支援 g4-standard-384 機器類型。

更改下列內容:

  • VPC_NAME:虛擬私有雲網路的名稱。
  • SUBNET_NAME:屬於指定虛擬私有雲網路的子網路名稱。
配置政策 控制執行個體在可用區中的位置。您可以指定緊湊政策,盡量減少 G2 執行個體之間的網路延遲時間,也可以指定分散政策,提升 G4 或 G2 執行個體在區域特定中斷事件中的復原能力。
   --resource-policies=POLICY_NAME
   

將 POLICY_NAME 替換為配置政策名稱。您只能在與政策相同的區域中建立執行個體。

REST

向 instances.insert 方法傳送 POST 要求。由於搭載 GPU 的執行個體無法即時遷移,請將 onHostMaintenance 欄位設為 TERMINATE。下列方法包含要求主體的必填欄位。

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances

{
   "machineType":"projects/PROJECT_ID/zones/ZONE/machineTypes/MACHINE_TYPE",
   "disks":[
      {
         "type":"projects/PROJECT_ID/zones/ZONE/diskTypes/hyperdisk-balanced",
         "initializeParams":{
            "diskSizeGb":"DISK_SIZE",
            "sourceImage":"SOURCE_IMAGE_URI"
         },
         "boot":true
      }
   ],
   "name":"VM_NAME",
   "networkInterfaces":[
      {
         "network":"projects/PROJECT_ID/global/networks/default"
      }
   ],
   "scheduling":{
      "onHostMaintenance": "TERMINATE",
      "automaticRestart": true
   }
}

更改下列內容:

  • VM_NAME:新執行個體的名稱。
  • PROJECT_ID:專案 ID。
  • ZONE:執行個體的可用區。這個可用區必須支援您選取的 GPU 模型。
  • MACHINE_TYPE:您選取的機器類型。選擇下列其中一個選項:
    • G4 機型。
    • G2 機型。 G2 機型也支援自訂記憶體。記憶體必須是 1024 MB 的倍數,且在支援的記憶體範圍內。舉例來說,如果執行個體有 4 個 vCPU 和 19 GB 的記憶體,則機型名稱為 g2-custom-4-19456。
  • SOURCE_IMAGE_URI:要使用的特定映像檔或映像檔系列 URI。例如:
    • 特定圖片:"sourceImage": "projects/rocky-linux-cloud/global/images/rocky-linux-8-optimized-gcp-v20220719"
    • 映像檔系列:"sourceImage": "projects/rocky-linux-cloud/global/images/family/rocky-linux-8-optimized-gcp"
    指定映像檔系列時,Compute Engine 會使用該系列中未淘汰的最新 OS 映像檔建立執行個體。如要進一步瞭解何時該使用映像檔系列,請參閱「映像檔系列最佳做法」。
  • DISK_SIZE:開機磁碟的大小 (以 GiB 為單位)。指定至少 40 GiB 的開機磁碟大小。

選填欄位

如要進一步設定執行個體,以滿足工作負載或作業系統需求,請在執行 instances.insert 方法時,加入下列一或多個旗標。

功能 說明
佈建模型 如要降低成本,請在要求中的 scheduling 物件中新增 "provisioningModel": "PROVISIONING_MODEL" 欄位,指定其他佈建模型。詳情請參閱「Compute Engine 執行個體佈建模式」。
    "scheduling":
     {
       "onHostMaintenance": "TERMINATE",
       "provisioningModel": "PROVISIONING_MODEL"
     }
  

將 PROVISIONING_MODEL 替換為下列其中一個值:

  • STANDARD:標準執行個體。這是預設值。
  • SPOT:Spot VM。如果您建立 Spot VM,系統會覆寫 onHostMaintenance 和 automaticRestart 欄位。Spot VM 提供大幅折扣,但 Compute Engine 可能隨時先占這些 VM,以取回資源。
  • FLEX_START:彈性啟動型 VM。彈性啟動型 VM 最多會運作七天,可協助您以折扣價取得 GPU 等需求量高的資源。如果您建立彈性啟動型 VM,則必須在要求中指定其他欄位。詳情請參閱「建立彈性啟動型 VM」。
虛擬工作站 指定用於圖形工作負載的 NVIDIA RTX 虛擬工作站 (vWS)。
   "guestAccelerators":
     [
       {
         "acceleratorCount": VWS_ACCELERATOR_COUNT,
         "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/VWS_ACCELERATOR_TYPE"
       }
     ]
    

更改下列內容:

  • 在「VWS_ACCELERATOR_TYPE」部分,選擇下列其中一個選項:
    • 如果是 G4 執行個體,請指定 nvidia-rtx-pro-6000-vws
    • 如果是 G2 執行個體,請指定 nvidia-l4-vws
  • 如為 VWS_ACCELERATOR_COUNT,請指定所需的虛擬 GPU 數量。
本機 SSD 將一或多個本機 SSD 連接至執行個體。本機固態硬碟可用於快速暫存磁碟,或將資料饋送至 GPU,同時避免 I/O 瓶頸。
   {
     "type": "SCRATCH",
     "autoDelete": true,
     "initializeParams": {
       "diskType": "projects/PROJECT_ID/zones/ZONE/diskTypes/local-nvme-ssd"
     }
   }
  
每個 VM 執行個體可連接的本機 SSD 磁碟數量上限,請參閱本機 SSD 限制。
網路介面 將多個網路介面附加至執行個體。對於 g4-standard-384 執行個體,最多可附加兩個網路介面。這會建立具備雙網路介面 (2 個 200 Gbps) 的執行個體。每個網路介面都必須位於專屬的 VPC 網路中。
   "networkInterfaces":
   [
     {
       "network": "projects/PROJECT_ID/global/networks/VPC_NAME_1",
       "subnetwork": "projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME_1",
       "nicType": "GVNIC"
     },
     {
       "network": "projects/PROJECT_ID/global/networks/VPC_NAME_2",
       "subnetwork": "projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME_2",
       "nicType": "GVNIC"
     }
   ]
  

雙網路介面僅支援 g4-standard-384 機器類型。

更改下列內容:

  • VPC_NAME_1 和 VPC_NAME_2:虛擬私有雲網路的名稱。
  • SUBNET_NAME:屬於指定虛擬私有雲網路的子網路名稱。
配置政策 控制執行個體在可用區中的位置。您可以指定緊湊政策,盡量減少 G2 執行個體之間的網路延遲時間,也可以指定分散政策,提升 G4 或 G2 執行個體在區域特定中斷事件中的復原能力。
   "resourcePolicies": [
     "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
   ]
   

更改下列內容:

  • REGION:放置政策所在的區域。您只能在與政策相同的區域中建立執行個體。
  • POLICY_NAME:刊登位置政策的名稱。

安裝驅動程式

建立執行個體後,您必須安裝驅動程式,才能使用 GPU。您需要安裝的驅動程式,取決於您在建立執行個體時,是否為圖形工作負載啟用 NVIDIA RTX 虛擬工作站 (vWS)。

為非整數 GPU 安裝 vGPU 驅動程式

如果 G4 執行個體連結的 GPU 不到一個,您必須在建立執行個體後,在其中安裝特定 vGPU 驅動程式,該程式會連線至實體機器的主機驅動程式。如需操作說明,請參閱「安裝 vGPU 驅動程式 (分數 VM)」。

(選用) 多實體 GPU 模式 (僅限 G4)

多重執行個體 GPU (MIG) 模式是可在支援的 NVIDIA GPU 上啟用的功能。

建立 G4 執行個體後,您可以在連結至機器的單一 NVIDIA RTX PRO 6000 GPU 上啟用多執行個體 GPU (MIG) 模式。啟用 MIG 模式後,單一 GPU 最多可分割為七個獨立的 GPU 執行個體。每個執行個體都會同時執行,且各自擁有記憶體、快取和串流多處理器 (Streaming Multiprocessor)。然後在這些 GPU 執行個體上平行執行不同的工作負載。這與使用連接部分 GPU 的 G4 機型不同,後者是多個工作負載透過部分 (vGPU) 分割,共用單一實體 GPU 的存取權。

如要進一步瞭解如何使用多重執行個體 GPU,請參閱 NVIDIA 說明文件中的「開始使用 MIG」。

後續步驟