本文档介绍了如何使用与预留绑定的预配模型创建独立的虚拟机 (VM) 实例。借助此预配模型,您可以使用预先预留的容量来创建 A4X、A4 或 A3 Ultra 虚拟机。
如需了解使用受预留约束的预配模型创建虚拟机的其他方法,请参阅 AI Hypercomputer 文档中的部署选项概览。
准备工作
-
如果您尚未设置身份验证,请进行设置。身份验证用于验证您的身份,以便访问 Google Cloud 服务和 API。如需从本地开发环境运行代码或示例,您可以通过选择以下选项之一向 Compute Engine 进行身份验证:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
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
权限
创建使用受预留约束的预配模型的虚拟机
如需使用受预留约束的预配模型创建 A4X、A4 或 A3 Ultra 虚拟机,您必须等到要使用的自动预留达到其开始时间。此外,您打算创建的虚拟机必须满足以下所有要求:
虚拟机和预留必须具有匹配的属性。
虚拟机必须明确指向预留才能使用它。
虚拟机必须在预留结束时间予以停止或删除。
以下示例会在日历模式下为五个 A3 Ultra 虚拟机创建未来预留请求,然后通过使用为该请求自动创建的预留来创建 A3 Ultra 虚拟机。
如需使用受预留约束的预配模型创建示例虚拟机,请选择以下选项之一:
控制台
创建一个示例请求,申请 5 个 A3 Ultra 虚拟机,然后提交以供审核:
在 Google Cloud 控制台中,前往预留页面。
点击未来预留标签页。
点击
创建未来预留。创建未来预留页面随即会显示。在硬件配置部分中,选择指定机器类型,然后指定 A3 Ultra 实例。
在获取方法部分,完成以下步骤:
选择搜索最多 90 天的容量。
在区域和可用区列表中,指定要预留资源的区域和可用区。在本示例中,分别选择 us-central1 和 us-central1-a。
在所需总容量字段中,输入
5
。在预留期部分中,指定预留的预留期。
指定其余字段,然后点击提交。
在请求发起时,如要创建 A3 Ultra 虚拟机来使用自动创建的示例预留,请执行以下操作:
在 Google Cloud 控制台中,前往创建实例页面。
在名称字段中,输入虚拟机的名称。在此示例中,请输入
example-vm
。指定您要预留资源的区域和可用区。在本示例中,分别选择 us-central1 和 us-central1-a。
点击 GPU 标签页,然后在 GPU 类型列表中选择 NVIDIA H200 141GB。此操作指定了 A3 Ultra 虚拟机,并将预配模型设置为受预留约束。
在导航菜单中,点击高级。
在预留部分中,选择选择预留,然后点击选择预留。
在选择预留窗格中,执行以下操作:
选择特定预留。如果您要使用存在于其他项目中的共享预留,请在项目列表中选择存在该预留的项目。
点击选择。
在预配模型部分中,展开虚拟机预配模型高级设置部分。
在虚拟机终止时列表中,选择关停(默认)或删除。
点击创建。
gcloud
如要创建一个示例请求,申请 5 个 A3 Ultra 虚拟机并提交以供审核,请使用
gcloud beta compute future-reservations create
命令:gcloud beta compute future-reservations create example-fr \ --auto-delete-auto-created-reservations \ --deployment-type=DENSE \ --planning-status=SUBMITTED \ --require-specific-reservation \ --reservation-mode=CALENDAR \ --reservation-name=example-reservation \ --share-type=local \ --start-time=2025-10-05T00:00:00Z \ --end-time=2025-10-19T00:00:00Z \ --machine-type=a3-ultragpu-8g \ --total-count=5 \ --zone=us-central1-a
假设 Google Cloud 批准了请求,并且 Compute Engine 自动创建了一个空预留。在请求发起时(2025 年 10 月 5 日),Compute Engine 会增加预留中预留的 GPU 虚拟机数量。这样,您就可以使用预留了。
在请求发起时,如要创建 A3 Ultra 虚拟机来使用自动创建的示例预留,请将
gcloud compute instances create
命令与以下标志搭配使用:--instance-termination-action
标志。将
--provisioning-model
标志设置为RESERVATION_BOUND
。--reservation
标志。将
--reservation-affinity
标志设置为specific
。
该命令类似于以下内容。如需了解创建 A3 Ultra 虚拟机的完整要求,请参阅创建 A3 Ultra 或 A4 实例。
gcloud compute instance create example-vm \ --machine-type=a3-ultragpu-8g \ --instance-termination-action=TERMINATION_ACTION \ --provisioning-model=RESERVATION_BOUND \ --reservation-affinity=specific \ --reservation=RESERVATION_URL \ --zone=us-central1-a \ ...
该命令包含以下值:
TERMINATION_ACTION
:指示在预留期结束时,Compute Engine 是关停 (STOP
) 还是删除 (DELETE
) 虚拟机。RESERVATION_URL
:预留的网址,格式如下:如果自动创建的预留存在于您的项目中:
example-reservation
。如果自动创建的预留存在于其他项目中:
projects/PROJECT_ID/reservations/example-reservation
。
REST
如要创建一个示例请求,申请 5 个 A3 Ultra 虚拟机并提交以供审核,请向 Beta 版
futureReservations.insert
方法发出POST
请求:POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations { "name": "example-request-calendar-mode", "autoDeleteAutoCreatedReservations": true, "deploymentType": "DENSE", "planningStatus": "SUBMITTED", "reservationMode": "CALENDAR", "reservationName": "example-reservation", "shareSettings": { "shareType": "LOCAL" }, "specificReservationRequired": true, "specificSkuProperties": { "machineType": "a3-ultragpu-8g", "totalCount": 5 }, "timeWindow": { "startTime": "2025-10-05T00:00:00Z", "endTime": "2025-10-19T00:00:00Z" } }
假设 Google Cloud 批准了请求,并且 Compute Engine 自动创建了一个空预留。在请求发起时(2025 年 10 月 5 日),Compute Engine 会增加预留中预留的 GPU 虚拟机数量。这样,您就可以使用预留了。
在请求发起时,如要创建 A3 Ultra 虚拟机来使用自动创建的示例预留,请向
instances.insert
方法发出POST
请求。在请求正文中,添加以下字段:设置为
SPECIFIC_RESERVATION
的reservationAffinity.consumeReservationType
字段。设置为
compute.googleapis.com/reservation-name
的reservationAffinity.key
字段。设置为预留网址的
reservationAffinity.values
字段。scheduling.instanceTerminationAction
字段。设置为
RESERVATION_BOUND
的scheduling.provisioningModel
字段。
请求类似于以下内容。如需了解创建 A3 Ultra 虚拟机的完整要求,请参阅创建 A3 Ultra 或 A4 实例。
POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/instances { { "machineType": "projects/example-project/zones/us-central1-a/machineTypes/a3-ultragpu-8g", "name": "example-vm", "reservationAffinity": { "consumeReservationType": "SPECIFIC_RESERVATION", "key": "compute.googleapis.com/reservation-name", "values":[ "RESERVATION_URL" ], }, "scheduling": { "instanceTerminationAction": "TERMINATION_ACTION", "provisioningModel": "RESERVATION_BOUND" }, ... } }
请求正文包含以下值:
RESERVATION_URL
:预留的网址,格式如下:如果自动创建的预留存在于您的项目中:
example-reservation
。如果自动创建的预留存在于其他项目中:
projects/PROJECT_ID/reservations/example-reservation
。
TERMINATION_ACTION
:指示在预留期结束时,Compute Engine 是关停 (STOP
) 还是删除 (DELETE
) 虚拟机。
后续步骤
自行试用
如果您是 Google Cloud 新手,请创建一个账号来评估 Compute Engine 在实际场景中的表现。新客户还可获享 $300 赠金,用于运行、测试和部署工作负载。
免费试用 Compute Engine如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-09-25。
-