四层交换(负载均衡)特殊配置说明_几种深度健康检查机制

举报
fengfeng 发表于 2017/05/16 16:09:30 2017/05/16
【摘要】 如果应用类型是 HTTP,设备提供了通过检测 URL 来判断后台服务器健康情况的机制。这种机制比默认只检测 TCP 端口提供更高的准确性。

 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

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。