零售商店 UI 服务正在经历不稳定状况。任务每隔几分钟就会重启一次,部署似乎陷入停滞——始终无法达到稳定状态。
我们的任务是使用 AWS DevOps Agent 调查任务被持续替换的原因,并找出健康检查的错误配置。
在 Cloud IDE 终端中执行以下命令:
ecs-lab3-start
这将修改 UI 服务的task defination,使用错误的健康检查端点(/wrong-health-endpoint 而非 /actuator/health)。容器启动成功,但健康检查失败,导致 ECS 将任务标记为不健康并进行替换。
这模拟了以下场景:
打开 Amazon ECS 控制台 ,选择 devops-agent-workshop-ecs-cluster,然后点击 Services 选项卡并选择 ui 服务。
注入问题后,我们将注意到:

提示词如下:
为什么 devops-agent-workshop-ecs-cluster 中的 UI 服务会不断重启任务? 调查 devops-agent-workshop-ecs-cluster 中 UI 服务任务被替换的原因。检查健康检查配置和服务事件,查找不健康的任务失败情况。

等待几分钟后,排查到问题所在:

回退到正常服务:
ecs-lab3-fix
附 :健康检查配置最佳实践
| 参数 | 建议 |
|---|---|
startPeriod |
设置足够高以满足应用程序初始化需求(Java 应用建议 60-120 秒) |
interval |
通常为 10-30 秒 |
timeout |
应小于间隔时间 |
retries |
2-3 次重试可防止误报 |