本文档介绍了如何创建具有实例灵活性的代管式实例组 (MIG),以便您在 MIG 中指定多种机器类型。
实例灵活性有助于提高资源可用性,尤其是对于可在不同机器类型上运行且需要大规模容量或高需求硬件的应用。如需了解详情,请参阅实例灵活性简介。
您还可以阅读创建 MIG 的其他基本场景。
准备工作
- 创建实例模板,以便创建代管式实例组。
-
如果您尚未设置身份验证,请进行设置。身份验证是通过其进行身份验证以访问 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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
在 Google Cloud 控制台中,转到实例组页面。
点击创建实例组。
在名称字段中,输入 MIG 的名称。
在实例模板列表中,选择要为 MIG 使用的实例模板。
您需要先执行以下操作,然后才能指定实例数并添加实例选择:
按如下方式设置位置:
继续滚动到位置部分,然后选择多个可用区。
在区域和可用区下拉菜单中,选择要在 MIG 中创建虚拟机的区域和可用区。如果您选择了区域级实例模板,则系统会默认选择该模板所在的区域。
在目标分布形状字段中,选择均衡或任意单个可用区。
在随即打开的对话框中,点击停用实例重新分配。
按如下方式删除自动扩缩配置:
在自动扩缩部分中,点击自动扩缩模式下拉菜单中的删除自动扩缩配置。
在随即打开的对话框中,点击删除。
滚动回实例数字段。
在实例数字段中,指定您希望在该组中包含的虚拟机数量。
在实例选择部分中,点击添加实例选择。
系统随即会打开实例选择窗口。
点击添加实例选择。
在新实例选择部分中,执行以下操作:
在名称字段中,为所选实例输入名称。
在机器类型部分中,点击添加机器类型,在实例选择中选择要添加的机器类型,然后点击完成。
针对您要添加到实例选择中的每种机器类型重复此步骤。
将机器类型添加到实例选择后,点击完成。
在实例选择窗口中,点击完成。
将其他字段保留为默认设置,或根据需要进行修改。
点击创建。
INSTANCE_GROUP_NAME
:MIG 的名称。REGION
:您要在其中创建 MIG 的区域。TARGET_SIZE
:您希望 MIG 创建和维护的虚拟机数量。INSTANCE_TEMPLATE
:实例模板的名称。SHAPE
:目标分布形状。值可以是balanced
或any-single-zone
。不支持其他目标分布形状。MACHINE_TYPE
:您要在 MIG 中配置的机器类型,例如n1-standard-16,n2-standard-16,e2-standard-16
。PROJECT_ID
:您的项目 ID。REGION
:您要在其中创建 MIG 的区域。INSTANCE_GROUP_NAME
:MIG 的名称。TARGET_SIZE
:您希望 MIG 创建和维护的虚拟机数量。INSTANCE_TEMPLATE_URL
:实例模板的网址。SHAPE
:目标分布形状。值可以是BALANCED
或ANY_SINGLE_ZONE
。不支持其他目标分布形状。INSTANCE_SELECTION
:机器类型列表的名称。MACHINE_TYPE
:您要在 MIG 中配置的机器类型,例如"n1-standard-16","n2-standard-16","e2-standard-16"
。- 检查实例灵活性配置。
- 更改实例灵活性,以根据您的偏好设置使用机器类型。
- 创建具有多个机器类型和偏好的 MIG。
- 移除实例灵活性。
Terraform
如需在本地开发环境中使用本页面上的 Terraform 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
如需了解详情,请参阅 Set up authentication for a local development environment。
REST
如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭据。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
如需了解详情,请参阅 Google Cloud 身份验证文档中的使用 REST 时进行身份验证。
创建具有多个机器类型的 MIG
控制台
gcloud
如需创建具有多个机器类型的区域级 MIG,请使用
instance-groups managed create
命令,如下所示:gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \ --region REGION \ --size TARGET_SIZE \ --template INSTANCE_TEMPLATE \ --target-distribution-shape SHAPE \ --instance-redistribution-type none \ --instance-selection-machine-types MACHINE_TYPE,MACHINE_TYPE,...
可用区 MIG 不支持实例灵活性。不过,如果您想在单个可用区中创建 MIG,请将目标分布形状设置为
any-single-zone
。此外,如果您想要特定区域,请使用any-single-zone
分布形状并添加--zones ZONE
标志。替换以下内容:
Terraform
如果您尚未创建您希望为 MIG 中的每个虚拟机指定虚拟机属性的实例模板,请创建实例模板。
如需创建具有多个机器类型的区域级 MIG,请使用
google_compute_region_instance_group_manager
资源。如需了解如何应用或移除 Terraform 配置,请参阅基本 Terraform 命令。
REST
如需创建具有多个机器类型的区域级 MIG,请向
regionInstanceGroupManagers.insert
方法发出POST
请求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "name": "INSTANCE_GROUP_NAME", "targetSize": TARGET_SIZE, "instanceTemplate": "INSTANCE_TEMPLATE_URL", "distributionPolicy": { "targetShape": "SHAPE" }, "updatePolicy": { "instanceRedistributionType": "NONE" }, "instanceFlexibilityPolicy": { "instanceSelections": { "INSTANCE_SELECTION": { "machineTypes": [ "MACHINE_TYPE_1", "MACHINE_TYPE_2", ... ] } } } }
可用区 MIG 不支持实例灵活性。不过,如果您想在单个可用区中创建 MIG,请将目标分布形状设置为
ANY_SINGLE_ZONE
。此外,如果您想要特定区域,请使用ANY_SINGLE_ZONE
分布形状,并在请求中添加distributionPolicy.zones[].zone
字段。替换以下内容:
后续步骤
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-12-22。
-