为私有子网运行Tomcat的EC2配置ALB时健康检查失败问题求助
健康检查失败排查步骤
- 先验证EC2本地Tomcat服务状态
登录到私有子网的EC2实例,执行curl http://localhost:8080/确认返回正常:- 若无法访问,检查Tomcat是否正常启动,监听地址是否为
0.0.0.0:8080而非仅回环地址127.0.0.1 - 若返回非200状态码(如默认Tomcat根路径返回404),要么修改健康检查路径为Tomcat存在的路径(如
/examples/),要么在Tomcat根路径下添加返回200的静态文件
- 若无法访问,检查Tomcat是否正常启动,监听地址是否为
- 验证VPC网络连通性
- 先排查网络ACL配置:确认私有子网关联的NACL允许ALB所在公有子网CIDR的8080端口入站请求,同时允许临时端口(1024-65535)的出站响应
- 临时在公有子网启动一台测试EC2,绑定SSH安全组后,执行
curl http://<EC2私有IP>:8080/测试内网连通性:如果请求失败,优先排查EC2安全组绑定是否正确、路由表配置是否允许VPC内网互通;如果请求成功,则问题出在ALB配置层
- 调整ALB健康检查参数
你当前配置的健康检查超时为2秒、间隔为5秒,若Tomcat启动慢或响应延迟高会触发超时,可先调整超时时间为5秒、间隔为10秒验证是否为参数过于严格导致的误判 - 核对配置绑定关系
到AWS控制台查看目标组的健康检查失败详情,确认具体错误类型(超时/4XX/5XX),同时核对EC2实例是否正确绑定了Web Server Security Group、ALB是否正确关联了目标组
内容的提问来源于stack exchange,提问作者Subbu
相关产品推荐
相关产品推荐

