AWS/ECS CPUUtilization 平均值与最大值

roc*_*amp 15 amazon-web-services amazon-ecs autoscaling amazon-cloudwatch amazon-cloudwatch-metrics

阅读 AWS 文档后,我仍然不清楚 cloudwatch 指标统计的平均值和最大值,特别是 ECS CPUUtilization。

我有一个 AWS ECS 集群 fargate 设置,一个最少计数为 2 个健康任务的服务。我已使用 AWS/ECS CPUUtilization 为 ClusterName my 和 ServiceName 启用自动缩放。Cloudwatch 警报触发器配置为在 3 个数据点的一分钟内平均 CPU 利用率超过 75% 时触发。

我还有一个健康检查设置,频率为 30 秒,超时为 5 分钟,

我运行了一个性能脚本来测试自动缩放行为,但我注意到该服务被标记为不健康并创建了新任务。当我检查 cpuutilization 指标时,对于平均统计数据,它显示大约 44% 的利用率,但对于最大统计数据,它显示超过 100%,附上截图。

平均数

平均数

最大值 最大值

那么这里的平均值和最大值是多少,这是否意味着平均值是我的两个实例的平均 CPU 利用率?和最大值显示我的实例之一的 CPU 利用率超过 100?

小智 9

这里的平均值和最大值测量 1 分钟内的平均 CPU 使用率和 1 分钟内的最大 CPU 使用率。

在配置自动缩放规则方面,您希望使用平均指标。

最大指标通常是随机短突发峰值,可能由垃圾收集等原因引起。

然而,平均指标是 p50 CPU 使用率,因此一半的时间 CPU 使用率高于该值,一半的时间低于该值。(是的,从技术上讲,这是中位数,但就目前而言,这并不重要)。

当您的 CPU 达到 75-85% 时,您很可能希望使用平均指标进行扩展(请记住,您需要给新任务时间预热)。

对于自动缩放用例,通常可以忽略最大指标。