本文档介绍了创建使用 A2 系列(包括 A2 Ultra 或 A2 Standard 机器类型)的独立虚拟机 (VM) 实例的步骤。如需详细了解这些加速器优化机器类型,请参阅 A2 系列。
如需了解创建虚拟机或集群的其他方法,请参阅部署选项概览。
限制
创建独立的 A2 Ultra 或 A2 标准虚拟机时,存在以下限制:
A2 Ultra
- 使用 A2 Ultra 机器类型的实例不会获得持续使用折扣和灵活承诺使用折扣。
- 只能在某些区域和可用区中使用 A2 Ultra 机器类型。
- A2 Ultra 机器类型仅在 Cascade Lake 平台上提供。
- 如果实例使用 A2 Ultra 机器类型,则不能更改机器类型。如果您需要使用其他 A2 Ultra 机器类型或任何其他机器类型,则必须创建新实例。
- 不能将任何其他机器类型更改为 A2 Ultra 机器类型。如果您需要使用 A2 Ultra 机器类型的实例,则必须创建新实例。
- 不能在使用 A2 Ultra 机器类型的 Windows 实例上快速格式化挂接的本地 SSD。如需设置这些本地 SSD 的格式,您必须使用 diskpart 实用程序并指定
format fs=ntfs label=tmpfs设置,以进行完整格式化。
A2 标准
- 使用 A2 Standard 机器类型的实例不会获得持续使用折扣和灵活承诺使用折扣。
- 只能在某些区域和可用区中使用 A2 标准机器类型。
- A2 标准机器类型仅在 Cascade Lake 平台上提供。
- 如果实例使用 A2 Standard 机器类型,则您只能从一种 A2 Standard 机器类型切换到另一种 A2 Standard 机器类型。您无法切换到任何其他机器类型。如需了解详情,请参阅修改加速器优化型实例。
- 不能将 Windows 操作系统与
a2-megagpu-16g机器类型搭配使用。使用 Windows 操作系统时,选择其他 A2 Standard 机器类型。 - 不能在使用 A2 Standard 机器类型的 Windows 实例上快速格式化挂接的本地 SSD。如需设置这些本地 SSD 的格式,您必须使用 diskpart 实用程序并指定
format fs=ntfs label=tmpfs设置,以进行完整格式化。
准备工作
在创建虚拟机之前,如果您尚未完成以下步骤,请先完成这些步骤:
- 选择使用选项:您选择的使用选项决定了您如何获取和使用 GPU 资源。如需了解详情,请参阅选择消费选项。
- 获取容量:每种使用选项的容量获取流程各不相同。如需了解为所选使用选项获取容量的流程,请参阅容量概览。
选择标签页以了解您打算如何使用本页面上的示例:
控制台
当您使用 Google Cloud 控制台访问 Google Cloud 服务和 API 时,无需设置身份验证。
gcloud
安装 Google Cloud CLI,然后 使用联合身份登录 gcloud CLI。 登录后,运行以下命令来初始化 Google Cloud CLI:
gcloud initREST
如需在本地开发环境中使用本页面上的 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权限
概览
创建采用 A2 机器类型的实例包括以下步骤:
可选:创建紧凑布置政策
您可以通过创建紧凑布置政策来指定虚拟机布置。当您将紧凑布置政策应用于虚拟机时,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:虚拟机的最大距离配置,可以指定(预览版,推荐)或不指定(移除--max-distance标志)。 您可以根据机器类型支持的功能指定以下值之一:- 如需将虚拟机布置在同一子区块中,请执行以下操作:
1 - 如需将虚拟机布置在同一区块中,请执行以下操作:
2 - 如需将虚拟机布置在相邻的块中,请执行以下操作:
3
- 如需将虚拟机布置在同一子区块中,请执行以下操作:
REGION:要用于创建紧凑布置政策的区域。 指定包含您计划创建实例的可用区的区域,并验证您要使用的机器类型是否在该区域中可用。如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。
REST
如需创建紧凑布置政策,请向 Beta 版 resourcePolicies.insert 方法发出 POST 请求。
在请求正文中,添加设置为 COLLOCATED 的 collocation 字段和 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:虚拟机的最大距离配置,可以指定(预览版,推荐)或不指定(移除maxDistance字段)。 您可以根据机器类型支持的功能指定以下值之一:- 如需将虚拟机布置在同一子区块中,请执行以下操作:
1 - 如需将虚拟机布置在同一区块中,请执行以下操作:
2 - 如需将虚拟机布置在相邻的块中,请执行以下操作:
3
- 如需将虚拟机布置在同一子区块中,请执行以下操作:
REGION:要用于创建紧凑布置政策的区域。 指定包含您计划创建实例的可用区的区域,并验证您要使用的机器类型是否在该区域中可用。如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。
创建 A2 虚拟机
如需创建 A2 虚拟机,请使用以下方法之一。
以下命令还会设置实例的访问权限范围。为简化权限管理,Google 建议您将实例的访问权限范围设置为cloud-platform 访问权限,然后使用 IAM 角色定义实例可以访问哪些服务。如需了解详情,请参阅范围最佳实践。
控制台
在 Google Cloud 控制台中,前往创建实例页面。
为您的虚拟机指定名称。请参阅资源命名惯例。
选择要在其中创建虚拟机的区域和可用区。查看可用的 GPU 区域和可用区列表。
点击 GPU 标签页,然后完成以下步骤:
- 在 GPU 类型列表中,选择您的 GPU 类型。
- 对于 A2 Ultra 机器类型,请选择
NVIDIA A100 80GB - 对于 A2 标准机器类型,请选择
NVIDIA A100 40GB
- 对于 A2 Ultra 机器类型,请选择
- 在 GPU 数量列表中,选择 GPU 的数量。
- 在机器类型列表中,选择一种机器类型。
- 在 GPU 类型列表中,选择您的 GPU 类型。
根据您要使用的消费选项,选择以下选项之一,然后完成后续步骤。
预订
A2 实例支持以下类型的预留:
- 按需预留
- 标准未来预留
如需使用这些类型的预留,实例必须使用标准预配模型。例如,使用以下创建参数。
按需
- 在预配模型部分的虚拟机预配模型列表中,选择标准。 (此选项默认处于选中状态。)
可选:如需配置此虚拟机是否使用预留,请完成以下步骤:
- 在导航菜单中,点击高级。
对于预留,请选择以下选项之一:
如需选择性地使用预留容量,请选择使用自动选择。(此选项默认处于选中状态。)
实例会尝试使用自动使用的预留中的容量,只有在有匹配的预留容量可用时才会发生这种情况。否则,实例将使用按需容量。
如需按需容量,请选择不使用预留。
实例无法使用任何预留容量。
灵活启动
- 在预配模型部分的虚拟机预配模型列表中选择灵活启动。
在输入小时数字段中,输入您希望虚拟机运行的最长时间。该值必须介于 46 秒 (
0.01) 和 7 天(168,即 168 小时)之间。选择设置虚拟机创建等待时间。
根据工作负载的可用区要求,指定以下时长之一,以提高虚拟机创建请求的成功率:
- 对地区有严格要求的工作负载:如果您的工作负载要求您在特定地区创建虚拟机,请指定介于 90 秒和 2 小时之间的时长。持续时间越长,获得资源的机会就越大。
- 对可用区没有严格要求的工作负载:如果虚拟机可以在区域内的任何可用区中运行,请指定 0 秒的持续时间,或清除设置虚拟机创建等待时间复选框。此操作指定 Compute Engine 仅在资源可立即使用时才分配资源。如果虚拟机创建请求因资源不可用而失败,请在其他可用区中重试该请求。
在虚拟机终止时字段中,选择在虚拟机的运行时长结束时是停止还是删除虚拟机:
- 如需删除虚拟机,请选择删除。
- 如需停止虚拟机,请选择停止。
Spot
- 在预配模型部分中,从虚拟机预配模型列表中选择 Spot。
可选:如需选择 Compute Engine 抢占虚拟机时发生的终止操作,请完成以下步骤:
- 展开虚拟机预配模型高级设置部分。
- 在虚拟机终止时列表中,选择以下选项之一:
- 如需在抢占期间停止虚拟机,请选择停止(默认)。
- 如需在抢占期间删除虚拟机,请选择删除。
在导航菜单中,点击操作系统和存储空间,然后完成以下步骤:
- 点击更改。系统会打开启动磁盘配置窗格。
在公共映像标签页中,选择推荐的映像。如需查看推荐映像的列表,请参阅操作系统。
可选:如需配置启动磁盘大小,请根据磁盘类型参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制。
如需确认您的启动磁盘选项,请点击选择。
可选:如果您指定了 A2 标准机器类型,并且想要添加本地固态硬盘,请完成以下步骤:
- 点击 添加本地 SSD。 系统会打开配置本地 SSD 窗格。
- 在配置本地 SSD 窗格中,配置本地 SSD 磁盘的选项。如需了解详情,请参阅 Compute Engine 文档中的向计算实例添加本地 SSD 磁盘。
- 如需确认您的启动磁盘选项,请点击保存。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
按如下方式配置服务账号和访问权限范围。在实例上运行的工作负载使用关联的服务账号来授权对其他 Google Cloud 服务的请求。
- 在导航菜单中,点击安全。
- 在服务账号列表中,选择要使用的服务账号。
- 对于访问权限范围,选择授予对所有 Cloud API 的完整访问权限选项。此最佳实践可让您通过向服务账号添加或移除 IAM 角色来管理访问权限。如需了解详情,请参阅将服务账号附加到实例。
要创建并启动该虚拟机,请点击创建。
gcloud
如需创建虚拟机,请使用 gcloud compute instances create 命令。
您需要指定的参数取决于您为此部署使用的使用选项。选择与您的使用选项对应的标签页。
预留
A2 实例支持以下类型的预留:
- 按需预留
- 标准未来预留
如需使用这些类型的预留,实例必须使用标准预配模型。例如,使用以下创建参数。
在运行命令之前,请查看以下所有步骤,以确定是否要添加其他标志。
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 \
--provisioning-model=STANDARD \
--maintenance-policy=TERMINATE \
--reservation-affinity=RESERVATION_AFFINITY \
--reservation=RESERVATION
请完成以下步骤:
-
替换以下内容:
INSTANCE_NAME:虚拟机的名称。MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。ZONE:您要使用的机器类型在其中可用的可用区。如需指定紧凑布置政策,请使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。RESERVATION_AFFINITY:实例可以使用的预留(如果可能)。指定以下其中一项:RESERVATION:要使用的预留。根据您为RESERVATION_AFFINITY指定的值,指定以下值之一:- 如果您指定了
any,请将RESERVATION替换为空字符串 ("")。或者,您也可以完全移除--reservation标志。 如果您指定了
specific,请将RESERVATION替换为以下内容:projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
替换以下内容:
RESERVATION_OWNER_PROJECT_ID:在其中创建预留的项目的项目 ID。RESERVATION_NAME:预留的名称。
- 如果您指定了
默认情况下,如果实例崩溃或 Compute Engine 因计划停止(例如维护事件)而停止实例,则实例会自动重启。如果您想停用自动重启,请添加以下标志:
--no-restart-on-failure
-
可选:如需使用紧凑布置政策,请添加以下标志:
--resource-policies=POLICY_NAME
替换以下内容:
POLICY_NAME:紧凑布置政策的名称。
-
可选:如果您指定了 A2 标准机器类型,并且想要挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘添加以下
--local-ssd标志。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。
--local-ssd interface=INTERFACE_TYPE
替换以下内容:
INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
- 运行以上命令。
按需
在运行命令之前,请查看以下所有步骤,以确定是否要添加其他标志。
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 \
--provisioning-model=STANDARD \
--maintenance-policy=TERMINATE \
--reservation-affinity=RESERVATION_AFFINITY
请完成以下步骤:
-
替换以下内容:
INSTANCE_NAME:虚拟机的名称。MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。ZONE:您要使用的机器类型在其中可用的可用区。如需指定紧凑布置政策,请使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。RESERVATION_AFFINITY:实例可以使用的预留(如果可能)。指定以下其中一项:any(预留容量是可选的):这是默认选项。实例尝试使用自动使用的预留中的容量,只有在有匹配的预留容量时才会发生这种情况。否则,实例将使用按需容量。none(需要按需容量):阻止实例使用任何预留容量。
默认情况下,如果实例崩溃或 Compute Engine 因计划停止(例如维护事件)而停止实例,则实例会自动重启。如果您想停用自动重启,请添加以下标志:
--no-restart-on-failure
-
可选:如需使用紧凑布置政策,请添加以下标志:
--resource-policies=POLICY_NAME
替换以下内容:
POLICY_NAME:紧凑布置政策的名称。
-
可选:如果您指定了 A2 标准机器类型,并且想要挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘添加以下
--local-ssd标志。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。
--local-ssd interface=INTERFACE_TYPE
替换以下内容:
INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
- 运行以上命令。
灵活启动
在运行命令之前,请查看以下所有步骤,以确定是否要添加其他标志。
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 \
--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
请完成以下步骤:
-
替换以下内容:
INSTANCE_NAME:虚拟机的名称。MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。ZONE:您要使用的机器类型在其中可用的可用区。如需指定紧凑布置政策,请使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。REQUEST_VALID_FOR_DURATION:创建虚拟机的请求保持有效的时间。您必须将该值的格式设置为天数、小时数、分钟数或秒数,并分别添加对应的后缀d、h、m或s。例如,指定30m表示 30 分钟,或指定1h2m3s表示 1 小时 2 分钟 3 秒。根据工作负载的可用区要求,指定以下时长之一,以提高虚拟机创建请求的成功率:
- 对可用区有严格要求的工作负载:如果您的工作负载要求您在特定可用区中创建虚拟机,请指定 90 秒 (
90s) 到 2 小时 (2h) 之间的时长。时长越长,获得资源的机会就越大。 - 对可用区没有严格要求的工作负载:如果虚拟机可以在区域内的任何可用区中运行,则指定时长为零秒 (
0s)。此操作指定 Compute Engine 仅在资源立即可用时才分配资源。如果虚拟机创建请求因资源不可用而失败,请在其他可用区中重试该请求。
- 对可用区有严格要求的工作负载:如果您的工作负载要求您在特定可用区中创建虚拟机,请指定 90 秒 (
MAX_RUN_DURATION:您希望请求的虚拟机运行的时长。您必须将该值的格式设置为天数、小时数、分钟数或秒数,并分别添加对应的后缀d、h、m或s。该值必须介于 10 分钟到 7 天之间。TERMINATION_ACTION:指示在运行时长结束时,Compute Engine 是关停 (STOP) 还是删除 (DELETE) 虚拟机。
-
可选:如需使用紧凑布置政策,请添加以下标志:
--resource-policies=POLICY_NAME
替换以下内容:
POLICY_NAME:紧凑布置政策的名称。
-
可选:如果您指定了 A2 标准机器类型,并且想要挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘添加以下
--local-ssd标志。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。
--local-ssd interface=INTERFACE_TYPE
替换以下内容:
INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
- 运行以上命令。
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 \
--provisioning-model=SPOT \
--instance-termination-action=TERMINATION_ACTION \
--maintenance-policy=TERMINATE \
--no-restart-on-failure
请完成以下步骤:
-
替换以下内容:
INSTANCE_NAME:虚拟机的名称。MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。ZONE:您要使用的机器类型在其中可用的可用区。如需指定紧凑布置政策,请使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。TERMINATION_ACTION:当 Compute Engine 抢占实例时执行的操作(STOP[默认] 或DELETE)。
-
可选:如需使用紧凑布置政策,请添加以下标志:
--resource-policies=POLICY_NAME
替换以下内容:
POLICY_NAME:紧凑布置政策的名称。
-
可选:如果您指定了 A2 标准机器类型,并且想要挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘添加以下
--local-ssd标志。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。
--local-ssd interface=INTERFACE_TYPE
替换以下内容:
INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
- 运行以上命令。
REST
如需创建虚拟机,请向 instances.insert 方法发出 POST 请求。
您需要指定的参数取决于您为此部署使用的使用选项。选择与您的使用选项对应的标签页。
预留
A2 实例支持以下类型的预留:
- 按需预留
- 标准未来预留
如需使用这些类型的预留,实例必须使用标准预配模型。例如,使用以下创建参数。
在提交请求之前,请查看以下所有步骤,以确定是否需要添加其他字段。
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"
]
}
],
"scheduling": {
"provisioningModel": "STANDARD",
"onHostMaintenance": "TERMINATE",
"automaticRestart": AUTOMATIC_RESTART
},
"reservationAffinity": {
"consumeReservationType": "RESERVATION_AFFINITY",
"key": "compute.googleapis.com/reservation-name",
"values": [
"RESERVATION"
]
}
}
请完成以下步骤:
-
替换以下内容:
PROJECT_ID:您要在其中创建虚拟机的项目的 ID。ZONE:您要使用的机器类型在其中可用的可用区。如果您要指定紧凑布置政策,则必须使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。INSTANCE_NAME:虚拟机的名称。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。IMAGE_PROJECT:操作系统映像的项目 ID。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。AUTOMATIC_RESTART:如果实例崩溃或 Compute Engine 因计划停机(如维护事件)而停止实例,是否自动重启实例。指定true可启用自动重启(默认),指定false可停用自动重启。RESERVATION_AFFINITY:实例可以使用的预留(如果可能)。指定以下其中一项:RESERVATION:要使用的预留。根据您为RESERVATION_AFFINITY指定的值,指定以下值之一:- 如果您指定了
ANY_RESERVATION,请删除RESERVATION,使该值为一个空字符串 ("")。或者,您也可以完全移除key和values字段。 如果您指定了
SPECIFIC_RESERVATION,请将RESERVATION替换为以下内容:projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
替换以下内容:
RESERVATION_OWNER_PROJECT_ID:在其中创建预留的项目的项目 ID。RESERVATION_NAME:预留的名称。
- 如果您指定了
-
可选:如果您选择使用紧凑布置政策,请将以下字段添加到请求正文中:
"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]替换以下内容:
PROJECT_ID:紧凑布置政策的项目 ID。REGION:紧凑布置政策所在的区域。POLICY_NAME:紧凑布置政策的名称。
-
可选:如果您指定了 A2 标准机器类型,并且想要挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘向
disks[]字段添加以下字段。使用英文逗号分隔每个disks[]子字段(包括启动磁盘)。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。
{ "type": "SCRATCH", "initializeParams": { "diskType": "zones/ZONE/diskTypes/local-ssd" }, "autoDelete": true, "interface": "INTERFACE_TYPE" }替换以下内容:
ZONE:您指定的可用区。INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
- 提交请求。
按需
在提交请求之前,请查看以下所有步骤,以确定是否需要添加其他字段。
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"
]
}
],
"scheduling": {
"provisioningModel": "STANDARD",
"onHostMaintenance": "TERMINATE",
"automaticRestart": AUTOMATIC_RESTART
},
"reservationAffinity": {
"consumeReservationType": "RESERVATION_AFFINITY"
}
}
请完成以下步骤:
-
替换以下内容:
PROJECT_ID:您要在其中创建虚拟机的项目的 ID。ZONE:您要使用的机器类型在其中可用的可用区。如果您要指定紧凑布置政策,则必须使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。INSTANCE_NAME:虚拟机的名称。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。IMAGE_PROJECT:操作系统映像的项目 ID。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。AUTOMATIC_RESTART:如果实例崩溃或 Compute Engine 因计划停机(如维护事件)而停止实例,是否自动重启实例。指定true可启用自动重启(默认),指定false可停用自动重启。RESERVATION_AFFINITY:实例可以使用的预留(如果可能)。指定以下其中一项:ANY_RESERVATION(预留容量是可选的):这是默认选项。实例尝试使用自动使用的预留中的容量,只有在有匹配的预留容量时才会发生这种情况。否则,实例将使用按需容量。NO_RESERVATION(需要按需容量):阻止实例使用任何预留容量。
-
可选:如果您选择使用紧凑布置政策,请将以下字段添加到请求正文中:
"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]替换以下内容:
PROJECT_ID:紧凑布置政策的项目 ID。REGION:紧凑布置政策所在的区域。POLICY_NAME:紧凑布置政策的名称。
-
可选:如果您指定了 A2 标准机器类型,并且想要挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘向
disks[]字段添加以下字段。使用英文逗号分隔每个disks[]子字段(包括启动磁盘)。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。
{ "type": "SCRATCH", "initializeParams": { "diskType": "zones/ZONE/diskTypes/local-ssd" }, "autoDelete": true, "interface": "INTERFACE_TYPE" }替换以下内容:
ZONE:您指定的可用区。INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
- 提交请求。
灵活启动
在提交请求之前,请查看以下所有步骤,以确定是否需要添加其他字段。
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"
]
}
],
"reservationAffinity": {
"consumeReservationType": "NO_RESERVATION",
},
"scheduling": {
"provisioningModel": "FLEX_START",
"requestValidForDuration": {
"seconds": REQUEST_VALID_FOR_DURATION
},
"maxRunDuration": {
"seconds": MAX_RUN_DURATION
},
"instanceTerminationAction": "TERMINATION_ACTION",
"onHostMaintenance": "TERMINATE",
}
}
请完成以下步骤:
-
替换以下内容:
PROJECT_ID:您要在其中创建虚拟机的项目的 ID。ZONE:您要使用的机器类型在其中可用的可用区。如果您要指定紧凑布置政策,则必须使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。INSTANCE_NAME:虚拟机的名称。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。IMAGE_PROJECT:操作系统映像的项目 ID。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。REQUEST_VALID_FOR_DURATION:创建虚拟机的请求保持有效的时长(以秒为单位)。根据工作负载的可用区要求,指定以下时长之一,以提高虚拟机创建请求的成功率:
- 对可用区有严格要求的工作负载:如果您的工作负载要求您在特定可用区中创建虚拟机,请指定 90 秒 (
90) 到 2 小时 (7200) 之间的时长。时长越长,获得资源的机会就越大。 - 对可用区没有严格要求的工作负载:如果虚拟机可以在区域内的任何可用区中运行,则指定时长为零秒 (
0)。此操作指定 Compute Engine 仅在资源立即可用时才分配资源。如果虚拟机创建请求因资源不可用而失败,请在其他可用区中重试该请求。
- 对可用区有严格要求的工作负载:如果您的工作负载要求您在特定可用区中创建虚拟机,请指定 90 秒 (
MAX_RUN_DURATION:您希望请求的虚拟机运行的时长。您必须将该值格式化为秒数。例如,指定86400表示 86,400 秒(24 小时)。该值必须介于 10 分钟到 7 天之间。TERMINATION_ACTION:指示在运行时长结束时,Compute Engine 是关停 (STOP) 还是删除 (DELETE) 虚拟机。
-
可选:如果您选择使用紧凑布置政策,请将以下字段添加到请求正文中:
"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]替换以下内容:
PROJECT_ID:紧凑布置政策的项目 ID。REGION:紧凑布置政策所在的区域。POLICY_NAME:紧凑布置政策的名称。
-
可选:如果您指定了 A2 标准机器类型,并且想要挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘向
disks[]字段添加以下字段。使用英文逗号分隔每个disks[]子字段(包括启动磁盘)。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。
{ "type": "SCRATCH", "initializeParams": { "diskType": "zones/ZONE/diskTypes/local-ssd" }, "autoDelete": true, "interface": "INTERFACE_TYPE" }替换以下内容:
ZONE:您指定的可用区。INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
- 提交请求。
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"
]
}
],
"scheduling":
{
"provisioningModel": "SPOT",
"instanceTerminationAction": "TERMINATION_ACTION",
"onHostMaintenance": "TERMINATE",
"automaticRestart": false
}
}
请完成以下步骤:
-
替换以下内容:
PROJECT_ID:您要在其中创建虚拟机的项目的 ID。ZONE:您要使用的机器类型在其中可用的可用区。如果您要指定紧凑布置政策,则必须使用与紧凑布置政策位于同一区域的可用区。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。MACHINE_TYPE:要用于虚拟机的机器类型。 如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。INSTANCE_NAME:虚拟机的名称。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。IMAGE_PROJECT:操作系统映像的项目 ID。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。TERMINATION_ACTION:当 Compute Engine 抢占实例时执行的操作(STOP[默认] 或DELETE)。
-
可选:如果您选择使用紧凑布置政策,请将以下字段添加到请求正文中:
"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]替换以下内容:
PROJECT_ID:紧凑布置政策的项目 ID。REGION:紧凑布置政策所在的区域。POLICY_NAME:紧凑布置政策的名称。
-
可选:如果您指定了 A2 标准机器类型,并且想要挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘向
disks[]字段添加以下字段。使用英文逗号分隔每个disks[]子字段(包括启动磁盘)。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。
{ "type": "SCRATCH", "initializeParams": { "diskType": "zones/ZONE/diskTypes/local-ssd" }, "autoDelete": true, "interface": "INTERFACE_TYPE" }替换以下内容:
ZONE:您指定的可用区。INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
- 提交请求。
安装 GPU 驱动程序
创建实例后,除非已安装正确的 GPU 驱动程序,否则该实例无法使用其 GPU。 如果您未指定包含 GPU 驱动程序的操作系统映像,请参阅 Compute Engine 文档中的安装 GPU 驱动程序。