keepalived主備之間需要怎麼設定才能正常接管服務了
我有兩台Nginx,通過keepalived做了Cluster
當我主出現異常備用的會正常接管
主恢復后,主會接管業務
但當主再次異常后,備用機不會接管業務
check_nginx_pid.sh腳本
#!/bin/bash
A=ps -C nginx --no-header | wc -l
if [ $A -eq 0 ];then
nginx
sleep 1
if [ ps -C nginx --no-header | wc -l
-eq 0 ];then
pkill keepalived
fi
fi
service keepalived restart
主配置
vrrp_script check_nginx_pid {
script "/usr/local/src/check_nginx_pid.sh"
interval 2
weight -5
fall 3
rise 2
}
vrrp_instance VI_1 {
state MASTER
interface ens192
virtual_router_id 51
priority 100
advert_int 1
mcast_src_ip 10.63.254.87
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
10.63.254.191/24 dev ens192 label ens192:1
}
備用
vrrp_script check_nginx_pid {
script "/usr/local/src/check_nginx_pid.sh"
interval 2
weight -5
fall 3
rise 2
}
vrrp_instance VI_1 {
state BACKUP
interface ens192
virtual_router_id 51
priority 99
advert_int 1
mcast_src_ip 10.63.254.88
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
10.63.254.191/24 dev ens192 label ens192:1
}