创建使用 A3 High 或 A3 Mega 的 AI 优化型实例

本文档介绍了创建使用 A3 High 或 A3 Mega 加速器优化机器类型的独立虚拟机 (VM) 实例的步骤。如需详细了解这些机器类型,请参阅 Compute Engine 文档中的 A3 HighA3 Mega

如需了解创建虚拟机或集群的其他方式,请参阅概览页面。

准备工作

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

  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 权限

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

概览

使用 a3h 或 a3m 机器类型创建实例包括以下步骤:

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

创建 VPC 网络

如需为 GPU 虚拟机启用高效通信,您需要创建一个管理网络和一个或多个数据网络。管理网络用于外部访问(例如 SSH)和最通用的网络通信。数据网络用于不同虚拟机上 GPU 之间的高性能通信,例如远程直接内存访问 (RDMA) 流量。

对于这些 VPC 网络,我们建议将最大传输单元 (MTU) 设置为更大的值。较高的 MTU 值会增加数据包大小并降低数据包标头开销,从而增加载荷数据吞吐量。 如需详细了解如何创建 VPC 网络,请参阅创建和验证巨型帧 MTU 网络

创建管理网络、子网和防火墙规则

完成以下步骤以设置管理网络:

  1. 使用 networks create 命令创建管理网络:

    gcloud compute networks create NETWORK_NAME_PREFIX-mgmt-net \
        --project=PROJECT_ID \
        --subnet-mode=custom \
        --mtu=8244
    
  2. 使用 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
    
  3. 使用 firewall-rules create 命令创建防火墙规则。

    1. 为管理网络创建防火墙规则。

      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
      
    2. 创建 tcp:22 防火墙规则,以限制哪些来源 IP 地址可以使用 SSH 连接到您的虚拟机。

      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
      
    3. 创建可用于检查网络中数据传输问题的 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:用于 VPC 网络和子网的名称前缀。
  • PROJECT_ID:您的项目 ID。
  • REGION:要在其中创建网络的区域。
  • SSH_SOURCE_IP_RANGE:采用 CIDR 格式的 IP 范围。 用于指定哪些来源 IP 地址可以使用 SSH 连接到虚拟机。

创建数据网络、子网和防火墙规则

数据网络的数量因您要创建的 GPU 机器类型而异。

A3 Mega

A3 Mega 需要 8 个数据网络。如需创建 8 个数据网络,每个网络都包含子网和防火墙规则,请使用以下命令。

for N in $(seq 1 8); 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

A3 High

A3 High 需要 4 个数据网络。使用以下命令创建 4 个数据网络,每个网络都包含子网和防火墙规则。

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

可选:创建紧凑布置政策

您可以通过创建紧凑布置政策来指定虚拟机布置。当您将紧凑布置政策应用于虚拟机时,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 High 或 A3 Mega

如需创建 A3 High 或 A3 Mega 虚拟机,请使用以下方法之一。如果您选择使用紧凑布置政策,则必须使用 Google Cloud CLI 或 REST 创建虚拟机。

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

