终端节点的健康检查结果异常如何排查?
背景介绍
全球加速服务的健康检查通过向终端节点发起心跳检查的方式来实现,为保证健康检查的正常进行,您需要确保终端节点对应的服务器已经放通TCP/UDP对应的探测端口,使得全球加速实例能够正常访问到后端服务器。
当健康检查探测到您的终端节点异常时,不再向异常的终端节点转发流量,直到健康检查检测到终端节点恢复正常时,才会继续转发流量。
检查健康检查配置
- 进入全球加速实例详情页面,切换到“终端节点组”页签。
- 选择对应的终端节点组名称,在页面右侧的基本信息中,单击健康检查右侧的“配置”按钮。查看以下参数:
- 前端协议。
- 前端端口。端口必须是后端服务器上真实业务所监听的端口,不是自定义端口。
检查后端服务器所在安全组
- TCP协议监听器:后端服务器所在的安全组入方向规则需要放通TCP对应的探测端口,并在TCP协议中放通健康检查的端口。
- 健康检查端口与后端服务器业务端口相同:需要放通后端服务器的业务端口,例如80。
- 健康检查端口与后端服务器业务端口不同:需要放通后端服务器的业务端口和健康检查端口,例如80和443。
健康检查的协议和端口在配置的健康检查配置项提示框中获取。
- UDP协议监听器:不仅需要保证安全组入方向规则放通UDP协议健康探测的端口,还需要放通后端服务器所在安全组入方向的ICMP协议。
检查后台服务器监听设置
如果后端服务器的操作系统为Windows,请通过浏览器直接访问https://后端服务器的IP : 健康检查配置的端口。如果返回码为2xx或3xx,则表示后端服务器正常。
netstat -anlp | grep port
回显中包含健康检查端口信息并且显示LISTEN,则表示后端服务器的健康检查端口在监听状态,如图1中表示880端口被TCP进程所监控。
- 如果您没有配置健康检查端口信息,默认和后端服务器业务端口一致。
图2 后端服务器没有被监听的回显示例
- 如果健康检查端口没有在监听状态(后端服务器没有被监听),您需要先启动后端服务器上的业务,启动业务后再查看健康检查端口是否被正常监听。