-1

我正在寻找有关 AWS 自动缩放的一些信息。我遇到了一个问题,即 AWS 连续两次向外扩展,即使流量增加的幅度很小。

当我的 RequestCountPerTarget 超过阈值时,我设置了一个警报以添加 2 个任务。这些应该不仅仅涵盖增加的流量。警报的间隔是 3 个数据点(因此在 3 分钟内)。

然而,AWS 添加任务似乎需要大约 5 分钟。我怀疑这是问题所在 - 它能否再次发出警报,而这 2 个任务仍在添加/注册?(在达到“稳定状态”之前)

如果是这样,有没有比增加 3 分钟间隔更好的选择?(我担心我们不会对流量高峰做出快速反应。)

感谢任何输入!

4

1 回答 1

1

由于您提到了 ECS 任务,我假设您的意思是 Application AutoScaling(AWS AutoScaling 是一项不同的服务)。对于 AutoScaling,只要警报处于 Alarm 状态,它就会每分钟向 AutoScaling 发送通知,然后 AutoScaling 检查它是否可以根据扩展策略设置进行扩展。所以:

  1. ELB 服务将指标推送到 cloudwatch
  2. 警报每分钟都会查看过去,无论您配置了多少小步舞曲/时段,并决定它是否应该进入警报 https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html
  3. 警报进入警报状态后,它会在保持警报状态时每分钟通知 AutoScaling(无论警报设置是什么,因为警报每分钟都会评估一次)

为确保不会发生过度扩展,您需要在扩展策略上设置冷却时间。扩展策略不会再次增加所需容量,除非:

A) 触发更大的横向扩展(基于当前警报值)

B) 冷却时间结束

于 2020-09-26T19:19:12.303 回答