AWS ECS 集群自动扩展

AWS ECS Cluster Autoscaling

我正在尝试在 ECS 集群中设置扩展策略,以便组成 ECS 集群的 EC2 实例和在 ECS 服务中运行的任务可以根据我指定的扩展策略进行扩展和缩减。我为此创建了 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负载上下波动,实例放大和缩小会发生多次,这将导致巨额账单。有什么办法可以解决这些

您正在谈论 ec2 自动缩放任务(容器)自动缩放。这两个自动缩放彼此独立,您无法像尝试使用单个云监视警报那样从单一来源控制这两个。

请在下面找到您要点的答案。

1) 当"HIGH_CPU_Usage"警报触发时,EC2实例和ECS任务扩容事件会同时发生。任务扩展事件是否会等待 ec2 实例扩展事件完成。

回答 - 是的,两个事件同时发生,因为它们彼此独立,没有人互相等待。

2) 如果 EC2 实例扩展事件需要更多时间才能完成,同时 ECS 任务扩展事件发现集群中没有可用资源,将会发生什么。

回答 - 然后 ECS 任务扩展失败,因为没有用于扩展的资源。但它会在一分钟后重试,直到服务不在所需状态。

3) 如果CPU load spikes up and down, Instance scale up and scale down occurs monthly and it will cause high billing.有什么办法可以解决这些问题吗

答案 - 使用请求基础自动缩放或阅读下面的文档了解更多详细信息。

https://aws.amazon.com/blogs/compute/automatic-scaling-with-amazon-ecs/

https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cloudwatch_alarm_autoscaling.html