如需详细了解批量创建,请参阅虚拟机批量创建简介。如需详细了解如何创建挂接 GPU 的虚拟机,请参阅创建挂接 GPU 的实例概览。
准备工作
- 如需查看创建挂接 GPU 的实例的限制和其他前提步骤(例如选择操作系统映像和检查 GPU 配额),请参阅创建挂接 GPU 的实例概览。
- 如需查看批量创建的限制,请参阅虚拟机批量创建简介。
- 
  
  如果您尚未设置身份验证,请进行设置。身份验证用于验证您的身份,以便访问 Google Cloud 服务和 API。如需从本地开发环境运行代码或示例,您可以通过选择以下选项之一向 Compute Engine 进行身份验证:
  
   
   
     
   
  
   
   
     
   
  
   
   
     
   
  
 
 
 
  
    
      Select the tab for how you plan to use the samples on this page: 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 时进行身份验证。 所需的角色如需获得创建虚拟机所需的权限,请让您的管理员为您授予项目的 Compute Instance Admin (v1) ( roles/compute.instanceAdmin.v1) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。此预定义角色可提供创建虚拟机所需的权限。如需查看所需的确切权限,请展开所需权限部分: 所需权限创建虚拟机需要以下权限: - 
                  针对项目的 compute.instances.create权限
- 
                使用自定义映像创建虚拟机:针对映像的 compute.images.useReadOnly权限
- 
                使用快照创建虚拟机:针对快照的 compute.snapshots.useReadOnly权限
- 
                使用实例模板创建虚拟机:针对实例模板的 compute.instanceTemplates.useReadOnly权限
- 
                为虚拟机指定子网:针对项目或所选子网的 compute.subnetworks.use权限
- 
                为虚拟机指定静态 IP 地址:针对项目的 compute.addresses.use权限
- 
                在使用 VPC 网络时为虚拟机分配外部 IP 地址:针对项目或所选子网的 compute.subnetworks.useExternalIp权限
- 
                为虚拟机分配旧版网络:针对项目的 compute.networks.use权限
- 
                使用旧版网络时为虚拟机分配外部 IP 地址:针对项目的 compute.networks.useExternalIp权限
- 
                为虚拟机设置虚拟机实例元数据:针对项目的 compute.instances.setMetadata权限
- 
                为虚拟机设置标记:针对虚拟机的 compute.instances.setTags权限
- 
                为虚拟机设置标签:针对虚拟机的 compute.instances.setLabels权限
- 
                为虚拟机设置要使用的服务账号:针对虚拟机的 compute.instances.setServiceAccount权限
- 
                为虚拟机创建新磁盘:针对项目的 compute.disks.create权限
- 
                以只读或读写模式挂接现有磁盘:针对磁盘的 compute.disks.use权限
- 
                以只读模式挂接现有磁盘:针对磁盘的 compute.disks.useReadOnly权限
 概览使用批量创建方法创建挂接 GPU 的虚拟机时,您可以选择在区域(如 us-central1)或特定可用区(如us-central1-a)中创建虚拟机。如果您选择指定区域,Compute Engine 会将虚拟机放置在该区域内支持 GPU 的任何地区中。 机器类型加速器优化机器家族包含多种机器类型。 每种加速器优化机器类型都挂接了特定型号的 NVIDIA GPU,以支持建议的工作负载类型。 AI 和机器学习工作负载 图形和可视化 加速器优化 A 系列机器类型专为高性能计算 (HPC)、人工智能 (AI) 和机器学习 (ML) 工作负载而设计。 对于这些机器类型,GPU 型号会自动挂接到实例。 加速器优化型 G 系列机器类型专为 NVIDIA Omniverse 模拟工作负载、图形密集型应用、视频转码和虚拟桌面等工作负载而设计。这些机器类型支持 NVIDIA RTX 虚拟工作站 (vWS)。 对于这些机器类型,GPU 型号会自动挂接到实例。 - A4X
            (NVIDIA GB200 超级芯片)
 (nvidia-gb200)
- A4
            (NVIDIA B200) 
 (nvidia-b200)
- A3 Ultra
            (NVIDIA H200) 
 (nvidia-h200-141gb)
- A3 Mega
            (NVIDIA H100) 
 (nvidia-h100-mega-80gb)
