ECS服务日志报请求超时但目标可访问问题求助
ECS Fargate部署后ALB健康检查超时问题排查方案
检查安全组配置
- ECS任务安全组:必须允许来自ALB安全组的入站流量到9000端口,确保ALB能发起健康检查和请求转发。
- ALB安全组:允许客户端入站流量(如80/443端口),同时允许出站到ECS任务安全组的9000端口。
验证目标组健康检查参数
- 确认目标组协议、端口(9000)、健康检查路径(/health/check)与应用完全匹配。
- 调整健康检查超时和间隔:若应用启动较慢,默认5秒超时可能不足,建议将超时设为10秒,间隔设为15秒,避免误判。
- 确保目标组针对Fargate任务的私有IP进行检查,而非公网IP。
核对任务定义端口映射
- 确认容器端口9000已正确映射:若主机端口设为0自动分配,目标组需选择
容器端口模式;若固定主机端口为9000,目标组端口需对应设置为9000。
- 确认容器端口9000已正确映射:若主机端口设为0自动分配,目标组需选择
排查VPC网络规则
- 确保ALB与ECS任务处于同一VPC的可用区,或路由表配置支持跨可用区访问。
- 检查NACL规则:需双向允许ALB到任务的9000端口流量,以及任务返回的临时端口(1024-65535)流量。
验证容器内健康端点状态
- 通过ECS日志查看容器内健康检查执行情况,或使用
aws ecs execute-command进入容器,执行curl -f http://localhost:9000/health/check,确认返回200状态码,排除容器内服务异常。
- 通过ECS日志查看容器内健康检查执行情况,或使用
内容的提问来源于stack exchange,提问作者Pankaj Jangid
相关产品推荐
相关产品推荐

