Skip to Content
传统型负载均衡CLB常见问题工作原理相关健康检查机制是如何工作的?

健康检查

健康检查可判断后端服务器是否正常,对于异常的后端服务器,将其从后端服务器池中移除,客户端请求将会在其他服务器之间进行分发。对于处于异常状态的服务器恢复正常时,会恢复至后端服务器池中。

不同类型VServer支持的健康检查方式

类型监听协议支持健康检查方式
请求代理HTTP、HTTPSHTTP检查、端口检查
请求代理TCP端口检查
报文转发TCP端口检查
报文转发UDPPing探测、端口检查、UDP检查

不同健康检查适用场景

总的来说,健康检查方式可以分为两类:检查端口存活和检查服务存活。

检查端口存活:端口检查、Ping探测。

检查服务存活:HTTP检查、UDP检查。

不同健康检查方式详述

端口检查

每个可用区内部署专用服务器探测后端节点的IP+端口是否正常。探测频率为2s,连续三次探测失败后端服务器状态异常,连续三次探测正常,则后端服务器状态正常。注意:数据更新有6s延迟,故健康检查状态或有6s延迟。

所有协议均支持端口检查。但检测状态略有不同:HTTP、HTTPS以及TCP的请求代理模式的端口检查是用TCP进行探测。而TCP的报文转发模式及UDP协议则是使用选择的四层协议做端口探测。

HTTP检查

通过HTTP HEAD请求检查后端服务器上的应用是否可用。要求后端服务器支持HEAD请求。

用户使用HTTP健康检查,需要配置HTTP检查路径(如果有必要的话,也可以配置HTTP的检查域名,一般不需要填写),两者拼接组成了HTTP检查的URL,对此URL发起HTTP HEAD请求,请求响应码为2xx或3xx则认为后端服务器正常。健康检查探测周期为2s,连续3次探测失败后端节点变更为不健康,连续两次正常变更为健康。

HTTP检查路径,最多为227个字符,直接填写域名或IP地址后的相对路径文件。可以选择首页、出现异常概率较小的页面、专门为健康检查准备的空文件(HTTP HEAD请求可以获得200的响应码即可),选择首页可能会加大服务器压力,不建议选择首页作为HTTP健康检查的域名和路径。

HTTP检查域名,不建议填写”http:“或”https:“,直接填写域名或IP地址即可。支持主域名、二级域名等多级域名。

HTTP检查支持的协议:HTTP协议、HTTPS协议(七层服务)。

UDP检查

按照健康检查配置,健康检查服务每2s向服务节点发送UDP请求报文,若能在发出请求后2s内收到预定的UDP响应报文,认为服务节点响应成功。

健康检查成功:连续三次响应成功。

健康检查失败:连续三次响应失败。

如某服务节点现在状态为“健康”,则仅当连续三次服务节点响应失败才会变更节点状态为“失效”。

注意:UDP检查时,为避免服务节点错误响应请求报文,服务节点不能绑定0.0.0.0/0。