- A3 High
            (NVIDIA H100) 
 (nvidia-h100-80gb)
- A3 Edge
            (NVIDIA H100) 
 (nvidia-h100-80gb)
- A2 Ultra
          (NVIDIA A100 80GB) 
 (nvidia-a100-80gb)
- A2 Standard
          (NVIDIA A100) 
 (nvidia-a100-40gb)
 创建 A4X、A4 和 A3 Ultra 组如需为 A4X、A4 和 A3 Ultra 机器系列批量创建实例,请参阅 AI Hypercomputer 文档中的部署选项概览。 创建 A3、A2、G4 和 G2 虚拟机组本部分介绍了如何使用 Google Cloud CLI 或 REST 为 A3 High、A3 Mega、A3 Edge、A2 Standard、A2 Ultra、G4 和 G2 机器系列批量创建实例。 gcloud如需创建虚拟机组,请使用 gcloud compute instances bulk create命令。如需详细了解相关参数以及如何使用此命令,请参阅批量创建虚拟机。示例 此示例使用以下规范创建两个挂接 GPU 的虚拟机: - 虚拟机名称:my-test-vm-1、my-test-vm-2
- 每个虚拟机都挂接了两个 GPU,使用相应的加速器优化机器类型指定
 gcloud compute instances bulk create \ --name-pattern="my-test-vm-#" \ --region=REGION \ --count=2 \ --machine-type=MACHINE_TYPE \ --boot-disk-size=200 \ --image=IMAGE \ --image-project=IMAGE_PROJECT \ --on-host-maintenance=TERMINATE替换以下内容: - REGION:虚拟机的区域。此区域必须支持您选择的加速器优化机器类型。
- MACHINE_TYPE:您选择的机器类型。从下列选项中选择一项:- A3 High 机器类型
- A3 Mega 机器类型
- A3 Edge 机器类型
- A2 Standard 机器类型
- A2 Ultra 机器类型
- G4 机器类型
- G2 机器类型
G2 机器类型还支持自定义内存。内存必须是 1024 MB 的倍数且在支持的内存范围内。例如,如需创建具有 4 个 vCPU 和 19 GB 内存的虚拟机,请指定 --machine-type=g2-custom-4-19456。
 
- IMAGE:支持 GPU 的操作系统映像。- 如果要使用映像系列中的最新映像,请将 - --image标志替换为- --image-family标志,并将其值设置为支持 GPU 的映像系列。例如:- --image-family=rocky-linux-8-optimized-gcp。- 您也可以指定自定义映像或 Deep Learning VM Image 映像。 
- IMAGE_PROJECT:操作系统映像所属的 Compute Engine 映像项目。如果使用自定义映像或 Deep Learning VM Image 映像,请指定这些映像所属的项目。
- VWS_ACCELERATOR_COUNT:您需要的虚拟 GPU 数量。
 如果操作成功,则输出类似如下内容: NAME ZONE my-test-vm-1 us-central1-b my-test-vm-2 us-central1-b Bulk create request finished with status message: [VM instances created: 2, failed: 0.] 可选标志如需进一步配置实例以满足工作负载或操作系统需求,请在运行 gcloud compute instances bulk create命令时添加以下一个或多个标志。功能 说明 预配模型 为实例设置预配模型。 请指定 SPOT或FLEX_START。G4 实例不支持FLEX_START。如果您未指定模型,则系统会使用标准模型。 如需了解详情,请参阅 Compute Engine 实例预配模型。--provisioning-model=PROVISIONING_MODEL 虚拟工作站 指定面向图形工作负载的 NVIDIA RTX 虚拟工作站 (vWS)。 此功能仅适用于 G4 和 G2 实例。 --accelerator=type=VWS_ACCELERATOR_TYPE,count=VWS_ACCELERATOR_COUNT 替换以下内容: - 对于 VWS_ACCELERATOR_TYPE,请从以下选项中选择一项:- 对于 G4 实例,请指定 nvidia-rtx-pro-6000-vws
- 对于 G2 实例,请指定 nvidia-l4-vws
 
