调查容器故障 - IV

注入问题

在Cloud IDE 终端中执行以下命令:

ecs-lab5-start

该脚本向结账服务task defination中添加了一个内存压力 sidecar 容器。该 sidecar 请求的内存超过了任务限制,导致任务被 OOM 终止。

这模拟了以下场景:

  • 配置错误的 sidecar 容器消耗过多内存
  • 内存限制不足以支持任务中的所有容器
  • 添加新容器后资源需求发生变化

image-20260315155615053

观察症状

选择 devops-agent-workshop-ecs-cluster,然后点击 Services 选项卡并选择 checkout 服务。

注入问题后,我们将注意到:

  • 任务在启动后不久崩溃 - 任务达到 RUNNING 状态后迅速停止
  • 停止原因显示 OutOfMemoryError - 容器因内存使用量过高而被终止
  • 任务快速循环 - ECS 不断尝试启动新任务来替换崩溃的任务

image-20260315160006246

使用 DevOps Agent 进行故障排查

输入提示词:

为什么 devops-agent-workshop-ecs-cluster 中的checkout服务会崩溃?任务不断重启。 检查 devops-agent-workshop-ecs-cluster 中已停止的checkout任务,并解释它们崩溃的原因。查找已停止任务原因中的任何指示信息。

等待一段时间后DevOps Agent分析到原因:

image-20260315160402133

恢复服务:

ecs-lab5-fix