批量创建 AI 优化型 A4 或 A3 Ultra 虚拟机

本文档介绍了如何批量创建使用 A4 或 A3 Ultra 机器类型的虚拟机 (VM) 实例。如需详细了解这些加速器优化型机器类型,请参阅 A4A3 Ultra

如需详细了解如何批量创建虚拟机,请参阅 Compute Engine 文档中的虚拟机批量创建简介

如需了解创建虚拟机或集群的其他方法,请参阅部署选项概览

限制

批量创建 A4 或 A3 Ultra 虚拟机时,存在以下限制:

A4

  • 使用 A4 机器类型的实例不会获得持续使用折扣灵活承诺使用折扣。
  • 只能在某些区域和可用区中使用 A4 机器类型。
  • 您不能使用 Persistent Disk(区域级或可用区级)。您只能使用 Google Cloud Hyperdisk
  • A4 机器类型仅在 Emerald Rapids CPU 平台上提供。
  • 您不能将实例的机器类型更改为 A4 机器类型或从 A4 机器类型更改为其他类型。您必须使用此机器类型创建新实例。
  • A4 机器类型不支持单租户
  • 不能在 A4 机器类型上运行 Windows 操作系统。
  • 对于 A4 实例,当您使用 ethtool -S 监控 GPU 网络时,以 _phy 结尾的物理端口计数器不会更新。对于使用 MRDMA 虚拟功能 (VF) 架构的实例,这是预期行为。 如需了解详情,请参阅 MRDMA 函数和网络监控工具
  • 您无法将 2026 年 2 月 4 日之前创建的 Hyperdisk ML 磁盘挂接到 A4 机器类型。

A3 Ultra

  • 使用 A3 Ultra 机器类型的实例不会获得持续使用折扣灵活承诺使用折扣。
  • 只能在某些区域和可用区中使用 A3 Ultra 机器类型。
  • 您不能使用 Persistent Disk(区域级或可用区级)。您只能使用 Google Cloud Hyperdisk
  • A3 Ultra 机器类型仅在 Emerald Rapids CPU 平台上提供。
  • A3 Ultra 机器类型不支持更改机器类型。如需切换到或切换出此机器类型,您必须创建新的实例。
  • 不能在 A3 Ultra 机器类型上运行 Windows 操作系统。
  • A3 Ultra 机器类型不支持单租户
  • 对于 A3 Ultra 实例,当您使用 ethtool -S 监控 GPU 网络时,以 _phy 结尾的物理端口计数器不会更新。对于使用 MRDMA 虚拟功能 (VF) 架构的实例,这是预期行为。如需了解详情,请参阅 MRDMA 函数和网络监控工具

准备工作

在批量创建虚拟机之前,如果您尚未完成以下步骤,请先完成这些步骤:

  1. 选择使用选项:您选择的使用选项决定了您如何获取和使用 GPU 资源。如需了解详情,请参阅选择消费选项
  2. 获取容量:每种使用选项的容量获取流程各不相同。如需了解所选使用选项的容量获取流程,请参阅容量概览

选择标签页以了解您打算如何使用本页面上的示例:

控制台

当您使用 Google Cloud 控制台访问 Google Cloud 服务和 API 时,无需设置身份验证。

gcloud

安装 Google Cloud CLI,然后 使用联合身份登录 gcloud CLI。 登录后,运行以下命令来初始化 Google Cloud CLI:

gcloud init

REST

如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭证。

    安装 Google Cloud CLI,然后 使用联合身份登录 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 权限

您也可以使用自定义角色或其他预定义角色来获取这些权限。

概览

使用 A4 或 A3 Ultra 机器类型批量创建实例包括以下步骤:

  1. 创建 VPC 网络
  2. 可选: 创建紧凑布置政策
  3. 批量创建实例

创建 VPC 网络

