【发布时间】:2018-08-22 17:21:06
【问题描述】:
我已阅读 ECS Monitoring documentation,但未找到如何通过 CloudWatch Events 或 Metrics 帮助对 ECS 任务内存限制 发出警报。我的情况是,当 ECS 容器打破默认任务硬限制 512 Mb 并重新启动时。 CloudWatch Event 触发 ECS 任务状态更改,例如从 RUNNING 到 STOPPED,但在事件详细信息 "stoppedReason" 中,您可能只会发现“Task failed ELB health checks in ...”,尽管我肯定知道实际原因是内存限制中断和 Docker 方面的容器谋杀。这是事件规则模式:
{
"source": [
"aws.ecs"
],
"detail-type": [
"ECS Task State Change"
],
"detail": {
"lastStatus": [
"STOPPED"
]
}
}
CloudWatch MemoryUtilization Metric 对于ServiceName 维度也没有多大帮助,因为触发警报的最短时间(范围)为 1 分钟,但容器kill-restart 循环运行得更快。赶上尖峰的时间还不够。我想这同样适用于ClusterName 维度(换句话说,适用于整个集群)。
我想知道如何获得关于任务(容器,容器实例)硬内存限制突破的通知?
【问题讨论】:
标签: amazon-web-services amazon-cloudwatch amazon-ecs aws-ecs