控制台

  1. 在 Google Cloud 控制台中,前往创建实例页面。

    转到“创建实例”

  2. 为您的虚拟机指定名称。请参阅资源命名惯例

  3. 选择要预留容量的区域可用区。查看可用的 GPU 区域和可用区列表。

  4. 点击 GPU 标签页,然后完成以下步骤:

    1. GPU 类型列表中,选择您的 GPU 类型。
      • 对于 A3 High 虚拟机,请选择 NVIDIA H100 80GB
      • 对于 A3 Mega 虚拟机,请选择 NVIDIA H100 MEGA 80GB
    2. GPU 数量列表中,选择 8
  5. 根据您要使用的配置模型完成以下步骤。

    灵活启动

    1. 预配模型部分的虚拟机预配模型列表中选择灵活启动
    2. 输入小时数字段中,输入您希望虚拟机运行的最长时间。该值必须介于 46 秒 (0.01) 和 7 天(168,即 168 小时)之间。

    3. 选择设置虚拟机创建等待时间

      根据工作负载的可用区要求,指定以下时长之一,以提高虚拟机创建请求的成功率:

      • 对地区有严格要求的工作负载:如果您的工作负载要求您在特定地区创建虚拟机,请指定介于 90 秒2 小时之间的时长。持续时间越长,获得资源的机会就越大。
      • 对可用区没有严格要求的工作负载:如果虚拟机可以在区域内的任何可用区中运行,请指定 0 秒的持续时间,或清除设置虚拟机创建等待时间复选框。此操作指定 Compute Engine 仅在资源可立即使用时才分配资源。如果虚拟机创建请求因资源不可用而失败,请在其他可用区中重试该请求。

    4. 虚拟机终止时字段中,选择在虚拟机的运行时长结束时是停止还是删除虚拟机:

      • 如需删除虚拟机,请选择删除
      • 如需停止虚拟机,请选择停止

    受预留约束

    1. 预配模型部分的虚拟机预配模型列表中,选择与预留绑定的

    2. 在导航菜单中,点击高级。然后,在预留部分中,点击选择预留。 此操作会打开一个窗格,其中列出了所选可用区内的可用预留。在预订列表中,完成以下步骤:

      1. 选择要用于虚拟机的预留。您还可以选择预留中的特定区块。
      2. 点击选择

    Spot

    1. 预配模型部分中,从虚拟机预配模型列表中选择 Spot
    2. 可选:如需选择 Compute Engine 抢占虚拟机时发生的终止操作,请完成以下步骤:

      1. 展开虚拟机预配模型高级设置部分。
      2. 虚拟机终止时列表中,选择以下选项之一:
        • 如需在抢占期间停止虚拟机,请选择停止(默认)。
        • 如需在抢占期间删除虚拟机,请选择删除
  6. 在导航菜单中,点击操作系统和存储空间,然后完成以下步骤:

    1. 点击更改。 系统会打开启动磁盘配置窗格。
    2. 公共映像标签页中,选择推荐的映像。如需查看推荐映像的列表,请参阅操作系统
    3. 如需确认您的启动磁盘选项,请点击选择
  7. 按如下方式配置服务账号和访问权限范围。在实例上运行的工作负载使用关联的服务账号来授权对其他 Google Cloud 服务的请求。

    1. 在导航菜单中,点击安全
    2. 服务账号列表中,选择要使用的服务账号。
    3. 对于访问权限范围,选择授予对所有 Cloud API 的完整访问权限选项。建议采用此最佳实践,因为这样一来,您就可以通过向服务账号添加或从中移除 IAM 角色来管理访问权限。如需了解详情,请参阅将服务账号关联到实例
  8. 如需创建多 NIC 虚拟机,请完成以下步骤。否则,如需创建单 NIC 虚拟机,请跳过这些步骤。

    1. 在导航菜单中,点击网络

    2. 网络接口部分中,完成以下步骤:

      1. 删除默认网络接口。如需删除该接口,请点击 删除
      2. 点击添加网络接口。使用此选项添加连接到您在上一部分中创建的 VPC 网络的网络接口。添加网络接口时,请注意以下事项:
        • 对于用于主机到主机通信的网络接口,请从网络子网列表中选择常规 VPC 网络和子网,并将网络接口卡列表设置为 gVNIC
        • 对于使用 GPUDirect-TCPXO (A3 Mega) 或 GPUDirect-TCPX (A3 High) 进行 GPU 到 GPU 通信的网络接口,请为每个接口选择相应的专用 VPC 网络和子网,并将这些网络接口的网络接口卡列表也设置为 gVNIC
  9. 要创建并启动该虚拟机,请点击创建

gcloud

如需创建 A3 High 或 A3 Mega 虚拟机,请使用 gcloud compute instances create 命令。

A3 Mega

如需创建虚拟机,请使用 gcloud compute instances create 命令

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

灵活启动

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

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 \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-5,subnet=GVNIC_NAME_PREFIX-sub-5,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-6,subnet=GVNIC_NAME_PREFIX-sub-6,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-7,subnet=GVNIC_NAME_PREFIX-sub-7,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-8,subnet=GVNIC_NAME_PREFIX-sub-8,no-address \
    --reservation-affinity=none \
    --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

