健康检查支持哪些协议?
健康检查支持TCP、UDP、HTTP协议。不同协议的监听器可选的健康检查协议如下:
- TCP协议监听器只可选TCP
- UDP协议监听器只可选UDP
- HTTP协议/HTTPS协议监听器可选HTTP或TCP
更多健康检查信息请参考 健康检查。
后端主机什么时候被认为是健康的?
在后端主机组开启健康检查的情况下,首次添加的后端主机经过一次成功的健康检查,就会变为健康状态。之后,根据配置的健康检查“间隔时间”和“最大重试次数”进行周期性健康检查探测,如果健康状态的后端主机,健康检查连续探测失败次数超过“最大重试次数”(缺省为2s),将会变为不健康状态。同理,如果不健康状态的后端主机,健康检查连续探测成功的次数超过“最大重试次数”(缺省为2s),将会变为健康状态。
健康检查为什么会导致ELB频繁向后端云主机发送探测请求?
主机组开启健康检查后,健康检查探测会根据配置的检查周期间隔定期(缺省为5s)进行探测。同时,由于集群资源池(主备、集群模式资源池列表见产品简介>产品类型和规格>按资源池区分, 实际情况以控制台展现为准)的弹性负载均衡是跨可用区集群部署方式,一个间隔周期内会有一到多个健康检查的请求。因此,每隔几秒就会有一次访问请求发送到后端云主机。您可以通过调整健康检查的周期来控制访问后端云主机的频率,可调整范围为1~ 20940s。具体操作详见 修改后端主机组配置。
健康检查什么时候启动?
健康检查在后端主机加入负载均衡器后会启动。在第一个周期内,会随机选择一个时间点开始进行健康检测。随后,根据配置的检查间隔,健康检查会按照设定的时间间隔启动。这样可以确保后端主机在加入负载均衡器后的一段时间内有足够的准备时间,避免同时进行健康检查对主机造成过大的负载压力。通过随机启动和设定的检查间隔,可以实现分散负载和平滑过渡,保证后端主机的稳定性和可用性。
健康检查异常如何排查?
当健康检查探测到您的后端主机异常时,弹性负载均衡将不再向异常的后端主机转发流量。直到健康检查检测到后端主机恢复正常时,弹性负载均衡才会向此主机继续转发流量。那么当您遇到健康检测异常该如何排查呢,排查思路如下:
- 检查后端主机组是否关联监听器
- 检查健康检查配置:检查健康检查配置参数信息,例如域名、协议是否正确,检查您配置的健康检查端口和监听的端口是否一致,检查路径是否正确等。
- 检查主机所在安全组、网络ACL是否放行ELB健康检查源地址网段100.89.0.0/16(IPv4)、100:0:0:2:0:0:6459:0/112(IPv6)。
- 检查后端主机是否正常:后端主机当前宕机或不可访问,会导致检查异常。
- 检查主机防火墙、路由。
弹性负载均衡对后端主机的健康检测时间间隔需要注意什么?
例如客户的健康检查间隔时间设置的10s,客户在其后端主机组发现探测时间如下图所示,看起来不是10s一个健康检查报文。集群模式资源池弹性负载均衡是跨AZ的集群部署方式,所以一个集群里有多个LB的成员共同提供LB的服务,所有这些成员都会去探测后端主机的健康状态,例如客户的环境里有六个LB的成员,.66,.18, .50, .34, .82和.2,观察下每一个成员就会看到探测间隔是10s。
健康检查失败状态是什么?
健康检查失败达到最大重试次数后,后端主机进入健康检查失败状态。
负载均衡器中配置了健康检查的最大重试次数,当后端主机连续失败的健康检查次数达到该阈值时,负载均衡器会认定该后端主机不可用,并将其标记为健康检查失败状态。此时,负载均衡器将不再将请求转发给该主机,并将流量转发到其他健康的后端主机上,以确保服务的可用性和稳定性。一旦后端主机恢复正常,经过一定时间的正常健康检查后,负载均衡器会将其重新标记为可用状态。
健康检查正常默认返回的状态码有哪些?
健康检查默认反馈状态码有:
HTTP状态码 | 说明 |
---|---|
HTTP状态码 200 | 表示正常响应。当健康检查请求成功被云主机处理并返回有效的响应时,通常会返回200状态码。 |
HTTP状态码 3xx | 重定向。在健康检查中,重定向状态码可能会出现在特定情况下。 |
HTTP状态码 4xx | 客户端错误。这些状态码表示请求存在问题,可能是由于无效的URL、参数错误等。健康检查中,如果主机返回了4xx状态码,通常表示主机无法正常处理该请求。 |
HTTP状态码 5xx | 主机错误。这些状态码表示主机在处理请求时遇到了错误。在天翼云健康检查中,如果主机返回了5xx状态码,通常表示主机出现了故障或内部错误。 |