每次ECS扩展时,AWS Cloudwatch都会显示CPU利用率非常低

时间:2018-12-06 04:31:29

标签: cpu-usage amazon-ecs autoscaling aws-fargate

每次ECS Fargate服务扩展或扩展时,Cloudwatch都会在图形上以非常低的百分比(大约2 -> 3%)(与内存相同)显示CPU利用率,尽管在此之前,它将逐渐增加,很高(策略:80% for scaling out, 40% for scaling in)。

我只是担心缩放时是否有任何不可用的时间段(或休息时间)?

1 个答案:

答案 0 :(得分:0)

  

我只是担心缩放时是否有任何不可用的时间段(或休息时间)?

从技术上讲,在Fargate级别,只要您为服务设置的最小任务数> = 1,就不会给出答案。

尽管说“不”,但摆动的空间是,如果您的应用程序从70%的CPUUtilization飙升至100%,则在Cloudwatch能够触发警报之前,应用程序本身可能会变得无响应,进而触发服务扩展。


  

尽管在那之前,它已经很高了

请记住,缩放操作不是瞬时的。如果您将Cloudwatch指标用于CPUUtilization的时间为60秒,并且阈值为2,则意味着在触发自动扩展之前,您的任务必须在2分钟以上的时间内达到> 80%的利用率。

此外,Fargate的启动时间比ECS启动类型的启动时间慢,因为AWS必须在后台做一些魔术-特别是下载映像并附加ENI-使其成为“无服务器”。

因此,如果您的应用程序利用率超过80%,您将不会立即看到它自动缩放。这可能可以解释您在Cloudwatch中看到的利用率已经足够高以触发缩放的情况,下降到2%,但是在触发缩放之后。