Centos7.4
yum install keepalived
Master服务器配置
[root@wsjy-proxy01 keepalived]# cat keepalived.conf
global_defs {
router_id lb-master
enable_script_security
}
vrrp_script check-haproxy {
script "/usr/bin/killall -0 nginx"
interval 5
weight -30
}
vrrp_instance kube-master {
state MASTER
priority 120
dont_track_primary
interface ens160
virtual_router_id 88
advert_int 1
track_script {
check-haproxy
}
authentication {
auth_type PASS
auth_pass 17908123
}
virtual_ipaddress {
10.101.133.107
}
}Backup服务器配置
[root@wsjy-proxy2 keepalived]# cat keepalived.conf
global_defs {
router_id lb-backup
enable_script_security
}
vrrp_script check-haproxy {
script "/usr/bin/killall -0 nginx"
interval 5
weight -30
}
vrrp_instance kube-master {
state BACKUP
priority 110
dont_track_primary
interface ens160
virtual_router_id 88
advert_int 1
track_script {
check-haproxy
}
authentication {
auth_type PASS
auth_pass 17908123
}
virtual_ipaddress {
10.101.133.107
}
}Master 服务器上执行:
killall nginx
May 19 15:37:23 wsjy-proxy01 Keepalived_vrrp[2163]: VRRP sockpool: [ifindex(2), proto(112), unicast(0), fd(10,11)] May 19 15:37:24 wsjy-proxy01 Keepalived_vrrp[2163]: VRRP_Instance(kube-master) Transition to MASTER STATE May 19 15:38:13 wsjy-proxy01 Keepalived_vrrp[2163]: /usr/bin/killall -0 nginx exited with status 1 May 19 15:38:13 wsjy-proxy01 Keepalived_vrrp[2163]: VRRP_Script(check-haproxy) failed May 19 15:38:13 wsjy-proxy01 Keepalived_vrrp[2163]: VRRP_Instance(kube-master) Changing effective priority from 120 to 90 May 19 15:38:14 wsjy-proxy01 Keepalived_vrrp[2163]: VRRP_Instance(kube-master) Received advert with higher priority 110, ours 90 May 19 15:38:14 wsjy-proxy01 Keepalived_vrrp[2163]: VRRP_Instance(kube-master) Entering BACKUP STATE May 19 15:38:14 wsjy-proxy01 Keepalived_vrrp[2163]: VRRP_Instance(kube-master) removing protocol VIPs.
查看到MASTER切换为 BACKUP状态。
killall 需要配置完整路径
--安装 killall 软件
yum install psmisc –y
如果未安装 psmisc,不存在 killall 命令。
在global_defs配置中添加: enable_script_security
global_defs {
router_id lb-master
enable_script_security
}
原文:https://www.cnblogs.com/bugbeta/p/10894559.html