请完成以下步骤:

  1. 替换以下内容:

    • INSTANCE_NAME:虚拟机的名称。
    • MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 GPU 机器类型
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 对于 A3 Mega 机器系列,我们强烈建议您使用 cos-121-lts 或更高版本的 Container-Optimized OS 映像并停用自动更新,或者使用 rocky-linux-8-optimized-gcp-nvidia-580 Rocky Linux 映像。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • IMAGE_PROJECT:操作系统映像的项目 ID。 例如,使用 cos-cloud 表示 cos-121-lts 或更高版本的 Container-Optimized OS 映像,或使用 rocky-linux-accelerator-cloud 表示 rocky-linux-8-optimized-gcp-nvidia-580 Rocky Linux 映像。
    • ZONE:您要使用的机器类型在其中可用的可用区。如需指定紧凑布置政策,请使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • DISK_TYPE:启动磁盘的类型。我们建议您使用 hyperdisk-balanced
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 VPC 网络和子网时指定的名称前缀。
    • REQUEST_VALID_FOR_DURATION:创建虚拟机的请求保持有效的时间。您必须将该值的格式设置为天数、小时数、分钟数或秒数,并分别添加对应的后缀 dhms。例如,指定 30m 表示 30 分钟,或指定 1h2m3s 表示 1 小时 2 分钟 3 秒。

      根据工作负载的可用区要求,指定以下时长之一,以提高虚拟机创建请求的成功率:

      • 对可用区有严格要求的工作负载:如果您的工作负载要求您在特定可用区中创建虚拟机,请指定 90 秒 (90s) 到 2 小时 (2h) 之间的时长。时长越长,获得资源的机会就越大。
      • 对可用区没有严格要求的工作负载:如果虚拟机可以在区域内的任何可用区中运行,则指定时长为零秒 (0s)。此操作指定 Compute Engine 仅在资源立即可用时才分配资源。如果虚拟机创建请求因资源不可用而失败,请在其他可用区中重试该请求。
    • MAX_RUN_DURATION:您希望请求的虚拟机运行的时长。您必须将该值的格式设置为天数、小时数、分钟数或秒数,并分别添加对应的后缀 dhms。该值必须介于 10 分钟到 7 天之间。

    • TERMINATION_ACTION:指示在运行时长结束时,Compute Engine 是关停 (STOP) 还是删除 (DELETE) 虚拟机。

  2. 可选:如需使用紧凑布置政策,请添加以下标志:

      --resource-policies=POLICY_NAME
    

    替换以下内容:

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

受预留约束

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

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 \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-5,subnet=GVNIC_NAME_PREFIX-sub-5,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-6,subnet=GVNIC_NAME_PREFIX-sub-6,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-7,subnet=GVNIC_NAME_PREFIX-sub-7,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-8,subnet=GVNIC_NAME_PREFIX-sub-8,no-address \
    --reservation-affinity=specific \
    --reservation=RESERVATION \
    --provisioning-model=RESERVATION_BOUND \
    --instance-termination-action=TERMINATION_ACTION \
    --maintenance-policy=TERMINATE \
    --restart-on-failure

请完成以下步骤:

  1. 替换以下内容:

    • INSTANCE_NAME:虚拟机的名称。
    • MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 GPU 机器类型
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 对于 A3 Mega 机器系列,我们强烈建议您使用 cos-121-lts 或更高版本的 Container-Optimized OS 映像并停用自动更新,或者使用 rocky-linux-8-optimized-gcp-nvidia-580 Rocky Linux 映像。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • IMAGE_PROJECT:操作系统映像的项目 ID。 例如,使用 cos-cloud 表示 cos-121-lts 或更高版本的 Container-Optimized OS 映像,或使用 rocky-linux-accelerator-cloud 表示 rocky-linux-8-optimized-gcp-nvidia-580 Rocky Linux 映像。
    • ZONE:您要使用的机器类型在其中可用的可用区。如需指定紧凑布置政策,请使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • DISK_TYPE:启动磁盘的类型。我们建议您使用 hyperdisk-balanced
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 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) 虚拟机。

  2. 可选:如需使用紧凑布置政策,请添加以下标志:

      --resource-policies=POLICY_NAME
    

    替换以下内容:

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

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 \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-5,subnet=GVNIC_NAME_PREFIX-sub-5,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-6,subnet=GVNIC_NAME_PREFIX-sub-6,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-7,subnet=GVNIC_NAME_PREFIX-sub-7,no-address \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-8,subnet=GVNIC_NAME_PREFIX-sub-8,no-address \
    --provisioning-model=SPOT \
    --instance-termination-action=TERMINATION_ACTION \
    --maintenance-policy=TERMINATE \
    --no-restart-on-failure

