为 Amazon EC2 服务自动扩缩创建步进扩缩策略 - Amazon Elastic Container Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

为 Amazon EC2 服务自动扩缩创建步进扩缩策略

创建步进扩缩策略,以便 Amazon ECS 自动增加或减少服务中所需的任务数。步进扩缩基于一组扩缩调整(称作步进调整),这些调整因警报违例大小而异。

  1. 除了用于创建和更新服务的标准 IAM 权限之外,您还需要额外权限。有关更多信息,请参阅 Amazon ECS 服务自动扩缩所需的 IAM 权限

  2. 请确定要用于策略的指标。可供使用的指标如下:

    • ECSServiceAverageCPUUtilization:服务应使用的平均 CPU 使用率。

    • ECSServiceAverageMemoryUtilization:服务应使用的平均内存使用率。

    • ALBRequestCountPerTarget:任务理想情况下应接收的平均每分钟请求数。

  3. 为指标创建 CloudWatch 警报。有关更多信息,请参阅 Amazon CloudWatch 用户指南中的根据静态阈值创建 CloudWatch 告警

  4. https://console.aws.amazon.com/ecs/v2 打开控制台。

  5. Clusters(集群)页面上,选择集群。

  6. 在“集群详细信息”页面,找到服务部分,然后选择服务。

    此时系统会显示服务详细信息页面。

  7. 选择设置任务数

  8. Amazon ECS 服务任务计数下,选择使用自动扩缩

    此时将显示任务计数部分

    1. 对于最小任务数,输入供服务自动扩缩使用的任务数的下限。所需计数不会低于此计数。

    2. 对于最大值,输入供服务自动扩缩使用的任务数的上限。所需计数不会高于此计数。

    3. 选择保存

      此时将显示策略页面。

  9. 选择创建扩缩策略

    此时将显示创建策略页面。

  10. 对于扩缩策略类型,选择步进扩缩

  11. 配置横向扩展属性。在添加任务的步骤下,执行以下操作:

    1. 对于 Policy name(策略名称),请输入策略的名称。

    2. CloudWatch 警报名称中,选择 CloudWatch 警报。

    3. 对于指标聚合类型,选择如何将所选指标与定义的阈值进行比较。

    4. 对于调整类型,选择是基于任务数的变化还是基于任务百分比的变化进行调整。

    5. 对于要采取的操作,输入要采取的操作的值。

      选择添加步骤以添加其他操作。

  12. 配置横向缩减属性。在移除任务的步骤下,执行以下操作:

    1. 对于 Policy name(策略名称),请输入策略的名称。

    2. CloudWatch 警报名称中,选择 CloudWatch 警报。

    3. 对于指标聚合类型,选择如何将所选指标与定义的阈值进行比较。

    4. 对于调整类型,选择是基于任务数的变化还是基于任务百分比的变化进行调整。

    5. 对于要采取的操作,输入要采取的操作的值。

      选择添加步骤以添加其他操作。

  13. 对于冷却时间,输入等待先前的扩展活动生效的时间(以秒为单位)。对于添加策略,该时间是在横向扩展活动之后,扩展策略阻止横向缩减活动并限制一次可以横向扩展的任务数量的时间。对于移除策略,该时间是横向缩减活动结束后,在另一个横向缩减活动可以开始前经过的时间。

  14. 选择创建扩缩策略

  1. 使用 register-scalable-target 命令将 Amazon ECS 服务注册为可扩展目标。

  2. 使用 put-scaling-policy 命令创建扩展策略。