负载均衡通过健康检查来判断后端服务的可用性,避免后端服务异常影响前端业务,从而提高业务整体可用性。
根据健康检查探测情况,后端 CVM 的健康检查状态如下所示:
状态 | 说明 | 是否转发流量 |
---|---|---|
探测中 | 新绑定的后端 CVM 在检查间隔 × 健康阈值时间内的状态,例如,检查间隔2s,健康阈值3次,则是6s内的状态。 | CLB 不向处于“探测中”的后端服务转发流量。 |
健康 | 后端服务正常 | CLB 向“健康”的后端服务转发流量。 |
异常 | 后端服务异常 | |
已关闭 | 关闭健康检查 | CLB 向后端服务转发流量。 |
针对四层 TCP 监听器,您可以配置 TCP 健康检查,通过 SYN 包即发起 TCP 三次握手来获取后端 CVM 的状态信息。您还可以通过自定义协议的请求内容和返回结果来获取后端 CVM 的状态信息。
TCP 健康检查机制如下:
针对四层 UDP 监听器,您可以配置 UDP 健康检查,通过Ping
命令和向健康检查端口发送 UDP 探测报文来获取健康状态。您还可以通过自定义协议的请求内容和返回结果来获取后端 CVM 的状态信息。
UDP 健康检查机制如下:
Ping
命令;Ping
成功,且在响应超时时间内,后端 CVM 未返回port XX unreachable
的报错信息,则表示服务正常,判定健康检查成功;Ping
失败,或者在响应超时时间内,系统收到后端 CVM 返回的port XX unreachable
报错信息,则表示服务异常,判定健康检查失败;注意:
- UDP 健康检查依赖 ICMP 协议,需要后端 CVM 开放回复 ICMP 包(支持
Ping
)、开放回复 ICMP 端口不可达包(支持探测端口);- 如果后端 CVM 是 Linux 服务器,在大并发场景下,由于 Linux 有防 ICMP 攻击保护机制,会限制服务器发送 ICMP 的速度。此时,即使后端服务已经出现异常,但由于无法向 CLB 返回
port XX unreachable
,CLB 由于没收到 ICMP 应答进而判定健康检查成功,最终导致后端服务的真实状态与健康检查不一致。
解决方案:在配置 UDP 健康检查时,配置自定义输入和输出,向后端服务器发送您指定的字符串,且 CLB 收到您指定的应答后才判断健康检查成功。此方案依赖后端服务器,后端服务器需处理健康检查输入并返回指定输出。
针对四层 TCP 监听器和七层 HTTP/HTTPS 监听器,您可以配置 HTTP 健康检查,通过发送 HTTP 请求来获取后端 CVM 的状态信息。
HTTP 健康检查机制如下:
说明:针对七层 HTTPS 监听器,当 HTTPS 监听器的转发规则中的后端协议选择 HTTP 时,健康检查使用 HTTP 健康检查;当选择 HTTPS 时,健康检查使用 HTTPS 健康检查。
HTTPS 健康检查与 HTTP 健康检查 基本类似,不同的是 HTTPS 健康检查是通过发送 HTTPS 请求,根据返回的 HTTPS 状态码判断后端 CVM 的状态信息。
负载均衡的健康检查机制有效提高了业务的可用性。为了避免频繁的健康检查失败引起的切换对系统可用性的冲击,健康检查只有在健康检查时间窗内连续多次检查成功或失败后,才会进行健康或异常的状态切换。健康检查时间窗由以下因素决定:
健康检查配置 | 说明 | 默认值 |
---|---|---|
响应超时 |
|
2 - 60秒 |
检测间隔 |
|
5秒 |
不健康阈值 |
|
3次 |
健康阈值 |
|
3次 |
四层健康检查时间窗的计算方法如下:
说明:四层健康检查,即 TCP 健康检查或 UDP 健康检查,无论检查成功还是响应超时,前后两次之间发包的检查间隔都是已设置的检查间隔。
七层健康检查时间窗的计算方法如下:
本文转载自微信公众号「前端思维框架」,作者ViktorHub。转载本文请联系前端思维...
2021年了,代码质量分析和审核早已成为每个企业的基本流程!随着开源代码库使用的...
我们生活在一个信息时代,几乎每个组织的世界都围绕数据展开。大数据这一领域一...
1月22日,腾讯云正版曲库直通车宣布上线单曲产品,直播视频等创作者、MCN机构、...
服务器租用的管理技巧 服务器租用 是我们选择服务器常用的方式,通过服务器可以...
请检查您的HTTPS配置,如果回源方式选择HTTP,同时开启了强制跳转HTTPS,将引起...
今天跟着TOP云(zuntop.com)小编了解一下什么是web服务器,常用的web服务器有哪...
【51CTO.com原创稿件】2020年的新冠疫情,加速了企业数字化转型进程。有95%的亚 ...
高德开放平台公开课来啦,大量技术干货强势来袭~ 精彩主题抢先看:自定义地图与...
.cc启用于1997年,距离现在已经有20年的历史。2009年6月份,Beauty.cc拍出100万...