【tcp】负载均衡(SLB)简介、使用最佳实践和常见问题解决方法

2022-07-14  本文已影响0人  Bogon

UDP 健康检查

针对四层UDP监听,健康检查通过UDP报文探测来获取状态信息,如下图所示。


image.png

当前 UDP 协议健康检查可能存在服务真实状态与健康检查不一致的问题:

如果后端 ECS 服务器是 Linux 服务器,在大并发场景下,由于 Linux 的防 ICMP 攻击保护机制,会限制服务器发送 ICMP 的速度。此时,即便服务已经出现异常,但由于无法向前端返回 “port XX unreachable” 报错信息,会导致负载均衡由于没收到 ICMP 应答进而判定健康检查成功,最终导致服务真实状态与健康检查不一致。

如果相应服务器非正常关机,由于也不会返回 “port XX unreachable” 报错信息。所以也会导致健康检查处于"正常"状态的误报。

image.png image.png

为啥会失败(UDP)?

这里介绍一下UDP健康检查的原理。

首先,健康检查通过SLB向后端发送UDP报文探测来获取状态信息。
SLB会周期性地给后端ECS发送UDP报文,如果UDP端口的业务处于正常情况,则没有任何回应。
而当服务出现问题,比如指定的UDP服务端口处于不可达的情况或者无服务的状态的时候,会回复ICMP的不可达报文。

这里也会存在一个问题就是如果后端服务器已经变成了网络中的孤岛,比如出现了整个服务器的掉电、关机情况这样完全不能工作的状态,这时候的ICMP不可达报文是永远不可能收到的,因为后端的服务器无法收到SLB发来的UDP探测报文,那么在这种情况下,可能会出现误认为后端健康的情况,但是实际上这个服务可能已经宕掉了。

为了应对这种情况,健康检查还提供用户自定义UDP应答报文来实现精确的UDP健康检查,也就是由用户自定义指定一个字符串,当后端的云服务器收到UDP健康检查的探测的时候,也回应指定的字符串,之后SLB对于这个字符串进行对比和校验,如果匹配成功则认为服务一定是健康的,这样就可以实现非常精确的健康检查。

image.png

而UDP的健康检查失败也有很多原因,比如在协议栈里面有可能会有ICMP限速保护。
当频率达到一定速率的时候,ICMP会被协议栈限制,后端无法回应ICMP不可达报文,进而导致SLB收不到ICMP的报文,出现健康检查的失败情况。
所以这部分是需要注意的,如果可能尽量将速率限制放大一些。

常用的均衡算法有哪些?

Random 随机

Round Robin 轮询

Weighted Round Robin 加权轮询

Least Connections 最少连接

Source Hashing 源地址散列

参考

想设计亿万级高并发架构,你要先知道高并发是什么?
https://www.csdn.net/tags/NtjaIgwsMTQ0ODUtYmxvZwO0O0OO0O0O.html

负载均衡(SLB)使用最佳实践
http://www.uml.org.cn/zjjs/201712141.asp

负载均衡SLB产品家族介绍
https://help.aliyun.com/document_detail/196874.html

负载均衡进阶:SLB常见问题解决方法
https://developer.aliyun.com/article/222524

SLB技术原理浅析
https://developer.aliyun.com/article/1803

负载均衡>传统型负载均衡CLB>CLB用户指南>健康检查>健康检查FAQ
https://help.aliyun.com/document_detail/55205.html

负载均衡>传统型负载均衡CLB>CLB用户指南>健康检查>健康检查概述
https://help.aliyun.com/document_detail/85958.html

常用的均衡算法有哪些?
https://mp.weixin.qq.com/s/AYwnc76hfbxTZMOUoa59Tg

负载均衡SLB高可用的四个层次
https://developer.aliyun.com/article/247044

再聊负载均衡SLB的主备可用区和高可用部署最佳实践
https://developer.aliyun.com/article/247044

阿里云SLB 会话保持常见问题
https://help.aliyun.com/document_detail/55202.html

阿里云SLB 高精度秒级监控
https://help.aliyun.com/document_detail/251757.html

阿里云 SLB 添加UDP监听
https://help.aliyun.com/document_detail/86130.htm

上一篇下一篇

猜你喜欢

热点阅读