请完成以下步骤:

  1. 替换以下内容:

    • INSTANCE_NAME:虚拟机的名称。
    • MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 GPU 机器类型
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 对于 A3 Mega 机器系列,我们强烈建议您使用 cos-121-lts 或更高版本的 Container-Optimized OS 映像并停用自动更新,或者使用 rocky-linux-8-optimized-gcp-nvidia-580 Rocky Linux 映像。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • IMAGE_PROJECT:操作系统映像的项目 ID。 例如,使用 cos-cloud 表示 cos-121-lts 或更高版本的 Container-Optimized OS 映像,或使用 rocky-linux-accelerator-cloud 表示 rocky-linux-8-optimized-gcp-nvidia-580 Rocky Linux 映像。
    • ZONE:您要使用的机器类型在其中可用的可用区。如需指定紧凑布置政策,请使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • DISK_TYPE:启动磁盘的类型。我们建议您使用 hyperdisk-balanced
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 VPC 网络和子网时指定的名称前缀。
    • TERMINATION_ACTION:当 Compute Engine 抢占实例时执行的操作(STOP [默认] 或 DELETE)。

  2. 可选:如需使用紧凑布置政策,请添加以下标志:

      --resource-policies=POLICY_NAME
    

    替换以下内容:

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

A3 High

如需创建虚拟机,请使用 gcloud compute instances create 命令

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

灵活启动

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

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 \
    --reservation-affinity=none \
    --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

请完成以下步骤:

  1. 替换以下内容:

    • INSTANCE_NAME:虚拟机的名称。
    • MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 GPU 机器类型
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 对于 A3 High 机器系列,我们强烈建议您使用 cos-121-lts 或更高版本的 Container-Optimized OS 映像,并停用自动更新。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • IMAGE_PROJECT:操作系统映像的项目 ID。 例如,对于 cos-121-lts 或更高版本的 Container-Optimized OS 映像,请使用 cos-cloud
    • ZONE:您要使用的机器类型在其中可用的可用区。如需指定紧凑布置政策,请使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • DISK_TYPE:启动磁盘的类型。我们建议您使用 hyperdisk-balanced
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 VPC 网络和子网时指定的名称前缀。
    • REQUEST_VALID_FOR_DURATION:创建虚拟机的请求保持有效的时间。您必须将该值的格式设置为天数、小时数、分钟数或秒数,并分别添加对应的后缀 dhms。例如,指定 30m 表示 30 分钟,或指定 1h2m3s 表示 1 小时 2 分钟 3 秒。

      根据工作负载的可用区要求,指定以下时长之一,以提高虚拟机创建请求的成功率:

      • 对可用区有严格要求的工作负载:如果您的工作负载要求您在特定可用区中创建虚拟机,请指定 90 秒 (90s) 到 2 小时 (2h) 之间的时长。时长越长,获得资源的机会就越大。
      • 对可用区没有严格要求的工作负载:如果虚拟机可以在区域内的任何可用区中运行,则指定时长为零秒 (0s)。此操作指定 Compute Engine 仅在资源立即可用时才分配资源。如果虚拟机创建请求因资源不可用而失败,请在其他可用区中重试该请求。
    • MAX_RUN_DURATION:您希望请求的虚拟机运行的时长。您必须将该值的格式设置为天数、小时数、分钟数或秒数,并分别添加对应的后缀 dhms。该值必须介于 10 分钟到 7 天之间。

    • TERMINATION_ACTION:指示在运行时长结束时,Compute Engine 是关停 (STOP) 还是删除 (DELETE) 虚拟机。

  2. 可选:如需使用紧凑布置政策,请添加以下标志:

      --resource-policies=POLICY_NAME
    

    替换以下内容:

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

受预留约束

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

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 \
    --reservation-affinity=specific \
    --reservation=RESERVATION \
    --provisioning-model=RESERVATION_BOUND \
    --instance-termination-action=TERMINATION_ACTION \
    --maintenance-policy=TERMINATE \
    --restart-on-failure

请完成以下步骤:

  1. 替换以下内容:

    • INSTANCE_NAME:虚拟机的名称。
    • MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 GPU 机器类型
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 对于 A3 High 机器系列,我们强烈建议您使用 cos-121-lts 或更高版本的 Container-Optimized OS 映像,并停用自动更新。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • IMAGE_PROJECT:操作系统映像的项目 ID。 例如,对于 cos-121-lts 或更高版本的 Container-Optimized OS 映像,请使用 cos-cloud
    • ZONE:您要使用的机器类型在其中可用的可用区。如需指定紧凑布置政策,请使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • DISK_TYPE:启动磁盘的类型。我们建议您使用 hyperdisk-balanced
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 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) 虚拟机。

  2. 可选:如需使用紧凑布置政策,请添加以下标志:

      --resource-policies=POLICY_NAME
    

    替换以下内容:

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

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

