四层交换(负载均衡)特殊配置说明_几种深度健康检查机制
http URL 健康检查
如果应用类型是 HTTP,设备提供了通过检测 URL 来判断后台服务器健康情况的机制。这种机制比默认只检测 TCP 端口提供更高的准确性。
检测频率为 10 秒,连续 5 次失败则判定服务器失效。
要使用设备的 http URL 服务器健康检查功能,需要提供下列信息:
去掉协议关键字的完整URL链接,例如:/web/index.html ;
正常回应 http code,例如:200,301,302,可按实际情况设置;
检测页面中包含特定字符串内容,如:Hello World ;
服务器IP,如:10.201.5.223 ;
服务器提供服务的端口,如:8080 。
设备配置举例(Radware Appdirector):
为 server 10.201.5.223 创建server记录,ID 139;
appdirector farm server table create email-uk.huawei.com-new-80 10.201.5.223 None -sn email-uk-new-80-s1 -id 139
为 server 10.201.5.223 创建http URL健康检查实例,以返回 http code 301 为正常检测结果,ID 12;
health-monitoring check create email-uk_http_s1 -id 12 -m HTTP -p 8080 -a PATH=/web/index.html |MTD=G|PRX=N|NOCACHE=N|AUTH=B|C1=301| -d 10.201.5.223
为 server 10.201.5.223 创建http URL健康检查实例,以返回Hello World字符串为正常检测结果,ID 12;
health-monitoring check create email-uk_http_s1 -id 12 -m HTTP -p 8080 -a PATH=/web/index.html |MTD=G|PRX=N|NOCACHE=N|AUTH=B|MTCH=Hello World|MEXIST=Y| -d 10.201.5.223
绑定 server 和 monitor 健康检查实例,开始生效;
health-monitoring binding create 12 139 -g 1
最后需要将 farm 默认的检测设置为 None,以上述深度检测结果为准。
非 http 应用的 URL 健康检查
对于非 http 应用,也可以通过 URL 的方式检查应用的健康状况,从而避免只使用简单的 tcp/udp 健康检查方式。
由于应用本身是非 http 协议,故无法直接使用 URL 探测应用,不过有一种间接的实现方式:操作系统通过自身工具周期性检查应用健康状况,然后将检查结果存放在服务器的一个静态页面上;四层交换通过 URL 的方式探测这个页面,通过字符串内容的批评判断应用的健康状况。设备的配置和 URL 健康检查一致。
https URL 健康检查
设备本身通过 https 协议检查应用的可用性,特性的支持和 http 完全一致。通过 https 检查应用时,设备会自动处理应用提供的数字证书,并保存在设备内部。
UDP 应用端口健康检查
如果应用类型是 UDP,设备提供了通过专门检测 UDP的健康检查机制,这种机制同时结合 udp 和 icmp 检查方式,只有两种方式同时检测通过才认为检测成功。这种方式提供非常高的检查可靠性和准确性。
通常通过 UDP 检测和 PING 检测同时完成。
检测频率为 10 秒,连续 5 次失败则判定服务器失效。
需提供下列信息:
服务器IP,如:10.82.85.31;
服务器udp端口,如:1812。
设备配置举例(Radware Appdirector):
添加服务器记录, ID 69
appdirector farm server table create spes1-1812 10.82.85.31 None -sn spes1-1812-s1 -id 69 -cn Enabled
分别配置 udp 和 ping 健康检查实例,ID 2, 3
health-monitoring check create spes1-1812-s1-UDP -id 2 -m "UDP Port" -p 1812 -d 10.82.85.31
health-monitoring check create spes1-1812-s1-ping -id 3 -d 10.82.85.31
绑定健康检查实例到服务器
health-monitoring binding create 2 69
health-monitoring binding create 3 69
注意 udp 和 ping 只要有一个失效,则认为检测失败,服务器不可用。
最后需要将 farm 默认的检测设置为 None,以上述深度检测结果为准。
DNS 应用端口健康检查
如果应用类型是 DNS,设备提供了通过检测域名是否响应的健康检查机制。
检测频率为 10 秒,连续 5 次失败则判定服务器失效。
需提供下列信息:
服务器IP,如:10.72.55.103;
服务器端口,如:53;
用于检测的域名,如:dns-nlb.huawei.com;
检查结果,可选,如:10.72.55.102 。
设备配置举例(Radware Appdirector):
appdirector farm server table create DNS-test-53 10.72.55.103 None -sn DNS-test-53-s1 -id 3
health-monitoring check create DNS-test -id 2 -m DNS -p 53 -a HOST=dns-nlb.huawei.com|ADDR=10.72.55.102| -d 10.72.55.103
health-monitoring binding create 2 3
最后需要将 farm 默认的检测设置为 None,以上述深度检测结果为准。
Radius认证应用健康检查
如果应用类型是 DNS,设备提供了通过检测域名是否响应的健康检查机制。
检测频率为 10 秒,连续 5 次失败则判定服务器失效。
需提供下列信息:
服务器IP,如:10.128.92.75
服务器端口,如:1812
用于检测的用户名/密码,如:test/test
服务器上需要允许四层交换设备 IP 访问服务,互访密钥,如:testing123
设备配置举例(Radware Appdirector):
appdirector farm server table create radius1-1812 10.128.92.75 None -sn radius1-1812-s1 -id 5
health-monitoring check create radius1 -id 6 -m "Radius Authentication" -p 1812 -a USER=test|PASS=test|SECRET=testing123| -d 10.128.92.75
health-monitoring binding create 6 5
最后需要将 farm 默认的检测设置为 None,以上述深度检测结果为准。
作者 |方警边
转载请注明出处:华为云博客https://portal.hwclouds.com/blogs
- 点赞
- 收藏
- 关注作者
评论(0)