CloudWatch 警报与 Container Insights 之间不一致

CloudWatch 警报与 Container Insights 之间不一致

我在 ECS Fargate 中运行 .NET 6 容器。我的任务定义定义了任务大小:

Task Memory: 1024
Task CPU: 512

该任务有 2 个容器正在运行 - 服务和 Envoy 代理。容器定义以下内容:

.NET Service
CPU Units: 0
Hard/Soft memory limits: --/--

Envoy
CPU Units: 0
Hard/Soft memory limits: 500/--

在 ECS 门户中,该服务在下图中显示 CPUUtilization 指标: 在此处输入图片描述

该图表似乎表明 CPU 利用率相当低。

我配置了一个 CloudWatch 警报,当服务的平均 CpuUtilized 超过 90% 时,但它似乎会发出警报,尽管其他指标表明利用率非常低。

在此处输入图片描述

Container Insights 也显示利用率较低。

在此处输入图片描述

我怀疑这可能是由于未指定CPU Units任务容器。如何确保 CloudWatch 使用的指标与其他见解和指标一致?

编辑

CPU Units即使在任务中为每个容器指定时,我仍然遇到同样的不一致。

答案1

创建警报时,必须与指标结合ECS/ContainerInsights CpuUtilized使用。CpuReserved

在此处输入图片描述

或者,也可以使用度量来创建警报AWS/ECS CpuUtilization

相关内容