如需为 A4 或 A3 Ultra 机器类型设置网络,请为以下网络接口创建三个 VPC 网络:

  • 2 个常规 VPC 网络,用于 gVNIC 网络接口 (NIC)。然后,NIC 会使用这些 VPC 网络进行主机到主机的通信。
  • 1 个采用 RoCE 网络配置文件 的 VPC 网络(适用于 CX-7 NIC)。 虚拟机实例的 RoCE VPC 网络必须有 8 个子网,每个 CX-7 NIC 对应一个子网。 这些 NIC 使用 RDMA over Converged Ethernet (RoCE),可提供对于 GPU 到 GPU 通信至关重要的高带宽、低延迟通信。

如需详细了解 NIC 配置,请参阅查看网络带宽和 NIC 配置

您可以按照说明指南手动创建网络,也可以使用提供的脚本自动创建。

说明指南

如需创建网络,您可以按照以下说明操作:

对于这些 VPC 网络,请将最大传输单元 (MTU) 设置为更大的值。对于 A4 或 A3 Ultra 机器类型,建议的 MTU 为 8896 字节。 如需查看其他 GPU 机器类型的建议 MTU 设置,请参阅 GPU 机器类型的 MTU 设置

脚本

如需创建网络,请按照以下步骤操作。

对于这些 VPC 网络,请将最大传输单元 (MTU) 设置为更大的值。对于 A4 或 A3 Ultra 机器类型,建议的 MTU 为 8896 字节。 如需查看其他 GPU 机器类型的建议 MTU 设置,请参阅 GPU 机器类型的 MTU 设置

  1. 使用以下脚本为 gVNIC 和 CX-7 NIC 创建 VPC 网络。

    
        #!/bin/bash
    
        # Create regular VPC networks and subnets for the gVNICs
        for N in $(seq 0 1); do
          gcloud compute networks create GVNIC_NAME_PREFIX-net-$N \
            --subnet-mode=custom \
            --mtu=8896
    
          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
    
        # Assumes that an external IP is only created for vNIC 0
        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
    
    
        #!/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-mrdma \
          --network-profile=ZONE-vpc-roce \
          --subnet-mode custom \
          --mtu=8896
    
        # Create subnets
        for N in $(seq 0 7); do
          gcloud compute networks subnets create RDMA_NAME_PREFIX-mrdma-sub-$N \
            --network=RDMA_NAME_PREFIX-mrdma \
            --region=REGION \
            --range=10.$((N+2)).0.0/16 # offset to avoid overlap with gVNICs
        done
    
          
  2. 替换以下内容:

    • GVNIC_NAME_PREFIX:用于 gVNIC 的常规 VPC 网络和子网的自定义名称前缀。
    • RDMA_NAME_PREFIX:用于虚拟机实例 (roce) 的 RoCE VPC 网络和 CX-7 NIC 的子网的自定义名称前缀。
    • ZONE:指定提供您要使用的机器类型的可用区,例如 us-central1-a。 如需了解区域,请参阅 按区域和可用区划分的 GPU 可用性
    • REGION:您想要在其中创建子网的区域。此区域必须与指定的可用区相对应。例如,如果可用区为 us-central1-a,则区域为 us-central1
    • IP_RANGE:用于 SSH 防火墙规则的 IP 范围。
  3. 可选:如需验证 VPC 网络资源是否已成功创建,请在 Google Cloud 控制台中检查网络设置:
    1. 在 Google Cloud 控制台中,前往 VPC 网络页面。

      进入 VPC 网络页面

    2. 在列表中搜索您在上一步中创建的网络。
    3. 如需查看子网、防火墙规则和其他网络设置,请点击网络的名称。

可选:创建紧凑布置政策

您可以通过创建紧凑布置政策来指定虚拟机布置。当您将紧凑布置政策应用于虚拟机时,Compute Engine 会尽力尝试创建尽可能彼此靠近的虚拟机。如果您的应用对延迟时间敏感,并且需要实现最大紧凑性,请在创建紧凑布置政策时指定 maxDistance 字段(预览版)。maxDistance 值越小,虚拟机布置得越靠近,但也会增加部分虚拟机创建失败的概率。

如需创建紧凑布置政策,请选择以下选项之一:

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