请完成以下步骤:

  1. 替换以下内容:

    • INSTANCE_NAME:虚拟机的名称。
    • MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 GPU 机器类型
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 对于 A3 High 机器系列,我们强烈建议您使用 cos-121-lts 或更高版本的 Container-Optimized OS 映像,并停用自动更新。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • IMAGE_PROJECT:操作系统映像的项目 ID。 例如,对于 cos-121-lts 或更高版本的 Container-Optimized OS 映像,请使用 cos-cloud
    • ZONE:您要使用的机器类型在其中可用的可用区。如需指定紧凑布置政策,请使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • DISK_TYPE:启动磁盘的类型。我们建议您使用 hyperdisk-balanced
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 VPC 网络和子网时指定的名称前缀。
    • TERMINATION_ACTION:当 Compute Engine 抢占实例时执行的操作(STOP [默认] 或 DELETE)。

  2. 可选:如需使用紧凑布置政策,请添加以下标志:

      --resource-policies=POLICY_NAME
    

    替换以下内容:

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

REST

如需创建 A3 High 或 A3 Mega 虚拟机,请向 instances.insert 方法发送 POST 请求。

A3 Mega

如需创建虚拟机,请向 instances.insert 方法发出 POST 请求。

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

灵活启动

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

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"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-5",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-5"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-6",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-6"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-7",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-7"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-8",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-8"
      },
  "reservationAffinity":{
    "consumeReservationType": "NO_RESERVATION",
  },
  "scheduling":{
    "provisioningModel": "FLEX_START",
    "requestValidForDuration": {
      "seconds": REQUEST_VALID_FOR_DURATION
    },
    "maxRunDuration": {
      "seconds": MAX_RUN_DURATION
    },
    "instanceTerminationAction": "TERMINATION_ACTION",
    "onHostMaintenance": "TERMINATE",
  }
}

请完成以下步骤:

  1. 替换以下内容:

    • PROJECT_ID:您要在其中创建虚拟机的项目的 ID。
    • ZONE:您要使用的机器类型在其中可用的可用区。如果您要指定紧凑布置政策,则必须使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 GPU 机器类型
    • INSTANCE_NAME:虚拟机的名称。
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • DISK_TYPE:启动磁盘的类型。我们建议您使用 hyperdisk-balanced
    • IMAGE_PROJECT:操作系统映像的项目 ID。 例如,使用 cos-cloud 表示 cos-121-lts 或更高版本的 Container-Optimized OS 映像,或使用 rocky-linux-accelerator-cloud 表示 rocky-linux-8-optimized-gcp-nvidia-580 Rocky Linux 映像。
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 对于 A3 Mega 机器系列,我们强烈建议您使用 cos-121-lts 或更高版本的 Container-Optimized OS 映像并停用自动更新,或者使用 rocky-linux-8-optimized-gcp-nvidia-580 Rocky Linux 映像。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • NETWORK_PROJECT_ID:网络的项目 ID。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 VPC 网络和子网时指定的名称前缀。
    • REGION:子网所在的区域。
    • REQUEST_VALID_FOR_DURATION:创建虚拟机的请求保持有效的时长(以秒为单位)。

      根据工作负载的可用区要求,指定以下时长之一,以提高虚拟机创建请求的成功率:

      • 对可用区有严格要求的工作负载:如果您的工作负载要求您在特定可用区中创建虚拟机,请指定 90 秒 (90) 到 2 小时 (7200) 之间的时长。时长越长,获得资源的机会就越大。
      • 对可用区没有严格要求的工作负载:如果虚拟机可以在区域内的任何可用区中运行,则指定时长为零秒 (0)。此操作指定 Compute Engine 仅在资源立即可用时才分配资源。如果虚拟机创建请求因资源不可用而失败,请在其他可用区中重试该请求。
    • MAX_RUN_DURATION:您希望请求的虚拟机运行的时长。您必须将该值格式化为秒数。例如,指定 86400 表示 86,400 秒(24 小时)。该值必须介于 10 分钟到 7 天之间。

    • TERMINATION_ACTION:指示在运行时长结束时,Compute Engine 是关停 (STOP) 还是删除 (DELETE) 虚拟机。

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

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

    替换以下内容:

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

