更新集群以使用 Amazon ECS 托管实例 - Amazon Elastic Container Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

更新集群以使用 Amazon ECS 托管实例

您可以更新现有集群以使用 Amazon ECS 托管实例。

将 Amazon ECS 托管实例添加到集群后,默认情况下,您可以访问 FARGATE_MANAGED_INSTANCE 容量提供程序。此容量提供程序会自动为您的工作负载选择成本最优化的通用实例类型。如果您需要特定的实例属性或类型,还可以创建自定义容量提供程序。

先决条件

默认情况下,Amazon ECS 会根据任务定义中指定的要求选择实例类型。这是默认容量提供程序。如果需要特定的实例属性或类型,请注意所有要求。您需要使用自定义容量提供程序,然后指定实例要求。

您拥有 Amazon ECS 托管实例所需的 IAM 角色。这包括:

  • 基础设施角色:允许 Amazon ECS 代表您调用 Amazon 服务来管理 Amazon ECS 托管实例基础设施。

    有关更多信息,请参阅 Amazon ECS 基础设施 IAM 角色

  • 实例配置文件:为在托管实例上运行的 Amazon ECS 容器代理和 Docker 进程守护程序提供权限。

    有关更多信息,请参阅 Amazon ECS 托管实例实例配置文件

更新注意事项

在为 Amazon ECS 托管实例更新集群时,请考虑以下事项:

  • 正在运行的任务:更新集群设置不会影响当前正在运行的任务。更改将应用于更新后启动的新任务。

  • 容量提供程序更改:如果您修改容量提供程序设置,现有托管实例将继续运行,但新实例将使用更新后的配置。

  • 监控更改:启用或禁用 Container Insights 将影响整个集群的指标收集。

控制台过程

更新集群(Amazon ECS 控制台)
  1. https://console.aws.amazon.com/ecs/v2 打开控制台。

  2. 从导航栏中,选择要使用的区域。

  3. 在导航窗格中,选择集群

  4. 集群页面上,选择要更新的集群。

  5. 选择更新集群

  6. (可选)要修改容量提供程序设置,请在自定义容量提供程序下,根据需要更新以下内容:

    • 对于实例配置文件,请根据需要选择其他实例配置文件角色。

    • 对于基础设施角色,请根据需要选择其他基础设施角色。

    • 要使用自定义容量提供程序,对于实例选择,请更新属性值设置。

  7. 选择更新

Amazon CLI 过程

您可以使用 Amazon CLI 为 Amazon ECS 托管实例更新集群。使用最新版本的 Amazon CLI。有关如何升级到最新版本的更多信息,请参阅安装或更新到最新版本的 Amazon CLI

注意

您可以使用双堆栈服务端点通过 IPv4 和 IPv6 从 Amazon Amazon CLI、SDK 和 Amazon ECS API 与 Amazon ECS 进行交互。有关更多信息,请参阅 使用 Amazon ECS 双堆栈端点

更新集群(Amazon CLI)
  1. 创建容量提供程序。运行如下命令:

    user-input 替换为您的值。

    aws ecs create-capacity-provider \ --name my-managed-instances-provider \ --managed-instances-provider \ --instance-profile arn:aws:iam::123456789012:instance-profile/ecsInstanceProfile \ --infrastructure-role-arn arn:aws:iam::123456789012:role/ecsInfrastructureRole \ --instance-requirements '{ "vCpuCount": {"min": 2, "max": 8}, "memoryMiB": {"min": 4096, "max": 16384} }
  2. 要将容量提供程序添加到集群,请使用以下命令:

    user-input 替换为您的值。

    aws ecs put-cluster-capacity-providers --cluster managed-instances-cluster --capacity-providers my-managed-instances-provider --default-capacity-provider-strategy capacityProvider=my-managed-instances-provider,weight=1