替换以下内容:

  • POLICY_NAME:紧凑布置政策的名称。
  • MAX_DISTANCE:虚拟机的最大距离配置。该值必须为 3(用于将虚拟机布置在相邻的块中)或 2(用于将虚拟机布置在同一块中)。如需了解每种机器系列支持的每个maxDistance的虚拟机数量上限,请参阅 Compute Engine 文档中的紧凑布置政策简介
  • REGION:要用于创建紧凑布置政策的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性

REST

如需创建紧凑布置政策,请向 Beta 版 resourcePolicies.insert 方法发出 POST 请求。 在请求正文中,添加设置为 COLLOCATEDcollocation 字段和 maxDistance 字段。

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/resourcePolicies
  {
    "name": "POLICY_NAME",
    "groupPlacementPolicy": {
      "collocation": "COLLOCATED",
      "maxDistance": MAX_DISTANCE
    }
  }

替换以下内容:

  • PROJECT_ID:您的项目 ID。
  • POLICY_NAME:紧凑布置政策的名称。
  • MAX_DISTANCE:虚拟机的最大距离配置。该值必须为 3(用于将虚拟机布置在相邻的块中)或 2(用于将虚拟机布置在同一块中)。如需了解每种机器系列支持的每个maxDistance的虚拟机数量上限,请参阅 Compute Engine 文档中的紧凑布置政策简介
  • REGION:要用于创建紧凑布置政策的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性

批量创建 A3 Ultra 或 A4 虚拟机

如需批量创建 A3 Ultra 或 A4 虚拟机,请使用以下方法之一。

以下命令还会设置实例的访问权限范围。为简化权限管理,Google 建议您将实例的访问权限范围设置为 cloud-platform 访问权限,然后使用 IAM 角色定义实例可以访问哪些服务。如需了解详情,请参阅范围最佳实践

gcloud

如需批量创建 A4 或 A3 Ultra 实例,请使用 gcloud compute instances bulk 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 \
    --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=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-0,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-1,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-2,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-3,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-4,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-5,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-6,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-7,no-address \
    --reservation-affinity=specific \
    --reservation=RESERVATION \
    --provisioning-model=RESERVATION_BOUND \
    --instance-termination-action=TERMINATION_ACTION \
    --maintenance-policy=TERMINATE \
    --restart-on-failure

请完成以下步骤:

  1. 替换以下内容:

    • NAME_PATTERN:要用于 A4 或 A3 Ultra 实例的名称格式。 例如,将 instance-# 用于名称模式会生成名称为 instance-1instance-2 等依次递增的 A4 或 A3 Ultra 实例,数量最多为 --count 指定的 A4 或 A3 Ultra 实例数量。
    • COUNT:要创建的 A4 或 A3 Ultra 实例数量。
    • MACHINE_TYPE:要用于 A4 或 A3 Ultra 实例的机器类型。指定 A4 或 A3 Ultra 机器类型。如需了解详情,请参阅 GPU 机器类型
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看受支持的操作系统列表,请参阅受支持的操作系统
    • IMAGE_PROJECT:操作系统映像的项目 ID。
    • REGION:指定提供您要使用的机器类型的区域。 如果您想指定紧凑布置政策,则必须使用与紧凑布置政策相同的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC NIC 的标准 VPC 网络和子网时指定的名称前缀。
    • RDMA_NAME_PREFIX:您在创建使用 RDMA NIC 的 VPC 网络和子网时指定的名称前缀。
    • RESERVATION:预留名称或预留中的特定块。如需获取预留名称或可用块,请参阅查看预留容量。根据您对实例布置的要求,请按以下方式之一操作:
      • 跨块或在单个块上创建实例:

        projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME

        此外,对于单个块,请应用指定了块共置 (maxDistance=2) 的紧凑布置政策。 然后,Compute Engine 会将该政策应用于预留,并在同一块上创建实例。

      • 在特定块上创建实例:

        projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
    • TERMINATION_ACTION:指示在预留期结束时,Compute Engine 是关停 (STOP) 还是删除 (DELETE) A4 或 A3 Ultra 实例。

  2. 可选:如果您选择使用紧凑布置政策,请向命令添加以下标志:

      --resource-policies=POLICY_NAME
    

    替换以下内容:

    • POLICY_NAME:紧凑布置政策的名称。
  3. 运行以上命令。

