创建启用了 Advanced Compute Images 的实例

您可以创建使用高级计算映像的实例,为人工智能 (AI)、机器学习 (ML) 和高性能计算 (HPC) 工作负载提供优化的环境。您可以使用以下接口:

如需了解 Advanced Compute Images,请参阅 Advanced Compute Images 概览

准备工作

  • 如果您尚未设置身份验证,请进行设置。身份验证用于验证您的身份,以便访问 Google Cloud 服务和 API。如需从本地开发环境运行代码或示例,您可以通过选择以下选项之一向 Compute Engine 进行身份验证:

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

    控制台

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

    gcloud

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

      gcloud init
  • 设置默认区域和可用区

所需的角色

如需获得创建实例所需的权限,请让您的管理员为您授予项目的 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 权限

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

快速入门

本教程介绍了如何创建使用高级计算映像来配置和自定义客机操作系统的 A3 UltraA4 实例。

前提条件

在创建实例之前,请完成以下任务,以便创建 A3 Ultra 和 A4 实例:

  1. 获取 A3 Ultra 或 A4 实例的资源容量
  2. 创建 VPC 网络
  3. 可选:创建紧凑布置政策

使用 Advanced Compute Images 创建计算实例

完成前提任务后,您可以使用以下任一方法来创建实例。

控制台

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

    转到“创建实例”

    如果出现提示,请选择您的项目并点击继续。 系统会显示创建实例页面,并显示机器配置窗格。

  2. 机器配置窗格中,执行以下操作:

    1. 名称字段中,指定计算实例的名称。如需了解详情,请参阅资源命名惯例
    2. 为实例选择区域可用区。如果您已预留计算资源,则所选的区域和可用区必须与预留的区域和可用区一致。

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

      1. GPU 类型列表中,选择您的 GPU 类型。
        • 对于 A4 实例,选择 NVIDIA B200
        • 对于 A3 Ultra 实例,选择 NVIDIA H200 141GB
      2. GPU 数量列表中,选择 8
      3. 可选:选择其他机器类型。
  3. 在导航菜单中,点击操作系统和存储空间。在显示的操作系统和存储空间窗格中,完成以下步骤:

    1. 点击更改。系统会显示启动磁盘窗格,并显示公共映像标签页。
    2. 操作系统列表中,选择高级计算映像
    3. 版本列表中,选择操作系统版本。
    4. 可选:在启动磁盘类型列表中,选择启动磁盘的类型。
    5. 可选:为启动磁盘指定其他属性,例如磁盘大小。
    6. 可选:对于高级配置选项,展开 显示高级配置部分。
    7. 如需确认您的启动磁盘选项并返回操作系统和存储空间窗格,请点击选择
  4. 在导航菜单中,点击网络。系统随即会显示网络窗格。

  5. 可选:如需配置从外部 Google Cloud访问实例,请完成以下步骤:

    1. 前往防火墙部分。
    2. 如需允许 HTTP 或 HTTPS 流量流向计算实例,请选择允许 HTTP 流量允许 HTTPS 流量

      Compute Engine 会向您的计算实例中添加网络标记,并创建对应的入站流量防火墙规则,该规则允许 tcp:80 (HTTP) 或 tcp:443 (HTTPS) 上的所有传入流量。网络标记可将防火墙规则与实例相关联。如需了解详情,请参阅 Cloud Next Generation Firewall 文档中的防火墙规则概览

  6. 如需创建多 NIC 实例,请在网络窗格中完成以下步骤。对于单 NIC 实例,请跳过这些步骤。

    1. 网络接口部分中,完成以下步骤:
    2. 删除默认网络接口。如需删除该接口,请点击 删除
    3. 点击添加网络接口。使用此选项添加连接到您在上一部分中创建的 VPC 网络的网络接口。添加网络接口时,请注意以下事项:

      • 对于用于主机到主机通信的网络接口,请从网络子网列表中选择常规 VPC 网络和子网,并将网络接口卡列表设置为 gVNIC

      • 对于用于 GPU 到 GPU 通信的网络接口,请从网络子网列表中选择 RoCE VPC 网络和子网,并将这些网络接口的网络接口卡列表设置为 MRDMA

  7. 在导航菜单中,点击高级。然后,根据您要使用的配置模型完成以下步骤。

    灵活启动

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

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

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

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

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

      • 如需删除实例,请选择删除
      • 如需停止实例,请选择停止

    受预留约束

    1. 点击选择预留。此操作会打开一个窗格,其中列出了所选可用区内的可用预留。在预订列表中,完成以下步骤:

      1. 选择要用于计算实例的预留。您还可以选择预留中的特定区块。
      2. 点击选择

    Spot

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

      1. 展开虚拟机预配模型高级设置部分。
      2. 虚拟机终止时列表中,选择以下选项之一:
      3. 如需在抢占期间停止 Spot 虚拟机,请选择停止(默认)。
      4. 如需在抢占期间删除 Spot 虚拟机,请选择删除
  8. 要创建并启动该实例,请点击创建

