7.6. 关于负载均衡服务运行状况监控器
负载均衡服务(octavia)运行状况监视器是一个进程,在每个后端成员服务器上定期进行健康检查,以预先检测失败的服务器,并临时从池中拉取它们。
如果运行状况监视器检测到失败的服务器,它将从池中移除服务器,并将成员标记为 ERROR
。在解决了服务器并再次正常工作后,运行状况监视器会自动将成员的状态从 ERROR
改为 ONLINE
,并恢复将流量传递给它。
在生产负载均衡器中始终使用运行状况监控器。如果您没有运行状况监控器,则失败的服务器不会从池中移除。这可能会导致 Web 客户端的服务中断。
有几个类型的运行状况监视器,如这里所述:
- HTTP
-
默认情况下,在应用服务器上探测
/
路径。 - HTTPS
与 HTTP 运行状况监视器完全相同,但使用 TLS 后端服务器。
如果服务器执行客户端证书验证,HAProxy 没有有效的证书。在这些情况下,TLS-HELLO 健康监控是一个替代方案。
- TLS-HELLO
确保后端服务器响应 SSLv3-client hello 消息。
TLS-HELLO 运行状况监控器不检查任何其他健康指标,如状态代码或正文内容。
- PING
发送定期 ICMP ping 请求到后端服务器。
您必须配置后端服务器,以允许 PING,以便这些健康检查通过。
重要PING 运行状况监视器仅检查成员是否可访问并响应 ICMP 回显请求。PING 运行状况监视器不会检测实例上运行的应用是否健康。仅在 ICMP 回显请求是有效的健康检查时使用 PING 运行状况监视器。
- TCP
打开到后端服务器协议端口的 TCP 连接。
TCP 应用程序打开 TCP 连接,在 TCP 握手后关闭连接而不发送任何数据。
- UDP-CONNECT
执行基本的 UDP 端口连接。
如果成员服务器上没有启用 Destination Unreachable (ICMP type 3),或者安全规则阻断它,则 UDP-CONNECT 健康监控器可能无法正常工作。在这些情况下,成员服务器可能会在实际关闭时被标记为
ONLINE
操作状态。