You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

负载均衡器关联EC2实例状态不健康问题排查求助

排查ALB目标组实例不健康(请求超时)问题

针对你遇到的ALB目标组实例显示“请求超时”的不健康状态,按以下步骤逐一排查:

1. 确认EC2实例内网可达性

  • 在同VPC的公有子网实例(如堡垒机)上,执行curl -I http://10.0.0.186:5000/auth/login?next=%2F和curl -I http://10.0.1.149:5000/auth/login?next=%2F,验证是否能返回200 OK:
    • 如果无法访问,说明VPC路由或安全组仍有问题:
      • 检查私有子网路由表:确保存在允许同VPC内流量(对应VPC CIDR,如10.0.0.0/16)通行的路由规则
      • 再次核对EC2安全组:确认入站规则允许ALB安全组的5000端口访问(健康检查走目标组的5000端口,不要仅开放80端口)
    • 如果能访问,问题出在ALB健康检查配置或ALB自身网络配置

2. 验证Flask应用监听配置

  • 在EC2实例上执行ss -tulpn | grep 5000,确认应用进程绑定的地址是0.0.0.0:5000:
    • 如果显示仅绑定127.0.0.1:5000,说明flask run --host=0.0.0.0命令未生效,可能是环境变量或启动脚本问题,重新执行启动命令并确认输出

3. 检查EC2实例本地防火墙

  • 若EC2使用CentOS/RHEL,执行sudo firewall-cmd --list-ports,确认5000/tcp已开放;未开放则添加:
    sudo firewall-cmd --add-port=5000/tcp --permanent
    sudo firewall-cmd --reload
    
  • 若使用Ubuntu/Debian,执行sudo ufw status,确认5000/tcp规则存在;未开放则添加:
    sudo ufw allow 5000/tcp
    

4. 调整ALB健康检查参数

  • 登录AWS控制台,修改目标组的健康检查配置:
    • 把超时时间从默认5秒调整为10秒(Flask调试服务器性能较弱,响应可能延迟)
    • 确认路径是/auth/login?next=%2F,协议为HTTP,端口为5000
    • 可临时将健康阈值设为2,不健康阈值设为2,加快状态更新速度

5. 查看ALB访问日志

  • 启用ALB的访问日志(存储到S3桶),查看健康检查请求的具体记录:
    • 日志中会包含请求的响应码、耗时等信息,若显示-表示完全超时,进一步确认网络连通性;若有其他状态码,针对性排查应用问题

内容的提问来源于stack exchange,提问作者srnatan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 04:32:35