华为云ELB(弹性负载均衡)持续报异常,需结合实例类型(共享型/独享型)和异常代码进行针对性排查。以下是分步排查建议:
一、根据实例类型排查网络配置
共享型实例
- 安全组规则:检查后端服务器安全组是否放行 100.125.0.0/16 网段(华为云ELB健康检查固定IP段)[5]。
- 命令验证:在后端服务器执行以下命令,测试ELB网段连通性:
若返回 403/502 等错误,需检查安全组是否允许该网段访问。curl 100.125.X.X:健康检查端口/健康检查路径 -iv
独享型实例
- 子网归属网段:检查后端服务器所属子网的CIDR是否在安全组规则中放行(如子网为
192.168.0.0/24
,需确保安全组允许该网段流量)[5]。 - VPC终端节点:若使用私网访问,需确保VPC终端节点已关联SFS服务,并同步安全组规则[5]。
- 子网归属网段:检查后端服务器所属子网的CIDR是否在安全组规则中放行(如子网为
二、检查健康检查配置
协议与端口一致性
- 健康检查端口必须与后端服务器业务监听端口一致(如业务监听80,健康检查也需配置80)[5]。
- 若使用HTTP健康检查,需确保后端服务器支持协议校验(如Host头),必要时在ELB配置中填写域名[5]。
路径与返回码
- 共享型ELB:HTTP健康检查期望返回码为 200/202/401,需确保路径指向静态资源(如
/
或具体HTML文件)[5]。 - 独享型ELB:期望返回码为 200,路径需严格匹配后端服务路由。
- 验证方法:在后端服务器执行:
若返回非预期状态码(如403),需调整路径或改用TCP健康检查[5]。curl 后端服务器私有IP:健康检查端口/健康检查路径 -iv
- 共享型ELB:HTTP健康检查期望返回码为 200/202/401,需确保路径指向静态资源(如
三、排查后端服务器状态
服务监听状态
- 检查后端服务器业务端口是否处于监听状态(如Netstat查看):
若未监听,需启动业务程序[5]。netstat -anlp | grep 端口号
- 检查后端服务器业务端口是否处于监听状态(如Netstat查看):
负载与资源限制
- 通过云监控检查CPU、内存、连接数,排除因资源耗尽导致响应超时(如504错误)[5]。
- 检查防火墙(如iptables/firewalld)是否拦截ELB网段[5]。
四、处理常见异常代码
502/504错误
- 可能原因:后端服务器未响应、路由不通、安全组拦截。
- 解决方案:
- 检查安全组是否放行ELB网段(共享型)或子网网段(独享型)。
- 测试ELB与后端服务器的网络连通性(如
ping
或telnet
)[2][4]。
403/404错误
- 通常由后端服务器鉴权失败或路由错误导致。
- 解决方案:
- 验证健康检查路径是否正确,或临时禁用鉴权机制[5]。
- 检查ELB转发策略是否指向正确后端服务器[2][4]。
健康检查异常Header(如50000)
- 含义:所有后端服务器被标记为不可用。
- 解决方案:
- 手动访问后端服务器,确认业务正常。
- 检查ELB配置是否加载完成(如新建监听器需等待1-2分钟)[3]。
五、其他补充操作
查看ELB访问日志
- 通过ELB控制台下载日志,分析具体错误请求头(如
x-router-code=50000
)[3]。
- 通过ELB控制台下载日志,分析具体错误请求头(如
重置或重新加载配置
- 若修改配置后仍异常,可尝试删除并重新创建监听器,或联系华为云技术支持[5]。
总结排查流程
- 根据实例类型检查安全组/网段放行规则。
- 验证健康检查配置(协议、端口、路径)。
- 确认后端服务器业务正常运行且无资源瓶颈。
- 结合异常代码及日志定位具体问题。
若仍无法解决,建议提交华为云工单,提供ELB配置截图、健康检查结果及访问日志[5]。