Spot

在运行该命令之前,您可以选择添加紧凑布置政策的标志。

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 \
    --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=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-0,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-1,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-2,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-3,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-4,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-5,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-6,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-7,no-address \
    --provisioning-model=SPOT \
    --instance-termination-action=TERMINATION_ACTION \
    --maintenance-policy=TERMINATE \
    --no-restart-on-failure

请完成以下步骤:

  1. 替换以下内容:

    • NAME_PATTERN:要用于 A4 或 A3 Ultra 实例的名称格式。 例如,将 instance-# 用于名称模式会生成名称为 instance-1instance-2 等依次递增的 A4 或 A3 Ultra 实例,数量最多为 --count 指定的 A4 或 A3 Ultra 实例数量。
    • COUNT:要创建的 A4 或 A3 Ultra 实例数量。
    • MACHINE_TYPE:要用于 A4 或 A3 Ultra 实例的机器类型。指定 A4 或 A3 Ultra 机器类型。如需了解详情,请参阅 GPU 机器类型
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看受支持的操作系统列表,请参阅受支持的操作系统
    • IMAGE_PROJECT:操作系统映像的项目 ID。
    • REGION:指定提供您要使用的机器类型的区域。 如果您想指定紧凑布置政策,则必须使用与紧凑布置政策相同的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC NIC 的标准 VPC 网络和子网时指定的名称前缀。
    • RDMA_NAME_PREFIX:您在创建使用 RDMA NIC 的 VPC 网络和子网时指定的名称前缀。
    • TERMINATION_ACTION:当 Compute Engine 抢占实例时执行的操作(STOP [默认] 或 DELETE)。

  2. 可选:如果您选择使用紧凑布置政策,请向命令添加以下标志:

      --resource-policies=POLICY_NAME
    

    替换以下内容:

    • POLICY_NAME:紧凑布置政策的名称。
  3. 运行以上命令。

REST

如需批量创建 A4 或 A3 Ultra 实例,请向 instances.bulkInsert 方法发出 POST 请求。

您需要指定的参数取决于您为此部署使用的使用选项。选择与您的使用选项的配置模式对应的标签页。

受预留约束

在提交请求之前,您可以选择向请求正文添加 instanceProperties 子字段,以指定紧凑布置政策

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"
      }
    ],
    "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/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-0"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-1"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-2"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-3"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-4"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-5"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-6"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-7"
      }
     ],
    "reservationAffinity":{
        "consumeReservationType":"SPECIFIC_RESERVATION",
        "key":"compute.googleapis.com/reservation-name",
        "values":[
          "RESERVATION"
        ]
      },
    "scheduling":{
        "provisioningModel":"RESERVATION_BOUND",
        "instanceTerminationAction":"DELETE",
        "onHostMaintenance": "TERMINATE",
        "automaticRestart":true
      }
  }
}