gcloud

如需创建虚拟机,请使用 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=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=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:您要使用的操作系统映像所属的映像系列。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • IMAGE_PROJECT:操作系统映像的项目 ID。
    • ZONE:您要使用的机器类型在其中可用的可用区。如需指定紧凑布置政策,请使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 VPC 网络和子网时指定的名称前缀。
    • RDMA_NAME_PREFIX:您在创建使用 RDMA NIC 的 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=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. 替换以下内容:

    • INSTANCE_NAME:虚拟机的名称。
    • MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 GPU 机器类型
    • IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看受支持的操作系统列表,请参阅操作系统详细信息
    • IMAGE_PROJECT:操作系统映像的项目 ID。
    • ZONE:您要使用的机器类型在其中可用的可用区。如需指定紧凑布置政策,请使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性
    • DISK_SIZE:启动磁盘的大小(以 GB 为单位)。
    • GVNIC_NAME_PREFIX:您在创建使用 gVNIC 的标准 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) 虚拟机。

  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=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. 替换以下内容:

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

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

      --resource-policies=POLICY_NAME
    

    替换以下内容:

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

一段时间后,计算实例将创建完成。如需验证实例配置并查看其状态,请运行以下命令:

gcloud compute instances describe INSTANCE_NAME

配置 Spot 虚拟机

如果您创建了 Spot 虚拟机,请完成以下步骤:

访问计算实例

创建计算实例后,该实例会自动启动。如需访问实例,请执行以下操作之一:

控制台

  1. 在 Google Cloud 控制台中,前往虚拟机实例页面。

    转到虚拟机实例

  2. 点击相应计算实例的名称。

  3. 远程访问部分中,点击第一个下拉列表,然后选择您希望使用哪种方式访问该实例。

Compute Engine 会传播您的 SSH 密钥并创建您的用户。如需了解详情,请参阅连接到 Linux 虚拟机

gcloud

如需使用 SSH 访问实例,请使用 gcloud compute ssh 命令

gcloud compute ssh INSTANCE_NAME --zone ZONE

Compute Engine 会传播您的 SSH 密钥并创建您的用户。如需了解详情,请参阅连接到 Linux 虚拟机

清理

为避免系统因本快速入门中使用的资源向您的 Google Cloud 账号收取费用,请删除您创建的所有计算实例和所有附加资源。

控制台

  1. 在 Google Cloud 控制台中,前往虚拟机实例页面。

    进入“虚拟机实例”

  2. 选择要删除的实例。

  3. 点击 删除

  4. 在对话框中,执行以下操作:

    1. 可选:如需在未执行平滑关停的情况下删除实例,或结束正在进行的平滑关停,请选中跳过安全关停(如果适用)复选框。

    2. 请点击删除来确认操作。

  5. 如需删除已删除实例使用的磁盘,请前往磁盘页面,然后执行以下步骤:

    转到“磁盘”

    1. 选择要删除的磁盘。您选择的磁盘在使用方列中不能有值。

    2. 点击 删除

    3. 请点击删除来确认操作。

gcloud

如需删除同一可用区中的一个或多个实例,请使用 gcloud compute instances delete 命令。如需强制删除挂接到一个或多个实例的磁盘,请添加 --delete-disks 标志:

gcloud compute instances delete INSTANCE_NAMES \
        --delete-disks=DELETE_DISK_TYPE \
        --zone=ZONE

替换以下内容:

  • INSTANCE_NAMES:以空格分隔的实例名称列表,例如 instance-01 instance-02 instance-03

  • ZONE:实例所在的可用区。

  • DELETE_DISK_TYPE:指定以下某个值:

    • 如需删除挂接的启动永久性存储和非启动永久性存储,请执行以下操作:all
    • 如需仅删除挂接的启动永久性存储,请使用以下命令:boot
    • 如需仅删除非启动永久性存储,请使用以下命令:data

基于高级计算映像创建自定义映像

您可以创建基于高级计算映像的自定义映像。然后,您可以在为工作负载和应用创建新的计算实例时使用该自定义映像。

