我正在尝试在ECS群集中设置扩展策略,以便组成ECS群集的EC2实例和ECS Service中运行的任务可以根据我指定的扩展策略进行扩展和缩减。我为此创建了2个云监视警报,它将检查CPUUtilization资源。
1) HIGH_CPU_Usage : Whenever >= 80 %
2) LOW_CPU_Usage : Whenever <= 40 %
我需要澄清以下几点,任何人都可以帮助我找出答案。
1)当“ HIGH_CPU_Usage”警报触发时,EC2实例和ECS任务扩展事件将同时发生。任务扩展事件是否将等待ec2实例扩展事件完成。
2)如果EC2实例扩展事件需要花费更多时间才能完成,并且ECS任务扩展事件同时在群集中找不到可用资源,则会发生什么情况。
3)如果CPU负载急剧上升和下降,实例放大和缩小实例会发生多次,这将导致大量账单。有什么办法解决这些问题
答案 0 :(得分:0)
您正在谈论 ec2自动缩放和任务(容器)自动缩放。这两个自动缩放功能彼此独立,因此您无法像使用单个云监视警报一样尝试从单个来源控制这两个。
请为您的要点找到以下答案。
1)当“ HIGH_CPU_Usage”警报触发时,EC2实例和ECS任务扩展事件将同时发生。任务扩展事件是否将等待ec2实例扩展事件完成。
答案-是的,这两个事件是同时发生的,因为它们彼此独立,而且没有人等待彼此。
2)如果EC2实例扩展事件需要花费更多时间才能完成,并且ECS任务扩展事件同时在群集中找不到可用资源,则会发生什么情况。
答案-由于没有扩展资源,ECS任务扩展失败。但是它将在一分钟后重试,直到服务未达到所需的状态。
3)如果CPU负载急剧上升和下降,则实例放大和缩小会多次发生,这将导致大量账单。有什么办法可以解决这些问题。
答案-使用基于请求的自动缩放或阅读以下文档以了解更多详细信息。
https://aws.amazon.com/blogs/compute/automatic-scaling-with-amazon-ecs/
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cloudwatch_alarm_autoscaling.html