如何在 Amazon ECS 中更改我的容器实例类型?

1 分钟阅读
0

我想更改我的 Amazon Elastic Container Service (Amazon ECS) 集群中的容器实例类型。

简短描述

要更改您的容器实例类型,请执行以下操作之一:

  • 使用 Amazon ECS 控制台更新容器实例。
  • 使用 AWS CloudFormation 更新容器实例。
  • 更新 Amazon ECS 集群容器实例。

更改容器实例类型后,必须替换 Amazon ECS 集群中以前的容器实例。

解决方法

使用 Amazon ECS 控制台更新容器实例

完成以下步骤:

  1. 打开 Amazon ECS 控制台
  2. 在导航窗格中,选择 Clusters(集群)。
  3. 选择您的集群。
  4. 选择 Infrastructure(基础设施)选项卡,然后选择与您的容量提供商关联的 Amazon EC2 Auto Scaling 组。
  5. 选择 EC2 Auto Scaling 组的启动模板。
  6. 创建启动模板版本
  7. 对于 Instance type(实例类型),选择新的启动模板版本。
  8. 使用新的启动模板版本更新自动扩缩组

使用 CloudFormation 更新容器实例

完成以下步骤:

  1. 打开 CloudFormation 控制台
  2. 选择包含您的 Amazon ECS 资源的堆栈。
  3. 更新包含资源的堆栈的堆栈模板以更改 InstanceType 值。
    **注意:**更改 InstanceType 值后,AutoScalingReplacingUpdate 策略会默认生成一个新的启动模板。CloudFormation 还将自动扩缩组更新为最新版本的启动模板。但是,CloudFormation 不会自动替换现有实例。
  4. 使用变更集更新堆栈,或直接更新堆栈

更新 Amazon ECS 集群容器实例

完成以下步骤:

  1. 打开 Amazon ECS 控制台
  2. 在导航窗格中,选择 Clusters(集群)。
  3. 选择您的集群。
  4. 选择 Infrastructure(基础设施)选项卡,然后选择与您的容量提供商关联的自动扩缩组。
  5. Instance type requirements(实例类型要求)下,选择 Instance type(实例类型)。
    如果您的自动扩缩组从您的启动模板中获取实例类型,请使用 Amazon ECS 控制台更新容器实例。
  6. 选择 Update(更新)。

替换之前的容器实例

为了减少应用程序的停机时间,请在耗尽先前的容器实例之前扩展更多实例。

为您的自动扩缩组的所需容量配置以下设置

  • 对于 Desired capacity(所需容量),输入现有值两倍的值。
  • 对于 Max desired capacity(最大所需容量),将该值更新为大于 Desired capacity(所需容量)值的值。

要将先前的实例替换为新实例,请完成以下步骤:

  1. 打开 Amazon ECS 控制台
  2. 在导航窗格中,选择 Clusters(集群)。
  3. 选择您的集群。
  4. 选择 Infrastructure(基础设施)选项卡。
  5. Container instances(容器实例)下,选择先前容器实例的 ID。
  6. 展开 Actions(操作)菜单,然后选择 Drain(耗尽)。
  7. 验证您之前的容器实例的 Running tasks count(运行任务数)是否为 0
  8. 选择先前容器实例的 ID,然后选择 Deregister(取消注册)。
  9. 将 Desired capacity(所需容量)和 Max desired capacity(最大所需容量)设置为其原始值,然后选择 Save(保存)
    **注意:**如果您的自动扩缩组具有默认终止策略,则此操作将关闭 Amazon ECS 集群中以前的容器实例

或者,使用实例刷新来更新自动扩缩组中的实例

相关信息

控制在横向缩减过程中要终止的自动扩缩实例

AWS 官方
AWS 官方已更新 1 个月前