您的位置:首页 > 其它

lvs+keepalived自定义健康检查脚本(MISC_CHECK用法)

2016-08-30 09:05 537 查看
lvs+keepalived自定义健康检查脚本(MISC_CHECK用法)

一、 LVS简介

LVS是Linux Virtual Server的简称,即Linux虚拟服务器。使用LVS技术要达到的目标是:通过LVS提供的负载均衡技术和Linux操作系统实现一个高性能、高可用的服务器群集,它具有良好可靠性、可扩展性和可操作性。从而以低廉的成本实现最优的服务性能。

二、网络拓扑




三,http健康检查脚本

[root@localhost home]# cat http_hc.sh
#!/bin/bash
if [ $# -ne 1 ];then
echo "Warning: check_command error."
exit 1
else
CHECK_URL=$1
CMD=`/usr/bin/curl -I "${CHECK_URL}" 2>/dev/null | grep "200 OK" | wc-l`
if[ ${CMD} -eq 1 ];then
exit 0
else
exit 1
fi
fi

四,在keepalived配置文件中添加配置

virtual_server 192.168.230.100 80 {
delay_loop 6
lb_algo rr
lb_kind DR
#persistence_timeout 50
protocol TCP
real_server 192.168.230.12 80 {
weight 255
MISC_CHECK {
misc_path"/home/http_hc.sh http://192.168.230.12/index.html" misc_timeout5
}
}
real_server192.168.230.13 80 {

weight 255
MISC_CHECK {
misc_path"/home/http_hc.sh http://192.168.230.13/index.html" misc_timeout5
}
}
}
}

五,验证

1,未配置健康检查时效果
192.168.230.12上的http服务关闭






2,启用健康检查效果






3,抓包查看健康检查报文



注意:测试需使用ipvsadm –C清空配置,重启keepalived服务。
六,配置解析
1,检查脚本,检查脚本是自定义的一个shell脚本,最终返回的是一个数字。0-255。
2,MISC_CHECK主要根据检查脚本返回值来判断。
1) 当脚本返回值为0,表示真实服务器正常。
2) 当脚本返回值为1,表示真实服务器故障。
3) 当脚本返回值为2-255,表示当故障时将真实服务器权重改为返回值减2。
注意当脚本返回值为2-255时需添加misc_dynamic属性才生效。








内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  配置 lvs keepalived