Keepalived健康检查方式配置

HTTP_GET|SSL_GET

HTTP_GET | SSL_GET
{
url {
path /# HTTP/SSL 检查的url 可以是多个
digest <STRING> # HTTP/SSL 检查后的摘要信息 用工具genhash生成
status_code 200# HTTP/SSL 检查返回的状态码
}
connect_port 80 # 连接端口
bindto <IPADD>
connect_timeout 3 # 连接超时时间
nb_get_retry 3 # 重连次数
delay_before_retry 2 #连接间隔时间
}
# END OF HTTP_GET|SSL_GET

TCP健康检查方式

TCP_CHECK {
connect_timeout 5 #连接超时时间
nb_get_retry 3#重连次数
delay_before_retry 3 #重连间隔时间
connect_port 80 #健康检查的端口
} # TCP_CHECK

SMTP健康检查方式

SMTP_CHECK {
host {
connect_ip <IP ADDRESS>
connect_port <PORT> # 默认检查端口25
 
}
connect_timeout <INTEGER>
retry <INTEGER>
delay_before_retry <INTEGER>
helo_name <STRING>|<QUOTED-STRING> # "请求命令参数,可选
} #SMTP_CHECK

MISC

MISC_CHECK {
misc_path <STRING>|<QUOTED-STRING># 外部程序或者脚本路径
misc_timeout <INT># 执行脚本的超时时间
misc_dynamic#如果设置了misc_dynamic,healthchecker程序的退出状态码会用来动态调整服务器的权重(weight).
#返回0:健康检查OK,权重不被修改
#返回1:健康检查失败,权重设为0
#返回2-255:健康检查OK,权重设置为:退出状态码-2,比如返回255,那么weight=255-2=253
}

工具genhash使用

[root@localhost bin]# ./genhash -h
genhash v1.0.0 (18/11, 2002)
Usage:
./genhash -s server-address -p port -u url
./genhash -S -s server-address -p port -u url
./genhash -h
./genhash -r
 
Commands:
Either long or short options are allowed.
./genhash --use-ssl-SUse SSL connection to remote server.
./genhash --server-sUse the specified remote server address.
./genhash --port-pUse the specified remote server port.
./genhash --url-uUse the specified remote server url.
./genhash --use-virtualhost -VUse the specified virtualhost in GET query.
./genhash --verbose-vUse verbose mode output.
./genhash --help-hDisplay this short inlined help screen.
./genhash --release-rDisplay the release number
 

工具产生结果如下:

[root@localhost bin]# ./genhash -s10.7.11.12 -p 80 -u /sysmng/index.jsp
MD5SUM = b7bd8391367e4cf9e4e85263ce313ae8
 

配置如下:

real_server 10.7.11.12 80 {
weight 1
TCP_CHECK {
connect_timeout 5
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
HTTP_GET {
url {
path /
digest b7bd8391367e4cf9e4e85263ce313ae8
status_code 200
}
#url {
#path /mrtg/
#digest 9b3a0c85a887a256d6939da88aabd8cd
#}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
 

TCP健康检查方式配置例子:

real_server 192.168.191.130 80 {
weight 3
inhibit_on_failure #在服务器健康检查失效时,将其设为0
TCP_CHECK {
connect_timeout 5 #连接超时时间
nb_get_retry 3#重连次数
delay_before_retry 3 #重连间隔时间
connect_port 80 #健康检查的端口
}
}
 

SSL健康检查方式同HTTP,例子如下:

virtual_server 192.168.200.100 443 {
delay_loop 6
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
 
real_server 192.168.201.100 443 {
weight 1
SSL_GET {
url {
path /
digest ff20ad2481f97b1754ef3e12ecd3a9cc
}
url {
path /mrtg/
digest 9b3a0c85a887a256d6939da88aabd8cd
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
 

SNMP方式例子:

real_server 172.16.1.12 25 {
weight 1
SMTP_CHECK {
connect_timeout 10
retry 2
delay_before_retry 5
helo_name "foo.bar.com"
 
host {
connect_ip 172.16.1.12
connect_port 25
bindto 172.16.1.2
}
 
host {
connect_ip192.168.155.11
connect_port 25
bindto 192.168.155.2
}
 
host {
connect_ip64.233.167.100
connect_port 587
}
}
}
 

MISC方式脚本带参数例子:

real_server 192.168.200.6 1358 {
weight 1
MISC_CHECK {
misc_path "/usr/local/bin/script.sh arg1 arg2"
}
}

MISC方式脚本不带参数例子:

real_server 192.168.200.6 1358 {
weight 1
MISC_CHECK {
misc_path /usr/local/bin/script.sh
!misc_dynamic
}
}

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值