本文档介绍了如何创建使用 G4 机器类型的代管式实例组 (MIG)。如需详细了解这些加速器优化机器类型,请参阅 G4 系列。
创建 MIG 后,您可以将多个虚拟机 (VM) 作为单个实体进行管理。MIG 中的每个虚拟机均基于实例模板。通过自动管理实例组中的虚拟机,MIG 可提供高可用性和可伸缩性。如需详细了解 MIG,请参阅 Compute Engine 文档中的托管式实例组。
如需了解创建虚拟机或集群的其他方法,请参阅部署选项概览。
限制
创建包含 G4 虚拟机的 MIG 时,请考虑机器类型和 MIG 的限制。
G4 虚拟机的限制
创建 G4 虚拟机时,存在以下限制:
- 使用 G4 机器类型的实例不会获得持续使用折扣和灵活承诺使用折扣。
- 只能在部分区域和可用区使用 G4 机器类型。
- 不能在使用 G4 机器类型的实例上使用永久性磁盘(区域级或可用区级)。
- G4 机器类型仅在 AMD EPYC Turin 第 5 代平台上提供。
- 您只能在有限的区域和可用区中使用具有
g4-standard-48机器类型的机密虚拟机。适用于在 G4 机器类型上运行的机密虚拟机的所有限制均适用。 - 不能在单租户节点上创建 G4 实例。
- 您无法在
g4-standard-384实例上使用 Windows 操作系统。 - 您无法将 2026 年 2 月 4 日之前创建的 Hyperdisk ML 磁盘挂接到 G4 机器类型。
- 创建附加的 GPU 不足一个(部分 GPU)的 G4 实例时,请勿使用
--no-service-account或--no-scopes标志。为了对 NVIDIA vGPU 驱动程序进行身份验证,Compute Engine 必须验证虚拟机的身份。此流程要求启用服务账号。
MIG 的限制
您不能同时使用放置政策和调整大小请求。对于每个 MIG,请选择是否要使用以下一项或两项功能:
- 如果您想通过将虚拟机放置在同一位置来缩短延迟时间,请在实例模板中使用紧凑布置政策。
- 如果您希望一次性创建所有虚拟机,希望提高可获取性,并且选择了受支持的使用选项,请为 MIG 使用调整大小请求。
- 如果您想使用紧凑布置政策,请查看布置政策的限制。
- 如果您想使用调整大小请求,请查看调整大小请求的限制。
准备工作
在创建 MIG 之前,如果您尚未完成以下步骤,请先完成这些步骤:
- 选择使用选项:您选择的使用选项决定了您如何获取和使用 GPU 资源。如需了解详情,请参阅选择消费选项。
- 获取容量:每种使用选项的容量获取流程各不相同。如需了解为所选使用选项获取容量的流程,请参阅容量概览。
所需的角色
如需获得创建 MIG 所需的权限,请让您的管理员为您授予项目的 Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1) IAM 角色。
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
此预定义角色包含创建 MIG 所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
您需要具备以下权限才能创建 MIG:
-
如需创建 MIG:针对项目的
compute.instanceGroupManagers.create权限
概览
创建具有 G4 机器类型的 MIG 包括以下步骤:
对于每个 MIG,您都必须选择是否要使用紧凑布置政策、使用调整大小请求,或者两者都不使用。如需详细了解何时使用每种选项,请参阅本文档中的 MIG 的限制。
可选:创建紧凑布置政策
您可以通过创建紧凑布置政策来指定虚拟机布置。当您将紧凑布置政策应用于虚拟机时,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 可用性。
创建实例模板
通过创建实例模板来指定 MIG 的虚拟机属性。
如需创建实例模板,请选择以下选项之一:
以下命令还会设置实例的访问权限范围。为简化权限管理,Google 建议您将实例的访问权限范围设置为cloud-platform 访问权限,然后使用 IAM 角色定义实例可以访问哪些服务。如需了解详情,请参阅范围最佳实践。
gcloud
如需创建区域级实例模板,请使用 gcloud compute instance-templates create 命令。
您需要指定的参数取决于您为此部署使用的使用选项。选择与您的使用选项对应的标签页。
预留
G4 实例支持以下预留类型:
- 按需预留
- 标准未来预留
如需使用这些类型的预留,实例必须使用标准预配模型。例如,使用以下创建参数。
在运行命令之前,请查看以下所有步骤,以确定是否要添加其他标志。
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--instance-template-region=REGION \
--boot-disk-type=hyperdisk-balanced \
--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:用于 G4 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 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:紧凑布置政策的名称。
-
可选:如需挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘添加以下
--local-ssd标志。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。具体而言,G4 机器类型使用 Titanium 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 \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--instance-template-region=REGION \
--boot-disk-type=hyperdisk-balanced \
--boot-disk-size=DISK_SIZE \
--scopes=cloud-platform \
--provisioning-model=STANDARD \
--maintenance-policy=TERMINATE \
--reservation-affinity=RESERVATION_AFFINITY
请完成以下步骤:
-
替换以下内容:
INSTANCE_TEMPLATE_NAME:实例模板的名称。MACHINE_TYPE:用于 G4 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。RESERVATION_AFFINITY:实例可以使用的预留(如果可能)。指定以下其中一项:any(预留容量是可选的):这是默认选项。实例尝试使用自动使用的预留中的容量,只有在有匹配的预留容量时才会发生这种情况。否则,实例将使用按需容量。none(需要按需容量):阻止实例使用任何预留容量。
默认情况下,如果实例崩溃或 Compute Engine 因计划停止(例如维护事件)而停止实例,则实例会自动重启。如果您想停用自动重启,请添加以下标志:
--no-restart-on-failure
-
可选:如果您选择使用紧凑布置政策,请向命令添加以下标志:
--resource-policies=POLICY_NAME
替换以下内容:
POLICY_NAME:紧凑布置政策的名称。
-
可选:如需挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘添加以下
--local-ssd标志。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。具体而言,G4 机器类型使用 Titanium 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 \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--instance-template-region=REGION \
--boot-disk-type=hyperdisk-balanced \
--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:用于 G4 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 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 磁盘简介。具体而言,G4 机器类型使用 Titanium 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 \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--instance-template-region=REGION \
--boot-disk-type=hyperdisk-balanced \
--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:用于 G4 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。TERMINATION_ACTION:当 Compute Engine 抢占实例时执行的操作(STOP[默认] 或DELETE)。
-
可选:如果您选择使用紧凑布置政策,请向命令添加以下标志:
--resource-policies=POLICY_NAME
替换以下内容:
POLICY_NAME:紧凑布置政策的名称。
-
可选:如需挂接本地 SSD 磁盘,请为每个本地 SSD 磁盘添加以下
--local-ssd标志。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。具体而言,G4 机器类型使用 Titanium SSD 磁盘。
--local-ssd interface=INTERFACE_TYPE
替换以下内容:
INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
-
可选:如需使用 NVIDIA RTX 虚拟工作站 (vWS),请添加以下标志。
当您创建使用 NVIDIA RTX 虚拟工作站的实例时,Compute Engine 会自动添加 vWS 许可。如需了解虚拟工作站的价格,请参阅 GPU 价格页面。
--accelerator=type=nvidia-rtx-pro-6000-vws,count=VWS_ACCELERATOR_COUNT
将
VWS_ACCELERATOR_COUNT替换为您需要的虚拟 GPU 数量。 - 运行以上命令。
REST
如需创建区域级实例模板,请向 regionInstanceTemplates.insert 方法发出 POST 请求。
您需要指定的参数取决于您为此部署使用的使用选项。选择与您的使用选项对应的标签页。
预留
G4 实例支持以下预留类型:
- 按需预留
- 标准未来预留
如需使用这些类型的预留,实例必须使用标准预配模型。例如,使用以下创建参数。
在提交请求之前,请查看以下所有步骤,以确定是否需要添加其他字段。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"machineType": "MACHINE_TYPE",
"disks": [
{
"boot": true,
"initializeParams": {
"diskSizeGb": "DISK_SIZE",
"diskType": "hyperdisk-balanced",
"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:用于 G4 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。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:预留的名称。
- 如果您指定了
-
可选:如果您选择使用紧凑布置政策,请将以下
instanceProperties子字段添加到请求正文中:"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]替换以下内容:
PROJECT_ID:紧凑布置政策的项目 ID。REGION:紧凑布置政策所在的区域。POLICY_NAME:紧凑布置政策的名称。
-
可选:如需使用本地 SSD 磁盘,请将以下字段添加到每个本地 SSD 磁盘的
disks[]字段中。使用英文逗号分隔每个disks[]子字段(包括启动磁盘)。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。具体而言,G4 机器类型使用 Titanium SSD 磁盘。
{ "type": "SCRATCH", "initializeParams": { "diskType": "zones/ZONE/diskTypes/local-ssd" }, "autoDelete": true, "interface": "INTERFACE_TYPE" }替换以下内容:
ZONE:您指定的可用区。INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
-
可选:如需使用 NVIDIA RTX 虚拟工作站 (vWS),请添加以下字段。
当您创建使用 NVIDIA RTX 虚拟工作站的实例时,Compute Engine 会自动添加 vWS 许可。如需了解虚拟工作站的价格,请参阅 GPU 价格页面。
"guestAccelerators": [ { "acceleratorCount": VWS_ACCELERATOR_COUNT, "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/nvidia-rtx-pro-6000-vws" } ]将
VWS_ACCELERATOR_COUNT替换为您需要的虚拟 GPU 数量。 - 提交请求。
按需
在提交请求之前,请查看以下所有步骤,以确定是否需要添加其他字段。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"machineType": "MACHINE_TYPE",
"disks": [
{
"boot": true,
"initializeParams": {
"diskSizeGb": "DISK_SIZE",
"diskType": "hyperdisk-balanced",
"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:用于 G4 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。AUTOMATIC_RESTART:如果实例崩溃或 Compute Engine 因计划停机(如维护事件)而停止实例,是否自动重启实例。指定true可启用自动重启(默认),指定false可停用自动重启。RESERVATION_AFFINITY:实例可以使用的预留(如果可能)。指定以下其中一项:ANY_RESERVATION(预留容量是可选的):这是默认选项。实例尝试使用自动使用的预留中的容量,只有在有匹配的预留容量时才会发生这种情况。否则,实例将使用按需容量。NO_RESERVATION(需要按需容量):阻止实例使用任何预留容量。
-
可选:如果您选择使用紧凑布置政策,请将以下
instanceProperties子字段添加到请求正文中:"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]替换以下内容:
PROJECT_ID:紧凑布置政策的项目 ID。REGION:紧凑布置政策所在的区域。POLICY_NAME:紧凑布置政策的名称。
-
可选:如需使用本地 SSD 磁盘,请将以下字段添加到每个本地 SSD 磁盘的
disks[]字段中。使用英文逗号分隔每个disks[]子字段(包括启动磁盘)。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。具体而言,G4 机器类型使用 Titanium SSD 磁盘。
{ "type": "SCRATCH", "initializeParams": { "diskType": "zones/ZONE/diskTypes/local-ssd" }, "autoDelete": true, "interface": "INTERFACE_TYPE" }替换以下内容:
ZONE:您指定的可用区。INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
-
可选:如需使用 NVIDIA RTX 虚拟工作站 (vWS),请添加以下字段。
当您创建使用 NVIDIA RTX 虚拟工作站的实例时,Compute Engine 会自动添加 vWS 许可。如需了解虚拟工作站的价格,请参阅 GPU 价格页面。
"guestAccelerators": [ { "acceleratorCount": VWS_ACCELERATOR_COUNT, "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/nvidia-rtx-pro-6000-vws" } ]将
VWS_ACCELERATOR_COUNT替换为您需要的虚拟 GPU 数量。 - 提交请求。
灵活启动
在提交请求之前,请查看以下所有步骤,以确定是否需要添加其他字段。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
"name": "INSTANCE_TEMPLATE_NAME",
"properties": {
"machineType": "MACHINE_TYPE",
"disks": [
{
"boot": true,
"initializeParams": {
"diskSizeGb": "DISK_SIZE",
"diskType": "hyperdisk-balanced",
"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:用于 G4 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。RUN_DURATION:您希望请求的虚拟机运行的时长(以秒为单位)。该值必须介于600(600 秒,即 10 分钟)到604800(604,800 秒,即 7 天)之间。
-
可选:如需使用本地 SSD 磁盘,请将以下字段添加到每个本地 SSD 磁盘的
disks[]字段中。使用英文逗号分隔每个disks[]子字段(包括启动磁盘)。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。具体而言,G4 机器类型使用 Titanium 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",
"disks": [
{
"boot": true,
"initializeParams": {
"diskSizeGb": "DISK_SIZE",
"diskType": "hyperdisk-balanced",
"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:用于 G4 实例的机器类型。如需了解详情,请参阅 Compute Engine 文档中的 GPU 机器类型。IMAGE_FAMILY:您要使用的操作系统映像所属的映像系列。 如需查看所有受支持的操作系统的列表,请参阅受支持的操作系统。IMAGE_PROJECT:操作系统映像的项目 ID。REGION:要在其中创建实例模板的区域。 指定提供您要使用的机器类型的区域。 如需了解区域,请参阅按区域和可用区划分的 GPU 可用性。DISK_SIZE:启动磁盘的大小(以 GB 为单位)。如需了解详情,请参阅 Google Cloud Hyperdisk 大小限制或永久性磁盘大小限制(具体取决于磁盘类型)。TERMINATION_ACTION:当 Compute Engine 抢占实例时执行的操作(STOP[默认] 或DELETE)。
-
可选:如果您选择使用紧凑布置政策,请将以下
instanceProperties子字段添加到请求正文中:"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]替换以下内容:
PROJECT_ID:紧凑布置政策的项目 ID。REGION:紧凑布置政策所在的区域。POLICY_NAME:紧凑布置政策的名称。
-
可选:如需使用本地 SSD 磁盘,请将以下字段添加到每个本地 SSD 磁盘的
disks[]字段中。使用英文逗号分隔每个disks[]子字段(包括启动磁盘)。确保您挂接的本地 SSD 磁盘数量符合您的机器类型允许的数量;有关详情,请参阅 Compute Engine 文档中的本地 SSD 磁盘简介。具体而言,G4 机器类型使用 Titanium SSD 磁盘。
{ "type": "SCRATCH", "initializeParams": { "diskType": "zones/ZONE/diskTypes/local-ssd" }, "autoDelete": true, "interface": "INTERFACE_TYPE" }替换以下内容:
ZONE:您指定的可用区。INTERFACE_TYPE:要用于本地 SSD 磁盘的磁盘接口类型。如果您的启动磁盘映像具有优化的 NVMe 驱动程序,请指定NVME。请为其他映像指定SCSI。
创建具有本地 SSD 磁盘的虚拟机后,必须先格式化并装载每个设备,然后才能使用。
-
可选:如需使用 NVIDIA RTX 虚拟工作站 (vWS),请添加以下字段。
当您创建使用 NVIDIA RTX 虚拟工作站的实例时,Compute Engine 会自动添加 vWS 许可。如需了解虚拟工作站的价格,请参阅 GPU 价格页面。
"guestAccelerators": [ { "acceleratorCount": VWS_ACCELERATOR_COUNT, "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/nvidia-rtx-pro-6000-vws" } ]将
VWS_ACCELERATOR_COUNT替换为您需要的虚拟 GPU 数量。 - 提交请求。
创建实例模板后,您可以查看该模板以查看其 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。 您需要安装的驱动程序取决于实例是否具有部分 GPU 或是否已启用 NVIDIA RTX 虚拟工作站 (vWS)。使用以下任一选项:
- 如果您指定的机器类型包含部分 GPU,例如
g4-standard-6、g4-standard-12或g4-standard-24,请参阅 Compute Engine 文档中的安装 vGPU 驱动程序(部分 GPU)。 - 如果您启用了 vWS,请参阅 Compute Engine 文档中的为 NVIDIA RTX 虚拟工作站 (vWS) 安装驱动程序。
否则,请使用默认 GPU 驱动程序,如下所示:
- 如果您指定了包含 GPU 驱动程序的操作系统映像,则无需执行任何操作。
- 如果操作系统映像不包含 GPU 驱动程序,请参阅 Compute Engine 文档中的安装 GPU 驱动程序。