SuperAPI AI 工具集

ecs-troubleshooting

部署与运维

查看项目

更新于 10-15 10:01

技能介绍

用途

本技能是一份 AWS ECS(Elastic Container Service)故障排查与调试指南,用于诊断和解决 ECS 常见问题,包括任务失败、服务问题、网络问题以及性能诊断。适用于在排查 ECS 任务无法启动、服务无法部署、容器之间无法通信或资源使用异常等场景时参考。

主要能力

技能内容按问题类型组织,提供诊断命令、Python(boto3)脚本和 Terraform 配置示例:

  • 快速诊断命令:检查服务状态、列出已停止任务、描述停止任务、查看日志、进入容器调试。
  • 任务失败排查:区分任务状态 STOPPED 与 PENDING,分析停止原因、退出码、容器原因,并列出常见原因与解决方向,如关键容器退出、任务启动失败、CannotPullContainerError、OutOfMemoryError(退出码 137)、应用错误(退出码 1)、容量不足、ENI 配置问题、镜像拉取过慢等。
  • 服务问题排查:检查服务事件、部署状态,处理服务无法放置任务、部署卡住、健康检查失败、容量不足等情况。
  • 网络问题排查:任务无法访问互联网、任务之间无法通信、负载均衡健康检查失败,涉及 NAT 网关、VPC 端点、安全组规则等。
  • IAM 与权限问题:CannotPullContainerError、跨账户 ECR 拉取、Secrets 访问被拒、Execute Command 不可用等,提供任务执行角色与任务角色的策略示例。
  • 性能问题:高 CPU/内存使用诊断、任务启动缓慢的原因与解决方向。
  • 日志分析:CloudWatch Logs 查询命令与 CloudWatch Insights 查询示例。

使用方式

技能以文档形式提供,用户可按照问题症状查找对应章节,复制其中的 AWS CLI 命令、Python 脚本或 Terraform 配置进行诊断与修复。文档末尾提供快速参考表,按症状列出首要检查项与常见原因。

适用场景

  • ECS 任务启动后立即停止或无法启动。
  • 任务长时间处于 PENDING 状态。
  • 服务部署无法达到 COMPLETED 状态。
  • 容器无法拉取镜像或访问外部服务。
  • 服务之间通信失败或负载均衡健康检查不通过。
  • 权限不足导致镜像拉取、Secrets 读取或 Execute Command 失败。
  • CPU/内存使用过高或任务启动缓慢。

限制

本技能为故障排查指南,具体命令与配置需结合用户实际环境调整。文档中未提供收费、价格、平台支持范围或效果保证等信息。相关技能包括 boto3-ecs、terraform-ecs、ecs-fargate、ecs-deployment,但本技能未展开这些技能的详细内容。