本文档介绍如何创建使用 N1 系列并挂接 GPU 的代管式实例组 (MIG)。如需详细了解这些机器类型,请参阅 N1 系列。
创建 MIG 后,您可以将多个虚拟机 (VM) 作为单个实体进行管理。MIG 中的每个虚拟机均基于实例模板。通过自动管理实例组中的虚拟机,MIG 可提供高可用性和可伸缩性。如需详细了解 MIG,请参阅 Compute Engine 文档中的托管式实例组。
如需了解创建虚拟机或集群的其他方法,请参阅部署选项概览。
限制
创建具有搭载 GPU 的 N1 虚拟机的 MIG 时,请考虑机器类型和 MIG 的限制。
具有 GPU 的 N1 虚拟机的限制
如需了解适用于搭载了 GPU 的 N1 机器类型的限制,请参阅以下所有内容:
MIG 的限制
- 如果您想使用调整大小请求,请查看调整大小请求的限制。
准备工作
在创建 MIG 之前,如果您尚未完成以下步骤,请先完成这些步骤:
- 选择使用选项:您选择的使用选项决定了您如何获取和使用 GPU 资源。如需了解详情,请参阅选择消费选项。
- 获取容量:每种使用选项的容量获取流程各不相同。如需了解为所选使用选项获取容量的流程,请参阅容量概览。
所需的角色
如需获得创建 MIG 所需的权限,请让您的管理员为您授予项目的 Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1) IAM 角色。
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
此预定义角色包含创建 MIG 所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
您需要具备以下权限才能创建 MIG:
-
如需创建 MIG:针对项目的
compute.instanceGroupManagers.create权限
概览
创建具有 N1(含 T4 或 V100 GPU)机器类型的 MIG 包括以下步骤:
创建实例模板
通过创建实例模板来指定 MIG 的虚拟机属性。
如需创建实例模板,请选择以下选项之一:
以下命令还会设置实例的访问权限范围。为简化权限管理,Google 建议您将实例的访问权限范围设置为cloud-platform 访问权限,然后使用 IAM 角色定义实例可以访问哪些服务。如需了解详情,请参阅范围最佳实践。
gcloud
如需创建区域级实例模板,请使用 gcloud compute instance-templates create 命令。
您需要指定的参数取决于您为此部署使用的使用选项。选择与您的使用选项对应的标签页。
预留
配备 T4 或 V100 GPU 的 N1 实例支持以下类型的预留:
- 按需预留
- 标准未来预留
如需使用这些类型的预留,实例必须使用标准预配模型。例如,使用以下创建参数。
在运行命令之前,请查看以下所有步骤,以确定是否要添加其他标志。
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--accelerator=type=ACCELERATOR_TYPE,count=ACCELERATOR_COUNT \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--instance-template-region=REGION \
--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_TEMPLATE_NAME:实例模板的名称。MACHINE_TYPE:用于具有 T4 或 V100 GPU 的 N1 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。ACCELERATOR_COUNT:要挂接到 N1 虚拟机的 GPU 数量。如需查看基于虚拟机的机器类型的 GPU 限制列表,请参阅 Compute Engine 文档中有关 N1 GPU 的信息。ACCELERATOR_TYPE:您要使用的 N1 虚拟机的加速器类型。对于 AI 工作负载,我们建议您使用 T4 或 V100 GPU。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 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
-
可选:如需挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘添加以下
--local-ssd标志。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。
--local-ssd interface=INTERFACE_TYPE
替换以下内容:
INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
- 运行以上命令。
按需
在运行命令之前,请查看以下所有步骤,以确定是否要添加其他标志。
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--accelerator=type=ACCELERATOR_TYPE,count=ACCELERATOR_COUNT \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--instance-template-region=REGION \
--boot-disk-type=DISK_TYPE \
--boot-disk-size=DISK_SIZE \
--scopes=cloud-platform \
--provisioning-model=STANDARD \
--maintenance-policy=TERMINATE \
--reservation-affinity=RESERVATION_AFFINITY
请完成以下步骤:
-
替换以下内容:
INSTANCE_TEMPLATE_NAME:实例模板的名称。MACHINE_TYPE:用于具有 T4 或 V100 GPU 的 N1 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。ACCELERATOR_COUNT:要挂接到 N1 虚拟机的 GPU 数量。如需查看基于虚拟机的机器类型的 GPU 限制列表,请参阅 Compute Engine 文档中有关 N1 GPU 的信息。ACCELERATOR_TYPE:您要使用的 N1 虚拟机的加速器类型。对于 AI 工作负载,我们建议您使用 T4 或 V100 GPU。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。RESERVATION_AFFINITY:实例可以使用的预留(如果可能)。指定以下其中一项:any(预留容量是可选的):这是默认选项。实例尝试使用自动使用的预留中的容量,只有在有匹配的预留容量时才会发生这种情况。否则,实例将使用按需容量。none(需要按需容量):阻止实例使用任何预留容量。
默认情况下,如果实例崩溃或 Compute Engine 因计划停止(例如维护事件)而停止实例,则实例会自动重启。如果您想停用自动重启,请添加以下标志:
--no-restart-on-failure
-
可选:如需挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘添加以下
--local-ssd标志。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。
--local-ssd interface=INTERFACE_TYPE
替换以下内容:
INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
- 运行以上命令。
灵活启动
在运行命令之前,请查看以下所有步骤,以确定是否要添加其他标志。
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--accelerator=type=ACCELERATOR_TYPE,count=ACCELERATOR_COUNT \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--instance-template-region=REGION \
--boot-disk-type=DISK_TYPE \
--boot-disk-size=DISK_SIZE \
--scopes=cloud-platform \
--reservation-affinity=none \
--instance-termination-action=DELETE \
--max-run-duration=RUN_DURATION \
--maintenance-policy=TERMINATE \
--provisioning-model=FLEX_START
请完成以下步骤:
-
替换以下内容:
INSTANCE_TEMPLATE_NAME:实例模板的名称。MACHINE_TYPE:用于具有 T4 或 V100 GPU 的 N1 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。ACCELERATOR_COUNT:要挂接到 N1 虚拟机的 GPU 数量。如需查看基于虚拟机的机器类型的 GPU 限制列表,请参阅 Compute Engine 文档中有关 N1 GPU 的信息。ACCELERATOR_TYPE:您要使用的 N1 虚拟机的加速器类型。对于 AI 工作负载,我们建议您使用 T4 或 V100 GPU。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。RUN_DURATION:您希望请求的虚拟机运行的时长。您必须将该值的格式设置为天数、小时数、分钟数或秒数,后面分别跟d、h、m和s。例如,指定30m表示 30 分钟,或指定1d2h3m4s表示 1 天 2 小时 3 分钟 4 秒。该值必须介于 10 分钟到 7 天之间。
-
可选:如需挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘添加以下
--local-ssd标志。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。
--local-ssd interface=INTERFACE_TYPE
替换以下内容:
INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
- 运行以上命令。
Spot
在运行命令之前,请查看以下所有步骤,以确定是否要添加其他标志。
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--accelerator=type=ACCELERATOR_TYPE,count=ACCELERATOR_COUNT \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--instance-template-region=REGION \
--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_TEMPLATE_NAME:实例模板的名称。MACHINE_TYPE:用于具有 T4 或 V100 GPU 的 N1 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。ACCELERATOR_COUNT:要挂接到 N1 虚拟机的 GPU 数量。如需查看基于虚拟机的机器类型的 GPU 限制列表,请参阅 Compute Engine 文档中有关 N1 GPU 的信息。ACCELERATOR_TYPE:您要使用的 N1 虚拟机的加速器类型。对于 AI 工作负载,我们建议您使用 T4 或 V100 GPU。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。TERMINATION_ACTION:当 Compute Engine 抢占实例时执行的操作(STOP[默认] 或DELETE)。
-
可选:如需挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘添加以下
--local-ssd标志。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。
--local-ssd interface=INTERFACE_TYPE
替换以下内容:
INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
- 运行以上命令。
REST
如需创建区域级实例模板,请向 regionInstanceTemplates.insert 方法发出 POST 请求。
您需要指定的参数取决于您为此部署使用的使用选项。选择与您的使用选项对应的标签页。
预留
配备 T4 或 V100 GPU 的 N1 实例支持以下类型的预留:
- 按需预留
- 标准未来预留
如需使用这些类型的预留,实例必须使用标准预配模型。例如,使用以下创建参数。
在提交请求之前,请查看以下所有步骤,以确定是否需要添加其他字段。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"machineType": "MACHINE_TYPE",
"guestAccelerators": [
{
"acceleratorCount": ACCELERATOR_COUNT,
"acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_TYPE"
}
],
"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"
]
}
}
}
请完成以下步骤:
-
替换以下内容:
INSTANCE_TEMPLATE_NAME:实例模板的名称。MACHINE_TYPE:用于具有 T4 或 V100 GPU 的 N1 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。ACCELERATOR_COUNT:要挂接到 N1 虚拟机的 GPU 数量。如需查看基于虚拟机的机器类型的 GPU 限制列表,请参阅 Compute Engine 文档中有关 N1 GPU 的信息。ACCELERATOR_TYPE:您要使用的 N1 虚拟机的加速器类型。对于 AI 工作负载,我们建议您使用 T4 或 V100 GPU。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。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:预留的名称。
- 如果您指定了
-
可选:如需使用本地 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/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"machineType": "MACHINE_TYPE",
"guestAccelerators": [
{
"acceleratorCount": ACCELERATOR_COUNT,
"acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_TYPE"
}
],
"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"
}
}
}
请完成以下步骤:
-
替换以下内容:
INSTANCE_TEMPLATE_NAME:实例模板的名称。MACHINE_TYPE:用于具有 T4 或 V100 GPU 的 N1 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。ACCELERATOR_COUNT:要挂接到 N1 虚拟机的 GPU 数量。如需查看基于虚拟机的机器类型的 GPU 限制列表,请参阅 Compute Engine 文档中有关 N1 GPU 的信息。ACCELERATOR_TYPE:您要使用的 N1 虚拟机的加速器类型。对于 AI 工作负载,我们建议您使用 T4 或 V100 GPU。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。AUTOMATIC_RESTART:如果实例崩溃或 Compute Engine 因计划停机(如维护事件)而停止实例,是否自动重启实例。指定true可启用自动重启(默认),指定false可停用自动重启。RESERVATION_AFFINITY:实例可以使用的预留(如果可能)。指定以下其中一项:ANY_RESERVATION(预留容量是可选的):这是默认选项。实例尝试使用自动使用的预留中的容量,只有在有匹配的预留容量时才会发生这种情况。否则,实例将使用按需容量。NO_RESERVATION(需要按需容量):阻止实例使用任何预留容量。
-
可选:如需使用本地 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/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"machineType": "MACHINE_TYPE",
"guestAccelerators": [
{
"acceleratorCount": ACCELERATOR_COUNT,
"acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_TYPE"
}
],
"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": {
"instanceTerminationAction": "DELETE",
"maxRunDuration": {
"seconds": RUN_DURATION
},
"onHostMaintenance": "TERMINATE",
"provisioningModel": "FLEX_START"
}
}
}
请完成以下步骤:
-
替换以下内容:
INSTANCE_TEMPLATE_NAME:实例模板的名称。MACHINE_TYPE:用于具有 T4 或 V100 GPU 的 N1 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。ACCELERATOR_COUNT:要挂接到 N1 虚拟机的 GPU 数量。如需查看基于虚拟机的机器类型的 GPU 限制列表,请参阅 Compute Engine 文档中有关 N1 GPU 的信息。ACCELERATOR_TYPE:您要使用的 N1 虚拟机的加速器类型。对于 AI 工作负载,我们建议您使用 T4 或 V100 GPU。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。RUN_DURATION:您希望请求的虚拟机运行的时长(以秒为单位)。该值必须介于600(600 秒,即 10 分钟)到604800(604,800 秒,即 7 天)之间。
-
可选:如需使用本地 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/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"machineType": "MACHINE_TYPE",
"guestAccelerators": [
{
"acceleratorCount": ACCELERATOR_COUNT,
"acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_TYPE"
}
],
"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
}
}
}
请完成以下步骤:
-
替换以下内容:
INSTANCE_TEMPLATE_NAME:实例模板的名称。MACHINE_TYPE:用于具有 T4 或 V100 GPU 的 N1 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。ACCELERATOR_COUNT:要挂接到 N1 虚拟机的 GPU 数量。如需查看基于虚拟机的机器类型的 GPU 限制列表,请参阅 Compute Engine 文档中有关 N1 GPU 的信息。ACCELERATOR_TYPE:您要使用的 N1 虚拟机的加速器类型。对于 AI 工作负载,我们建议您使用 T4 或 V100 GPU。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。DISK_TYPE:启动磁盘的类型。 如需详细了解您的机器类型支持的磁盘类型,请参阅 Compute Engine 文档中的加速器优化型机器家族中的 GPU 机器。TERMINATION_ACTION:当 Compute Engine 抢占实例时执行的操作(STOP[默认] 或DELETE)。
-
可选:如需使用本地 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 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
- 提交请求。
创建实例模板后,您可以查看该模板以查看其 ID 并检查其实例属性。
创建 MIG
完成上述所有步骤后,请根据您的使用情形创建 MIG,如下所示:
| 场景 | 用于创建 MIG 及其中虚拟机的相应方法 | 示例 |
|---|---|---|
| 您有多个或并行作业,这些作业可以从任意数量的虚拟机开始。 | 创建 MIG,并使用目标大小来指定您希望实例组中包含的虚拟机数量。 请参阅创建具有目标大小的 MIG。 |
机器学习推理作业 |
| 您的作业需要分布在确切数量的虚拟机中。 | 创建一个不含任何虚拟机的 MIG,然后在该 MIG 中创建调整大小请求。
借助调整大小请求,您可以一次性获取所有虚拟机。 请参阅创建 MIG 和规模调整请求。 |
分布式机器学习训练和微调作业 |
创建具有目标大小的 MIG
如果您可以在不同时创建所有虚拟机的情况下启动作业,请创建具有目标大小的 MIG。目标大小决定了 MIG 中的虚拟机数量。MIG 会根据当前资源可用性开始创建虚拟机。如果任何资源暂时不可用,MIG 会持续尝试创建虚拟机,以达到目标大小。
如需创建具有目标大小的 MIG,请选择以下选项之一:
gcloud
如需创建具有指定目标大小的 MIG,请使用 instance-groups managed
create 命令。
按如下所示创建可用区级或区域级 MIG:
- 如需创建可用区级 MIG,请使用以下命令:
gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=TARGET_SIZE \ --zone=ZONE
- 如需创建区域级 MIG,请使用以下命令:
gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=TARGET_SIZE \ --region=REGION
MIG_NAME:MIG 的名称。INSTANCE_TEMPLATE_URL:您要用于在 MIG 中创建实例的实例模板的网址。网址可以包含实例模板的 ID 或名称。请指定以下某个值:- 对于区域级实例模板:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - 对于全球实例模板:
INSTANCE_TEMPLATE_ID
- 对于区域级实例模板:
TARGET_SIZE:MIG 中所需的实例数量。ZONE:您要在其中创建 MIG 的可用区。REGION:您要在其中创建 MIG 的区域。 对于区域级 MIG,您可以使用--zones标志指定相应区域中的可用区,而不是指定区域。
REST
如需创建具有指定目标大小的 MIG,请发出 POST 请求。
按如下所示创建可用区级或区域级 MIG:
- 如需创建可用区级 MIG,请向
instanceGroupManagers.insert方法发出POST请求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": TARGET_SIZE } - 如需创建区域级 MIG,请向
regionInstanceGroupManagers.insert方法发出POST请求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "name": "MIG_NAME", "instanceTemplate": "INSTANCE_TEMPLATE_URL", "targetSize": TARGET_SIZE }
PROJECT_ID:项目 ID。ZONE:您要在其中创建 MIG 的可用区。REGION:您要在其中创建 MIG 的区域。INSTANCE_TEMPLATE_URL:您要用于在 MIG 中创建实例的实例模板的网址。网址可以包含实例模板的 ID 或名称。请指定以下某个值:- 对于区域级实例模板:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - 对于全球实例模板:
INSTANCE_TEMPLATE_ID
- 对于区域级实例模板:
MIG_NAME:MIG 的名称。TARGET_SIZE:MIG 中所需的实例数量。
创建 MIG 和规模调整请求
如果您需要同时使用多个虚拟机才能启动作业,请创建一个 MIG,然后在该 MIG 中创建规模调整请求,如本部分中所述。
如需在 MIG 中创建规模调整请求,请选择以下选项之一:
gcloud
您需要指定的参数取决于您为此部署使用的使用选项。选择与您的使用选项的配置模式对应的标签页。
预留
创建可用区级或区域级 MIG 以及规模调整请求,如下所示:
-
如需创建可用区级 MIG 并在其中创建规模调整请求,请执行以下操作:
-
使用
instance-groups managed create命令创建可用区级 MIG,如下所示。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --zone=ZONE -
使用
instance-groups managed resize-requests create命令在可用区级 MIG 中创建规模调整请求,如下所示。 此命令用于指定您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE
-
-
如需创建区域级 MIG 并在其中创建规模调整请求,请执行以下操作:
-
使用
instance-groups managed create命令创建区域级 MIG,如下所示。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --zones=ZONE \ --target-distribution-shape=any-single-zone \ --instance-redistribution-type=none -
使用
instance-groups managed resize-requests create命令在区域级 MIG 中创建规模调整请求,如下所示。 此命令用于指定您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
-
按需
创建可用区级或区域级 MIG 以及规模调整请求,如下所示:
-
如需创建可用区级 MIG 并在其中创建规模调整请求,请执行以下操作:
-
使用
instance-groups managed create命令创建可用区级 MIG,如下所示。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --zone=ZONE -
使用
instance-groups managed resize-requests create命令在可用区级 MIG 中创建规模调整请求,如下所示。 此命令用于指定您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE
-
-
如需创建区域级 MIG 并在其中创建规模调整请求,请执行以下操作:
-
使用
instance-groups managed create命令创建区域级 MIG,如下所示。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --zones=ZONE \ --target-distribution-shape=any-single-zone \ --instance-redistribution-type=none -
使用
instance-groups managed resize-requests create命令在区域级 MIG 中创建规模调整请求,如下所示。 此命令用于指定您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
-
灵活启动
创建可用区级或区域级 MIG 以及规模调整请求,如下所示:
-
如需创建可用区级 MIG 并在其中创建规模调整请求,请执行以下操作:
-
使用
instance-groups managed create命令创建可用区级 MIG,如下所示。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --default-action-on-vm-failure=do-nothing \ --zone=ZONE -
使用
instance-groups managed resize-requests create命令在可用区级 MIG 中创建规模调整请求,如下所示。 此命令用于指定您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE
-
-
如需创建区域级 MIG 并在其中创建规模调整请求,请执行以下操作:
-
使用
instance-groups managed create命令创建区域级 MIG,如下所示。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --default-action-on-vm-failure=do-nothing \ --region=REGION \ --target-distribution-shape=any-single-zone \ --instance-redistribution-type=none -
使用
instance-groups managed resize-requests create命令在区域级 MIG 中创建规模调整请求,如下所示。 此命令用于指定您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
-
Spot
创建可用区级或区域级 MIG 以及规模调整请求,如下所示:
-
如需创建可用区级 MIG 并在其中创建规模调整请求,请执行以下操作:
-
使用
instance-groups managed create命令创建可用区级 MIG,如下所示。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --zone=ZONE -
使用
instance-groups managed resize-requests create命令在可用区级 MIG 中创建规模调整请求,如下所示。 此命令用于指定您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --zone=ZONE
-
-
如需创建区域级 MIG 并在其中创建规模调整请求,请执行以下操作:
-
使用
instance-groups managed create命令创建区域级 MIG,如下所示。gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --zones=ZONE \ --target-distribution-shape=any-single-zone \ --instance-redistribution-type=none -
使用
instance-groups managed resize-requests create命令在区域级 MIG 中创建规模调整请求,如下所示。 此命令用于指定您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --region=REGION
-
MIG_NAME:MIG 的名称。INSTANCE_TEMPLATE_URL:您要用于在 MIG 中创建实例的实例模板的网址。网址可以包含实例模板的 ID 或名称。请指定以下某个值:- 对于区域级实例模板:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - 对于全球实例模板:
INSTANCE_TEMPLATE_ID
- 对于区域级实例模板:
ZONE:您要在其中创建 MIG 的可用区。对于地区级 MIG,您还必须指定可用区。此可用区必须是包含 VPC 网络配置文件的可用区,并且必须是提供相应机器类型的可用区。 如需了解详情,请参阅限制。RESIZE_REQUEST_NAME:调整大小请求的名称,该名称在指定的 MIG 中必须是唯一的。否则,创建调整大小请求的操作将失败。COUNT:要一次性添加到 MIG 的实例数量。REGION:您要在其中创建 MIG 的区域。
通过指定虚拟机名称列表来创建调整大小请求
如果您的工作负载需要特定的虚拟机名称,请指定一个名称列表来创建虚拟机。您指定的名称数量决定了 MIG 一次性创建的虚拟机数量。
如需在 MIG 中创建具有特定虚拟机名称的规模调整请求,请使用带有 --instances 标志的 Beta 版 gcloud compute instance-groups managed resize-requests create 命令:
-
在可用区级 MIG 中,运行以下命令:
gcloud beta compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --instances=INSTANCE_NAMES \ --zone=ZONE -
在区域级 MIG 中,运行以下命令:
gcloud beta compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --instances=INSTANCE_NAMES \ --region=REGION
INSTANCE_NAMES 替换为以英文逗号分隔的虚拟机名称列表。例如,instance-1,instance-2,instance-3。
REST
您需要指定的参数取决于您为此部署使用的使用选项。选择与您的使用选项的配置模式对应的标签页。
预留
创建可用区级或区域级 MIG 以及规模调整请求,如下所示:
- 如需创建可用区级 MIG 并在其中创建规模调整请求,请执行以下操作:
- 向
instanceGroupManagers.insert方法发出POST请求,以创建可用区级 MIG,如下所示。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0 } - 在可用区级 MIG 中,向
instanceGroupManagerResizeRequests.insert方法发出POST请求,以创建规模调整请求,如下所示。 此请求指定了您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 向
- 如需创建区域级 MIG 并在其中创建规模调整请求,请执行以下操作:
- 向
regionInstanceGroupManagers.insert方法发出POST请求以创建区域级 MIG,如下所示。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "distributionPolicy": { "targetShape": "ANY_SINGLE_ZONE", "zones": [ { "zone": "projects/PROJECT_ID/zones/ZONE" } ] }, "updatePolicy": { "instanceRedistributionType": "NONE" } } - 在区域级 MIG 中,向
regionInstanceGroupManagerResizeRequests.insert方法发出POST请求,以创建规模调整请求,如下所示。 此请求指定了您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 向
按需
创建可用区级或区域级 MIG 以及规模调整请求,如下所示:
- 如需创建可用区级 MIG 并在其中创建规模调整请求,请执行以下操作:
- 向
instanceGroupManagers.insert方法发出POST请求,以创建可用区级 MIG,如下所示。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0 } - 在可用区级 MIG 中,向
instanceGroupManagerResizeRequests.insert方法发出POST请求,以创建规模调整请求,如下所示。 此请求指定了您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 向
- 如需创建区域级 MIG 并在其中创建规模调整请求,请执行以下操作:
- 向
regionInstanceGroupManagers.insert方法发出POST请求以创建区域级 MIG,如下所示。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "distributionPolicy": { "targetShape": "ANY_SINGLE_ZONE", "zones": [ { "zone": "projects/PROJECT_ID/zones/ZONE" } ] }, "updatePolicy": { "instanceRedistributionType": "NONE" } } - 在区域级 MIG 中,向
regionInstanceGroupManagerResizeRequests.insert方法发出POST请求,以创建规模调整请求,如下所示。 此请求指定了您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 向
灵活启动
创建可用区级或区域级 MIG 以及规模调整请求,如下所示:
- 如需创建可用区级 MIG 并在其中创建规模调整请求,请执行以下操作:
- 向
instanceGroupManagers.insert方法发出POST请求,以创建可用区级 MIG,如下所示。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "instanceLifecyclePolicy": { "defaultActionOnFailure": "DO_NOTHING" } } - 在可用区级 MIG 中,向
instanceGroupManagerResizeRequests.insert方法发出POST请求,以创建规模调整请求,如下所示。 此请求指定了您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 向
- 如需创建区域级 MIG 并在其中创建规模调整请求,请执行以下操作:
- 向
regionInstanceGroupManagers.insert方法发出POST请求以创建区域级 MIG,如下所示。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "distributionPolicy": { "targetShape": "ANY_SINGLE_ZONE", "zones": [ { "zone": "projects/PROJECT_ID/zones/ZONE" } ] }, "updatePolicy": { "instanceRedistributionType": "NONE" }, "instanceLifecyclePolicy": { "defaultActionOnFailure": "DO_NOTHING" } } - 在区域级 MIG 中,向
regionInstanceGroupManagerResizeRequests.insert方法发出POST请求,以创建规模调整请求,如下所示。 此请求指定了您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 向
Spot
创建可用区级或区域级 MIG 以及规模调整请求,如下所示:
- 如需创建可用区级 MIG 并在其中创建规模调整请求,请执行以下操作:
- 向
instanceGroupManagers.insert方法发出POST请求,以创建可用区级 MIG,如下所示。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0 } - 在可用区级 MIG 中,向
instanceGroupManagerResizeRequests.insert方法发出POST请求,以创建规模调整请求,如下所示。 此请求指定了您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 向
- 如需创建区域级 MIG 并在其中创建规模调整请求,请执行以下操作:
- 向
regionInstanceGroupManagers.insert方法发出POST请求以创建区域级 MIG,如下所示。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "distributionPolicy": { "targetShape": "ANY_SINGLE_ZONE", "zones": [ { "zone": "projects/PROJECT_ID/zones/ZONE" } ] }, "updatePolicy": { "instanceRedistributionType": "NONE" } } - 在区域级 MIG 中,向
regionInstanceGroupManagerResizeRequests.insert方法发出POST请求,以创建规模调整请求,如下所示。 此请求指定了您要创建的虚拟机的数量。如果您的工作负载需要特定的虚拟机名称,请通过指定虚拟机名称列表来创建调整大小请求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT }
- 向
PROJECT_ID:项目 ID。ZONE:您要在其中创建 MIG 的可用区。此可用区必须与包含 VPC 网络配置文件的可用区相同,并且必须是所选机器类型可用的可用区。如需了解详情,请参阅限制。REGION:您要在其中创建 MIG 的区域。此区域必须与包含 VPC 网络配置文件的区域相同,并且必须包含所选机器类型可用的可用区。如需了解详情,请参阅限制。INSTANCE_TEMPLATE_URL:您要用于在 MIG 中创建实例的实例模板的网址。网址可以包含实例模板的 ID 或名称。请指定以下某个值:- 对于区域级实例模板:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - 对于全球实例模板:
INSTANCE_TEMPLATE_ID
- 对于区域级实例模板:
MIG_NAME:MIG 的名称。RESIZE_REQUEST_NAME:调整大小请求的名称,该名称在指定的 MIG 中必须是唯一的。否则,创建调整大小请求的操作将失败。COUNT:要同时添加到 MIG 的实例数量。
通过指定虚拟机名称列表来创建调整大小请求
如果您的工作负载需要特定的虚拟机名称,请指定一个名称列表来创建虚拟机。您指定的名称数量决定了 MIG 一次性创建的虚拟机数量。
如需在 MIG 中创建具有特定虚拟机名称的规模调整请求,请使用以下方法之一:
-
在可用区级 MIG 中,使用
beta.instanceGroupManagerResizeRequests.insert方法发送POST请求:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests
-
在区域级 MIG 中,使用
beta.regionInstanceGroupManagerResizeRequests.insert方法发送POST请求:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests
例如,如需指定两个虚拟机名称,请在请求正文中添加以下内容:
{
"name": "RESIZE_REQUEST_NAME",
"instances": [
{
"name": "INSTANCE_NAME_1"
},
{
"name": "INSTANCE_NAME_2"
}
]
}
将
INSTANCE_NAME_1, INSTANCE_NAME_2 替换为虚拟机的名称。
安装 GPU 驱动程序
创建实例后,除非已安装正确的 GPU 驱动程序,否则该实例无法使用其 GPU。 您需要安装的驱动程序取决于实例是否启用了 NVIDIA RTX 虚拟工作站 (vWS)。使用以下任一选项:
- 如果您启用了 vWS,请参阅 Compute Engine 文档中的为 NVIDIA RTX 虚拟工作站 (vWS) 安装驱动程序。
否则,请使用默认 GPU 驱动程序,如下所示:
- 如果您指定了包含 GPU 驱动程序的操作系统映像,则无需执行任何操作。
- 如果操作系统映像不包含 GPU 驱动程序,请参阅 Compute Engine 文档中的安装 GPU 驱动程序。