受预留约束

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

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"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-5",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-5"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-6",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-6"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-7",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-7"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-8",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-8"
      },
  "reservationAffinity":{
    "consumeReservationType": "SPECIFIC_RESERVATION",
    "key": "compute.googleapis.com/reservation-name",
    "values":[
      "RESERVATION"
    ]
  },
  "scheduling":{
    "provisioningModel": "RESERVATION_BOUND",
    "instanceTerminationAction": "TERMINATION_ACTION",
    "onHostMaintenance": "TERMINATE",
    "automaticRestart": true
  }
}

请完成以下步骤:

  1. 替换以下内容:

    • PROJECT_ID:您要在其中创建虚拟机的项目的 ID。
    • ZONE:您要使用的机器类型在其中可用的可用区。如果您要指定紧凑布置政策,则必须使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 GPU 机器类型
    • INSTANCE_NAME:虚拟机的名称。
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • DISK_TYPE:启动磁盘的类型。我们建议您使用 hyperdisk-balanced
    • IMAGE_PROJECT:操作系统映像的项目 ID。 例如,使用 cos-cloud 表示 cos-121-lts 或更高版本的 Container-Optimized OS 映像,或使用 rocky-linux-accelerator-cloud 表示 rocky-linux-8-optimized-gcp-nvidia-580 Rocky Linux 映像。
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 对于 A3 Mega 机器系列,我们强烈建议您使用 cos-121-lts 或更高版本的 Container-Optimized OS 映像并停用自动更新,或者使用 rocky-linux-8-optimized-gcp-nvidia-580 Rocky Linux 映像。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • NETWORK_PROJECT_ID:网络的项目 ID。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 VPC 网络和子网时指定的名称前缀。
    • REGION:子网所在的区域。
    • 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) 虚拟机。

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

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

    替换以下内容:

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

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"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-5",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-5"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-6",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-6"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-7",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-7"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-8",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-8"
      },
  "scheduling":
  {
    "provisioningModel": "SPOT",
    "instanceTerminationAction": "TERMINATION_ACTION",
    "onHostMaintenance": "TERMINATE",
    "automaticRestart": false
  }
}

请完成以下步骤:

  1. 替换以下内容:

    • PROJECT_ID:您要在其中创建虚拟机的项目的 ID。
    • ZONE:您要使用的机器类型在其中可用的可用区。如果您要指定紧凑布置政策,则必须使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 GPU 机器类型
    • INSTANCE_NAME:虚拟机的名称。
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • DISK_TYPE:启动磁盘的类型。我们建议您使用 hyperdisk-balanced
    • IMAGE_PROJECT:操作系统映像的项目 ID。 例如,使用 cos-cloud 表示 cos-121-lts 或更高版本的 Container-Optimized OS 映像,或使用 rocky-linux-accelerator-cloud 表示 rocky-linux-8-optimized-gcp-nvidia-580 Rocky Linux 映像。
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 对于 A3 Mega 机器系列,我们强烈建议您使用 cos-121-lts 或更高版本的 Container-Optimized OS 映像并停用自动更新,或者使用 rocky-linux-8-optimized-gcp-nvidia-580 Rocky Linux 映像。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • NETWORK_PROJECT_ID:网络的项目 ID。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 VPC 网络和子网时指定的名称前缀。
    • REGION:子网所在的区域。
    • TERMINATION_ACTION:当 Compute Engine 抢占实例时执行的操作(STOP [默认] 或 DELETE)。

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

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

    替换以下内容:

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

A3 High

如需创建虚拟机,请向 instances.insert 方法发出 POST 请求。

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

灵活启动

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

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"
      },
  "reservationAffinity":{
    "consumeReservationType": "NO_RESERVATION",
  },
  "scheduling":{
    "provisioningModel": "FLEX_START",
    "requestValidForDuration": {
      "seconds": REQUEST_VALID_FOR_DURATION
    },
    "maxRunDuration": {
      "seconds": MAX_RUN_DURATION
    },
    "instanceTerminationAction": "TERMINATION_ACTION",
    "onHostMaintenance": "TERMINATE",
  }
}