请完成以下步骤:

  1. 替换以下内容:

    • PROJECT_ID:您要在其中创建 A4 或 A3 Ultra 实例的项目的 ID。
    • ZONE:指定您要使用的机器类型所在的可用区。如果您要指定紧凑布置政策,则必须使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • NAME_PATTERN:要用于 A4 或 A3 Ultra 实例的名称格式。 例如,将 instance-# 用于名称模式会生成名称为 instance-1instance-2 等依次递增的 A4 或 A3 Ultra 实例,数量最多为 --count 指定的 A4 或 A3 Ultra 实例数量。
    • COUNT:要创建的 A4 或 A3 Ultra 实例数量。
    • MACHINE_TYPE:用于 A4 或 A3 Ultra 实例的机器类型。指定 A4 或 A3 Ultra 机器类型。如需了解详情,请参阅 GPU 机器类型
    • VM_NAME:虚拟机的名称。
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • IMAGE_PROJECT:操作系统映像的项目 ID。
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看受支持的操作系统列表,请参阅受支持的操作系统
    • NETWORK_PROJECT_ID:网络的项目 ID。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC NIC 的标准 VPC 网络和子网时指定的名称前缀。
    • REGION:子网所在的区域。
    • RDMA_NAME_PREFIX:您在创建使用 RDMA NIC 的 VPC 网络和子网时指定的名称前缀。
    • RESERVATION:预留名称或预留中的特定块。如需获取预留名称或可用块,请参阅查看预留容量。根据您对实例布置的要求,请按以下方式之一操作:
      • 跨块或在单个块上创建实例:

        projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME

        此外,对于单个块,请应用指定了块共置 (maxDistance=2) 的紧凑布置政策。 然后,Compute Engine 会将该政策应用于预留,并在同一块上创建实例。

      • 在特定块上创建实例:

        projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
    • TERMINATION_ACTION:指示在预留期结束时,Compute Engine 是关停 (STOP) 还是删除 (DELETE) A4 或 A3 Ultra 实例。

  2. 可选:如果您选择使用紧凑布置政策,请将以下 instanceProperties 子字段添加到请求正文中:

        "resourcePolicies": [
          "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
        ]
    

    替换以下内容:

    • PROJECT_ID:紧凑布置政策的项目 ID。
    • REGION:紧凑布置政策所在的区域。
    • POLICY_NAME:紧凑布置政策的名称。
  3. 提交请求。

Spot

在提交请求之前,您可以选择向请求正文添加 instanceProperties 子字段,以指定紧凑布置政策

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"
      }
    ],
    "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/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-0"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-1"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-2"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-3"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-4"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-5"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-6"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-7"
      }
     ],
    "scheduling":
    {
      "provisioningModel": "SPOT",
      "instanceTerminationAction": "TERMINATION_ACTION",
      "onHostMaintenance": "TERMINATE",
      "automaticRestart": false
    }
  }
}

请完成以下步骤:

  1. 替换以下内容:

    • PROJECT_ID:您要在其中创建 A4 或 A3 Ultra 实例的项目的 ID。
    • ZONE:指定您要使用的机器类型所在的可用区。如果您要指定紧凑布置政策,则必须使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • NAME_PATTERN:要用于 A4 或 A3 Ultra 实例的名称格式。 例如,将 instance-# 用于名称模式会生成名称为 instance-1instance-2 等依次递增的 A4 或 A3 Ultra 实例,数量最多为 --count 指定的 A4 或 A3 Ultra 实例数量。
    • COUNT:要创建的 A4 或 A3 Ultra 实例数量。
    • MACHINE_TYPE:用于 A4 或 A3 Ultra 实例的机器类型。指定 A4 或 A3 Ultra 机器类型。如需了解详情,请参阅 GPU 机器类型
    • VM_NAME:虚拟机的名称。
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • IMAGE_PROJECT:操作系统映像的项目 ID。
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看受支持的操作系统列表,请参阅受支持的操作系统
    • NETWORK_PROJECT_ID:网络的项目 ID。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC NIC 的标准 VPC 网络和子网时指定的名称前缀。
    • REGION:子网所在的区域。
    • RDMA_NAME_PREFIX:您在创建使用 RDMA NIC 的 VPC 网络和子网时指定的名称前缀。
    • TERMINATION_ACTION:当 Compute Engine 抢占实例时执行的操作(STOP [默认] 或 DELETE)。

  2. 可选:如果您选择使用紧凑布置政策,请将以下 instanceProperties 子字段添加到请求正文中:

        "resourcePolicies": [
          "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
        ]
    

    替换以下内容:

    • PROJECT_ID:紧凑布置政策的项目 ID。
    • REGION:紧凑布置政策所在的区域。
    • POLICY_NAME:紧凑布置政策的名称。
  3. 提交请求。

如需详细了解批量创建虚拟机时的配置选项,请参阅 Compute Engine 文档中的批量创建虚拟机

后续步骤