- 对于 G4 实例,请指定 
- 对于 VWS_ACCELERATOR_COUNT,请指定您需要的虚拟 GPU 数量。
 本地 SSD 将一个或多个本地 SSD 附加到实例。本地 SSD 可用于快速暂存磁盘或用于将数据输送到 GPU 中,同时防止 I/O 瓶颈。 --local-ssd=interface=nvme \ --local-ssd=interface=nvme \ --local-ssd=interface=nvme ...网络接口 将多个网络接口附加到您的实例。对于 g4-standard-384实例,您最多可以附加两个网络接口。您可以使用此标志创建具有双网络接口 (2x 200 Gbps) 的实例。每个网络接口都必须位于唯一的 VPC 网络中。--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:您的 VPC 网络的名称。
- SUBNET_NAME:指定 VPC 网络中的子网的名称。
 REST使用带有必需参数的 instances.bulkInsert方法可在一个可用区中创建多个虚拟机。 如需详细了解相关参数以及如何使用此命令,请参阅批量创建虚拟机。示例 此示例使用以下规范创建两个挂接 GPU 的虚拟机: - 虚拟机名称:my-test-vm-1、my-test-vm-2
- 每个虚拟机都挂接了两个 GPU,使用相应的加速器优化机器类型指定 - POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instances/bulkInsert { "namePattern":"my-test-vm-#", "count":"2", "instanceProperties": { "machineType":MACHINE_TYPE, "disks":[ { "type":"PERSISTENT", "initializeParams":{ "diskSizeGb":"200", "sourceImage":SOURCE_IMAGE_URI }, "boot":true } ], "name": "default", "networkInterfaces": [ { "network": "projects/PROJECT_ID/global/networks/default" } ], "scheduling":{ "onHostMaintenance":"TERMINATE", ["automaticRestart":true] } } }
 替换以下内容: - PROJECT_ID:您的项目 ID
- REGION:虚拟机的区域。此区域必须支持您选择的 GPU 型号。
- MACHINE_TYPE:您选择的机器类型。从下列选项中选择一项:- A3 High 机器类型
- A3 Mega 机器类型
- A3 Edge 机器类型
- A2 Standard 机器类型
- A2 Ultra 机器类型
- 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 会根据该系列中最新的未弃用操作系统映像创建虚拟机。如需详细了解何时使用映像系列,请参阅映像系列最佳实践。 
- 特定映像:
 可选标志如需进一步配置实例以满足工作负载或操作系统需求,请在运行 instances.bulkInsert方法时添加以下一个或多个标志。功能 说明 预配模型 如需降低费用,您可以在请求的 scheduling对象中添加"provisioningModel": "PROVISIONING_MODEL"字段,以指定其他预配模型。如果您指定创建 Spot 虚拟机,系统会忽略onHostMaintenance和automaticRestart字段。 如需了解详情,请参阅 Compute Engine 实例预配模型。"scheduling": { "onHostMaintenance": "terminate", "provisioningModel": "PROVISIONING_MODEL" }将 PROVISIONING_MODEL替换为以下项之一:- STANDARD:(默认)标准实例。
- SPOT:Spot 虚拟机。
- FLEX_START:灵活启动虚拟机。灵活启动虚拟机最多可运行 7 天,有助于您以折扣价获取 GPU 等高需求资源。 G4 实例不支持此配置模型。
 虚拟工作站 指定面向图形工作负载的 NVIDIA RTX 虚拟工作站 (vWS)。 此功能仅适用于 G4 和 G2 实例。 "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
 
