首页/云/云与容器速查/负载均衡健康检查与 502 排查

负载均衡健康检查与 502 排查

负载均衡 502 常见原因:后端健康检查失败被摘除、后端进程挂、安全组没放健康检查端口;按『检查状态 → 直连后端 → 看日志』顺序排查。

云与容器速查云更新于 2026-10-13

健康检查与 502 是什么

负载均衡通过健康检查判断后端是否可用:检查通过才转发流量,连续失败就把后端摘除;当后端组里没有健康实例时,用户就会看到 502。所以 502 大多不是负载均衡本身故障,而是后端被摘光了。排查顺序固定:先看后端组状态,再从负载均衡所在网络直连后端,最后看应用日志。

基本信息

检查方式TCP 端口探测或 HTTP 状态码探测,按监听配置决定
判定规则连续失败若干次标记异常,连续成功若干次恢复
常见误配健康检查路径返回 404 或 302,非 2xx 通常视为失败
排查顺序负载均衡后端组状态 → 直连后端 IP 与端口 → 后端应用日志
安全组健康检查流量来自负载均衡内网地址段,检查端口必须放行

典型使用场景

  • 新上线服务:先确认健康检查路径返回 200,再接入真实流量
  • 发布后报 502:检查后端是否因启动慢被判定异常并摘除
  • 扩容后流量不均:新实例未通过检查,流量仍集中在旧实例
  • 排查间歇性 502:结合后端日志看是否有请求处理超时或进程重启
  • 调整检查参数:启动慢的服务适当放宽超时与不健康阈值

后端直连验证

后端直连验证
curl -sv http://10.10.1.5:8080/health --max-time 5   # 看状态码与响应体
nc -zv 10.10.1.5 8080                                # 端口是否可达
ss -lntp | grep 8080                                 # 后端进程是否真的在监听
# 从负载均衡所在网络的跳板机执行,结果才与健康检查一致
tail -f /var/log/app/error.log                       # 结合应用日志看是否有异常

502 常见原因对照

现象可能原因下一步
所有后端异常后端进程挂了或端口改了直连后端确认服务是否监听
部分后端异常个别实例配置或版本不一致对比健康与异常实例的差异
检查一直超时安全组未放行健康检查端口放行负载均衡内网网段
检查返回 302/404健康检查路径指向需登录的接口换成无鉴权的专用健康接口
刚发布就 502启动慢,未过检查就接流量放宽阈值或加启动预热
后端被摘除后用户看到的是 502:先让后端恢复健康检查通过,把流量续上,再排查应用根因,避免在无流量的状态下盲调。
健康检查路径要用专用的无鉴权接口,返回内容尽量简单:既要知道进程活着,也不该触发数据库查询等重逻辑,否则检查本身会放大后端压力。

易错点

  • 健康检查路径用了需要登录的接口,永远返回 302,导致后端被全部摘除
  • 改了后端端口却没更新健康检查端口,检查一直超时
  • 安全组没放行负载均衡内网网段,健康检查流量被挡在门外
  • 健康检查接口跑重逻辑,检查频率一高反而把后端压垮
  • 后端启动慢但检查阈值很紧,每次发布都会短暂全摘导致 502

数据来源与参考

  • 阿里云文档:健康检查
  • 腾讯云文档:CLB 健康检查
  • 华为云文档:ELB 健康检查

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