请完成以下步骤:

  1. 替换以下内容:

    • PROJECT_ID:您要在其中创建虚拟机的项目的 ID。
    • ZONE:您要使用的机器类型在其中可用的可用区。如果您要指定紧凑布置政策,则必须使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 GPU 机器类型
    • INSTANCE_NAME:虚拟机的名称。
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • DISK_TYPE:启动磁盘的类型。我们建议您使用 hyperdisk-balanced
    • IMAGE_PROJECT:操作系统映像的项目 ID。 例如,对于 cos-121-lts 或更高版本的 Container-Optimized OS 映像,请使用 cos-cloud
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 对于 A3 High 机器系列,我们强烈建议您使用 cos-121-lts 或更高版本的 Container-Optimized OS 映像,并停用自动更新。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • NETWORK_PROJECT_ID:网络的项目 ID。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 VPC 网络和子网时指定的名称前缀。
    • REGION:子网所在的区域。
    • REQUEST_VALID_FOR_DURATION:创建虚拟机的请求保持有效的时长(以秒为单位)。

      根据工作负载的可用区要求,指定以下时长之一,以提高虚拟机创建请求的成功率:

      • 对可用区有严格要求的工作负载:如果您的工作负载要求您在特定可用区中创建虚拟机,请指定 90 秒 (90) 到 2 小时 (7200) 之间的时长。时长越长,获得资源的机会就越大。
      • 对可用区没有严格要求的工作负载:如果虚拟机可以在区域内的任何可用区中运行,则指定时长为零秒 (0)。此操作指定 Compute Engine 仅在资源立即可用时才分配资源。如果虚拟机创建请求因资源不可用而失败,请在其他可用区中重试该请求。
    • MAX_RUN_DURATION:您希望请求的虚拟机运行的时长。您必须将该值格式化为秒数。例如,指定 86400 表示 86,400 秒(24 小时)。该值必须介于 10 分钟到 7 天之间。

    • TERMINATION_ACTION:指示在运行时长结束时,Compute Engine 是关停 (STOP) 还是删除 (DELETE) 虚拟机。

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

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

    替换以下内容:

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

受预留约束

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

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"
      },
  "reservationAffinity":{
    "consumeReservationType": "SPECIFIC_RESERVATION",
    "key": "compute.googleapis.com/reservation-name",
    "values":[
      "RESERVATION"
    ]
  },
  "scheduling":{
    "provisioningModel": "RESERVATION_BOUND",
    "instanceTerminationAction": "TERMINATION_ACTION",
    "onHostMaintenance": "TERMINATE",
    "automaticRestart": true
  }
}

请完成以下步骤:

  1. 替换以下内容:

    • PROJECT_ID:您要在其中创建虚拟机的项目的 ID。
    • ZONE:您要使用的机器类型在其中可用的可用区。如果您要指定紧凑布置政策,则必须使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 GPU 机器类型
    • INSTANCE_NAME:虚拟机的名称。
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • DISK_TYPE:启动磁盘的类型。我们建议您使用 hyperdisk-balanced
    • IMAGE_PROJECT:操作系统映像的项目 ID。 例如,对于 cos-121-lts 或更高版本的 Container-Optimized OS 映像,请使用 cos-cloud
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 对于 A3 High 机器系列,我们强烈建议您使用 cos-121-lts 或更高版本的 Container-Optimized OS 映像,并停用自动更新。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • NETWORK_PROJECT_ID:网络的项目 ID。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 VPC 网络和子网时指定的名称前缀。
    • REGION:子网所在的区域。
    • 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) 虚拟机。

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

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

    替换以下内容:

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

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
  }
}

请完成以下步骤:

  1. 替换以下内容:

    • PROJECT_ID:您要在其中创建虚拟机的项目的 ID。
    • ZONE:您要使用的机器类型在其中可用的可用区。如果您要指定紧凑布置政策,则必须使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 GPU 机器类型
    • INSTANCE_NAME:虚拟机的名称。
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • DISK_TYPE:启动磁盘的类型。我们建议您使用 hyperdisk-balanced
    • IMAGE_PROJECT:操作系统映像的项目 ID。 例如,对于 cos-121-lts 或更高版本的 Container-Optimized OS 映像,请使用 cos-cloud
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 对于 A3 High 机器系列,我们强烈建议您使用 cos-121-lts 或更高版本的 Container-Optimized OS 映像,并停用自动更新。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • NETWORK_PROJECT_ID:网络的项目 ID。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 VPC 网络和子网时指定的名称前缀。
    • REGION:子网所在的区域。
    • TERMINATION_ACTION:当 Compute Engine 抢占实例时执行的操作(STOP [默认] 或 DELETE)。

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

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

    替换以下内容:

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

后续步骤