如需创建自定义映像,请完成以下任务:

  1. 为映像配置存储位置。如需创建、修改和删除存储在 Cloud Storage 中的操作系统映像,您必须拥有 roles/compute.storageAdmin 角色。

  2. 使用 Advanced Compute Images 创建计算实例

  3. 根据计算实例的需要自定义客机操作系统。

  4. 停止计算实例,以防止向磁盘写入任何数据。如果您无法停止实例,请完成尽可能减少永久性磁盘的数据写入中的步骤。

  5. 停用启动磁盘的自动删除选项

  6. 使用计算实例的启动磁盘作为来源磁盘创建自定义映像。您可以使用 Google Cloud 控制台Google Cloud CLI 执行此操作。

    控制台

    1. 在 Google Cloud 控制台中,前往映像页面。

      转到“映像”

    2. 点击创建映像

    3. 为您的映像指定名称

    4. 来源磁盘下,选择使用高级计算映像的计算实例的启动磁盘的名称。

      如果计算实例未停止,请选择保持实例运行,以确认您要在实例运行时创建映像。您之前应已完成相关步骤,以尽可能减少对启动磁盘的写入。

    5. 基于来源磁盘位置(默认)下拉列表中,指定自定义映像的存储位置。例如,指定 us 可将映像存储在 us 多区域中,或指定 us-central1 可将自定义映像存储在 us-central1 区域中。

      如果您未选择位置,Compute Engine 会将映像存储在最靠近自定义映像来源位置的多区域中。

    6. 可选:为映像指定其他属性:

      • 系列:这个新映像所属的映像系列
      • 说明:自定义映像的说明。
      • 标签:用于将资源组织在一起的标签
    7. 指定加密密钥。您可以选择Google-owned and Google-managed encryption key 或 Cloud Key Management Service (Cloud KMS) 密钥。如果未指定加密密钥,则系统会使用 Google-owned and Google-managed encryption key对映像进行加密。

    8. 点击创建来创建映像。

    gcloud

    使用 gcloud compute images create 命令创建自定义映像。

    --force 标志是一个可选标志,可让您根据正在运行的实例创建映像。默认情况下,您无法根据正在运行的实例创建映像。只有当您确定要在实例正在运行的情况下创建映像时,才可指定此标志。

    gcloud compute images create IMAGE_NAME \
        --source-disk=SOURCE_DISK \
        --source-disk-zone=ZONE \
        [--family=IMAGE_FAMILY] \
        [--storage-location=LOCATION] \
        [--force]
    

    请替换以下内容:

    • IMAGE_NAME:新映像的名称
    • SOURCE_DISK:要从中创建映像的磁盘。
    • ZONE:磁盘所在的可用区。
    • IMAGE_FAMILY:可选:用于指定此映像所属的映像系列的标志。
    • LOCATION:可选:用于指定在其中存储此映像的单区域或多区域的标志。例如,指定 us 可将映像存储在 us 多区域中,或指定 us-central1 可将其存储在 us-central1 区域中。如果您未选择位置,Compute Engine 会将映像存储在最接近映像来源位置的多区域中。

如需详细了解如何创建自定义映像,请参阅创建自定义映像

共享映像

创建自定义映像后,您可以在多个项目之间共享该映像。如果您允许其他项目中的用户使用您的自定义映像,那么他们可以通过在其请求中指定该映像的项目来访问这些映像。

将 Advanced Compute Images 与实例模板搭配使用

您可以创建一个指定高级计算映像的实例模板,然后使用该模板执行以下操作:

创建实例模板的限制

创建实例模板时,请注意以下限制:

  • gcloud CLI 和 REST 支持实例模板中位于 nic0 以外接口的共享 VPC,但Google Cloud 控制台不支持。
  • 您无法更新现有实例模板,也无法在创建实例模板后对其进行更改。如果实例模板过期,或者您需要更改配置,请创建一个新的实例模板。
  • 如果您要在实例模板中指定映像系列,则无法使用 Google Cloud 控制台。您可以改用 Google Cloud CLI 或 REST。
  • 您可以使用实例模板创建具有 Hyperdisk Balanced 启动磁盘(位于存储池中)的计算实例,但前提是该存储池与实例位于同一可用区中。
  • 您无法使用全球实例模板创建具有存储池中的非启动磁盘的计算实例。
  • 如需创建区域级实例模板,您在模板中指定的 GPU 类型必须在指定区域的至少一个可用区中可用。

创建实例模板

您在创建单个计算实例的请求中指定的大多数实例属性也可以为实例模板指定,包括任何实例元数据、启动脚本、永久性磁盘和服务账号。实例模板的必需信息包括机器类型、启动磁盘和网络。

您可以使用 Google Cloud 控制台或 Google Cloud CLI 创建使用高级计算映像的区域级或全局级实例模板。