- 对于 G4 实例,请指定 
- 对于 VWS_ACCELERATOR_COUNT,请指定您需要的虚拟 GPU 数量。
 本地 SSD 将一个或多个本地 SSD 附加到实例。本地 SSD 可用于快速暂存磁盘或用于将数据输送到 GPU 中,同时防止 I/O 瓶颈。 { "type": "SCRATCH", "autoDelete": true, "initializeParams": { "diskType": "projects/PROJECT_ID/zones/ZONE/diskTypes/local-nvme-ssd" } }网络接口 将多个网络接口附加到您的实例。对于 g4-standard-384实例,您最多可以附加两个网络接口。这会创建一个具有双网络接口 (2x 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:您的 VPC 网络的名称。
- SUBNET_NAME:指定 VPC 网络中的子网的名称。
 创建 N1 通用虚拟机组您可以使用 Google Cloud CLI 或 REST 创建挂接 GPU 的虚拟机组。 本部分介绍如何使用以下 GPU 类型创建多个虚拟机: NVIDIA GPU: - NVIDIA T4:nvidia-tesla-t4
- NVIDIA P4:nvidia-tesla-p4
- NVIDIA P100:nvidia-tesla-p100
- NVIDIA V100:nvidia-tesla-v100
 NVIDIA RTX 虚拟工作站 (vWS)(以前称为 NVIDIA GRID): - NVIDIA T4 虚拟工作站:nvidia-tesla-t4-vws
- NVIDIA P4 虚拟工作站:nvidia-tesla-p4-vws
- NVIDIA P100 虚拟工作站: - nvidia-tesla-p100-vws- 对于这些虚拟工作站,系统会自动将 NVIDIA RTX 虚拟工作站 (vWS) 许可添加到实例。 
 gcloud如需创建虚拟机组,请使用 gcloud compute instances bulk create命令。如需详细了解相关参数以及如何使用此命令,请参阅批量创建虚拟机。示例 以下示例会使用以下规范创建两个挂接 GPU 的虚拟机: - 虚拟机名称:my-test-vm-1、my-test-vm-2
- 在 us-central1内支持 GPU 的任何地区中创建的虚拟机
- 每个虚拟机都挂接了两个 T4 GPU,并指定了相应的加速器类型和加速器数量标志
- 每个虚拟机都安装了 GPU 驱动程序
- 每个虚拟机都使用 Deep Learning VM Image 映像 pytorch-latest-gpu-v20211028-debian-10
 gcloud compute instances bulk create \ --name-pattern="my-test-vm-#" \ --count=2 \ --region=us-central1 \ --machine-type=n1-standard-2 \ --accelerator type=nvidia-tesla-t4,count=2 \ --boot-disk-size=200 \ --metadata="install-nvidia-driver=True" \ --scopes="https://www.googleapis.com/auth/cloud-platform" \ --image=pytorch-latest-gpu-v20211028-debian-10 \ --image-project=deeplearning-platform-release \ --on-host-maintenance=TERMINATE --restart-on-failure如果操作成功,则输出类似如下内容: NAME ZONE my-test-vm-1 us-central1-b my-test-vm-2 us-central1-b Bulk create request finished with status message: [VM instances created: 2, failed: 0.] REST使用带有必需参数的 instances.bulkInsert方法可在一个可用区中创建多个虚拟机。 如需详细了解相关参数以及如何使用此命令,请参阅批量创建虚拟机。示例 以下示例会使用以下规范创建两个挂接 GPU 的虚拟机: - 虚拟机名称:my-test-vm-1、my-test-vm-2
- 在 us-central1内支持 GPU 的任何地区中创建的虚拟机
- 每个虚拟机都挂接了两个 T4 GPU,并指定了相应的加速器类型和加速器数量标志
- 每个虚拟机都安装了 GPU 驱动程序
- 每个虚拟机都使用 Deep Learning VM Image 映像 pytorch-latest-gpu-v20211028-debian-10
 将 PROJECT_ID替换为您的项目 ID。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/instances/bulkInsert { "namePattern":"my-test-vm-#", "count":"2", "instanceProperties": { "machineType":"n1-standard-2", "disks":[ { "type":"PERSISTENT", "initializeParams":{ "diskSizeGb":"200", "sourceImage":"projects/deeplearning-platform-release/global/images/pytorch-latest-gpu-v20211028-debian-10" }, "boot":true } ], "name": "default", "networkInterfaces": [ { "network": "projects/PROJECT_ID/global/networks/default" } ], "guestAccelerators": [ { "acceleratorCount": 2, "acceleratorType": "nvidia-tesla-t4" } ], "scheduling":{ "onHostMaintenance":"TERMINATE", "automaticRestart":true }, "metadata":{ "items":[ { "key":"install-nvidia-driver", "value":"True" } ] } } }后续步骤- 了解如何监控 GPU 性能。 
- 了解如何使用更高的网络带宽。 
- 了解如何处理 GPU 主机维护事件。 
 - 了解如何查看虚拟机和 GPU 的实际和预测用量。
 如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。 最后更新时间 (UTC):2025-10-22。 -