本文将介绍后端服务器健康检查状态异常的可能原因及解决方法,指导您进行异常原因定位处理。
步骤一:检查负载均衡配置
- 确认后端服务器端口与实际业务端口一致。
在服务器组详情页的“后端服务器”页签,查看目标后端服务器的端口。如果与实际业务端口不一致,请修改为实际业务端口。 - 健康检查协议为HTTP时,确认健康检查配置正确。
在服务器组详情页的“概览”页签,查看健康检查配置。如果设置有误,请单击页面右上方的“编辑健康检查”按钮,修改健康检查路径。说明
健康检查路径为相对路径,例如,访问链接为http://www.example.com/test/,则健康检查路径应设置为“/test/”。
步骤二:检查后端服务器配置
- 检查后端服务器所属安全组是否已放通健康检查网段(NLB实例所属子网的网段)。
如果未放通,请参考配置后端服务器安全组放通NLB实例的所有子网网段。 - 检查后端服务器防火墙配置。
后端服务器内部防火墙默认关闭,如果开启了防火墙,请确保防火墙入方向规则中已放通健康检查网段。防火墙的详细配置请参见Windows防火墙配置或Linux防火墙配置。 - 检查后端服务器路由配置。
请确认是否手动修改了后端服务器内部的路由,执行以下命令查看主网卡(如eth0)默认路由。
route -n
正常回显信息如下图所示:
如果查到的路由配置中没有第一条默认路由或者默认路由指向的不是后端服务器所在VPC子网的网关,请修改默认路由配置。 - 检查后端服务器是否能正常提供服务。
在客户端执行ping
命令查看是否连通。 - 检查后端服务器负载。
查看后端服务器的负载。当负载很高时,连接响应速度慢,会导致响应超时,即健康检查失败,后端服务器状态显示为“异常”。此时无需处理,待负载降低时会自动恢复。
步骤三:检查后端服务配置
- 检查后端服务的监听端口是否在
0.0.0.0
上。
登录云服务器后,根据云服务器操作系统选择合适的命令进行查看。如果相应后端服务的监听端口未开放在0.0.0.0
上,则可能导致健康检查失败。
- Linux系统的云服务器:
netstat -antup
例如,下图表明TCP协议类型的后端服务监听端口80开放在0.0.0.0
上。
- Windows系统的云服务器:
netstat -ano
例如,下图表明TCP协议类型的后端服务监听端口135开放在0.0.0.0
上。