如需创建实例模板,您的用户账号必须已获得调用 instanceTemplates.insert 方法所需的所有权限。

以下部分介绍了如何创建实例模板,以便与托管式实例组 (MIG)、单个 Compute 实例或预留搭配使用。如需创建与 AI Hypercomputer 搭配使用的实例模板,请改为按照创建使用 A4 或 A3 Ultra 机器类型的 AI 优化 MIG 中的说明操作。

创建 A3 Ultra 或 A4 实例所需的其他资源

在为使用高级计算映像的实例创建实例模板之前,您必须先创建将在实例模板中指定的资源。完成前提条件中列出的任务,以创建这些资源。

创建指定了高级计算映像的实例模板

您可以使用 Google Cloud 控制台或 gcloud CLI 命令创建实例模板。

控制台

  1. 在 Google Cloud 控制台中,转到实例模板页面。

    转到“实例模板”

  2. 点击创建实例模板

  3. 名称字段中,输入实例模板的名称。

  4. 按如下方式选择位置

    1. 如需跨区域使用实例模板,请选择全球级(默认)。
    2. 如需减少跨区域依赖项,请选择区域级,然后选择要在其中创建实例模板的区域
  5. 机器配置部分中,执行以下操作:

    1. 点击 GPU 标签页。
    2. GPU 类型列表中,选择 GPU 类型。对于 A4 实例,请选择 NVIDIA B200;对于 A3 Ultra 实例,请选择 NVIDIA H200 141GB
    3. GPU 数量列表中,选择 8。
    4. 可选:选择其他机器类型(而非默认类型)。
  6. 启动磁盘部分,点击更改,然后执行以下操作:

    1. 操作系统列表中,选择高级计算映像
    2. 版本列表中,选择操作系统版本。
    3. 可选:为启动磁盘指定其他属性,例如磁盘大小。
  7. 点击创建,以创建实例模板。

gcloud

如需创建区域级或全球实例模板,请使用 instance-templates create 命令。对于区域级实例模板,您必须使用 --instance-template-region 标志来设置模板的区域。

为 GPU 实例创建实例模板时,您必须将 --maintenance-policy 标志设置为 TERMINATE

  • 使用以下命令创建区域级实例模板。

    gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
      --instance-template-region=REGION \
      --accelerator=count=8,type=GPU_TYPE \
      --machine-type=MACHINE_TYPE \
      --image-project=advanced-compute-images \
      --image-family=IMAGE_FAMILY \
      --maintenance-policy=TERMINATE
    
  • 使用以下命令创建全球实例模板:

    gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME
      --accelerator=count=8,type=GPU_TYPE \
      --machine-type=MACHINE_TYPE \
      --image-project=advanced-compute-images \
      --image-family=IMAGE_FAMILY \
      --maintenance-policy=TERMINATE
    

替换以下内容:

  • INSTANCE_TEMPLATE_NAME:实例模板的名称。
  • REGION:对于区域实例模板,这是要在其中创建模板的区域。
  • GPU_TYPE:要与计算实例搭配使用的 GPU 类型。 使用高级计算映像时,您必须为 A4 实例指定 nvidia-b200,或为 A3 Ultra 实例指定 nvidia-h200-141gb
  • MACHINE_TYPE:计算实例的机器类型。 如需使用高级计算映像,您必须指定 A3 UltraA4 机器类型。
  • IMAGE_FAMILY:指定以下其中一项:
    • IMAGE_FAMILY:映像系列。此项指定相应系列中最新的操作系统映像版本。例如,您可以指定 aci-gpu-u2204-slurm-2511-cuda-130-nvidia-580-amd64
    • IMAGE:操作系统映像的特定版本;例如 aci-gpu-u2204-slurm-2511-cuda-130-nvidia-580-amd64-v20260427-1。 如需指定操作系统映像的特定版本,而不是映像系列,您必须使用 --image 标志,而不是 --image-family 标志。

您最多可以添加 15 个辅助非启动磁盘。为您创建的每个辅助磁盘指定 --create-disk 标志。

  • 如需通过公共映像或自定义映像创建辅助磁盘,请在 --create-disk 标志中为每个磁盘指定 imageimage-project 属性。
  • 如需创建空白磁盘,请勿包含 imageimage-project 属性
  • 您可以根据需要添加磁盘属性 sizetype

如需查看所有可用子命令和标志的列表,请参阅 instance-templates 参考文档

后续步骤

* 查看创建托管式实例组 (MIG) 的基本场景。 * 了解如何检查实例的状态,以了解其何时可用。 * 了解如何连接到您的实例