使用基于 CloudWatch 警报的预定义增量扩展您的 Amazon ECS 服务 - Amazon Elastic Container Service

使用基于 CloudWatch 警报的预定义增量扩展您的 Amazon ECS 服务

在使用步进扩缩策略时,您可以指定 CloudWatch 警报以启动扩缩过程。例如,如果您希望在 CPU 利用率达到特定水平时横向扩展,可以使用提供的 CPUUtilization 指标创建警报。在创建步进扩展策略时,您必须指定以下扩展调整类型之一:

  • 增加 – 按指定的容量单位数量或当前容量的指定百分比来增加任务数量。

  • 移除 – 按指定的容量单位数量或当前容量的指定百分比来减少任务数量。

  • 设定为 - 将任务数量设为指定的容量单位数量。

例如,假设目标容量和执行容量为 10,扩展策略加 1。当突破警报阈值时,自动扩缩过程为 10 增加 1 得到 11,因此 Amazon ECS 为该服务启动 1 个任务。

强烈建议您使用目标跟踪扩缩策略,根据类似于平均 CPU 利用率或每个目标的平均请求数等指标进行扩展。使用目标跟踪,可以通过在容量增加时减少以及在容量减少时增加的指标,按比例横向扩展或缩减任务数。这有助于确保 Service Auto Scaling 密切遵循应用程序的需求曲线。

有关步进扩缩策略及其工作原理的概述,请参阅《Application Auto Scaling 用户指南》中的步进扩缩策略。阅读本简介后,请参阅以下部分,了解如何使用控制台和 AWS Command Line Interface 为 Amazon ECS 配置分步扩缩。

要使用 Amazon ECS 控制台为 Amazon ECS 服务配置步进扩缩策略
  1. 除了用于创建和更新服务的标准 IAM 权限之外,您还需要额外权限。有关更多信息,请参阅 Amazon ECS 服务自动扩缩所需的 IAM 权限

  2. 您可以在创建或更新服务时配置扩缩策略。有关更多信息,请参阅以下章节之一:

要使用 AWS CLI 为 Amazon ECS 服务配置步进扩展策略
  1. 除了用于创建和更新服务的标准 IAM 权限之外,您还需要额外权限。有关更多信息,请参阅 Amazon ECS 服务自动扩缩所需的 IAM 权限

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

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

  4. 使用 put-metric-alarm 命令创建启动扩缩策略的警报。