keepalived部署
安装就不再说了,可以用rpm包安装(centos7),直接上配置文件把。
master:
[root@nginx-master wbird]# cat /etc/keepalived/keepalived.conf
global_defs {
router_id NODEA
}
vrrp_script chk_http_port {
script "/etc/keepalived/chk_nginx_pid.sh"
interval 2
weight 2
}
vrrp_instance VI_1 {
state MASTER
interface ens192
virtual_router_id 50
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
track_script {
chk_http_port
}
virtual_ipaddress {
192.168.17.232/22
}
}
slave:
[root@nginx-slave ~]# cat /etc/keepalived/keepalived.conf
global_defs {
router_id NODEA
}
vrrp_script chk_http_port {
script "/etc/keepalived/chk_nginx_pid.sh"
interval 2
weight 2
}
vrrp_instance VI_1 {
state MASTER
interface ens192
virtual_router_id 50
priority 90
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
track_script {
chk_http_port
}
virtual_ipaddress {
192.168.17.232/22
}
}
脚本内容:
#!/bin/bash
A=`ps -C nginx --no-header |wc -l`
if [ $A -eq 0 ]
then
echo 'nginx server is died'
sudo killall keepalived
VIP配置好了,但是使用ifconfig命令却看到不到这个VIP,ping却是能通的。这里有个坑,记录一下。
使用ip a的,无意敲了一下,发现居然可以看到Virtual IP address,这也就解释了为啥可以ping通,实际已经生成了Virtual IP address。
总结:VIP配置好后,使用ip a 命令去查。

浙公网安备 33010602011771号