安装Keepalived
下载源码包
wget http://www.keepalived.org/software/keepalived-1.3.6.tar.gz
解压源码包
tar zxvf ./keepalived-1.3.6.tar.gz
安装
yum install -y openssl-devel libnl3-devel ipset-devel iptables-devel libnfnetlink-devel
cd keepalived-1.3.6/
./configure --prefix=/usr/local/keepalived
make && make install
####配置
cp /usr/local/keepalived/sbin/keepalived /usr/sbin/
cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
cp ./keepalived/etc/init.d/keepalived /etc/init.d/
chmod +x /etc/init.d/keepalived
mkdir /etc/keepalived/
cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/
主配置
! Configuration File for keepalived
global_defs {
router_id dev1
vrrp_skip_check_adv_addr
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_script chk_controller {
script "/etc/keepalived/check_controller.sh"
interval 2
weight -2
fall 3
rise 2
}
vrrp_instance VI_1 {
state MASTER
interface em1
virtual_router_id 1
mcast_src_ip 172.25.0.6
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass qwerasdf
}
virtual_ipaddress {
172.25.0.254/17
}
track_script {
chk_controller
}
notify_master "systemctl restart owl-controller"
}
从配置
! Configuration File for keepalived
global_defs {
router_id dev1
vrrp_skip_check_adv_addr
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_script chk_controller {
script "/etc/keepalived/check_controller.sh"
interval 2
weight -2
fall 3
rise 2
}
vrrp_instance VI_1 {
state BACKUP
interface em1
virtual_router_id 1
mcast_src_ip 172.25.0.7
priority 99
advert_int 1
authentication {
auth_type PASS
auth_pass qwerasdf
}
virtual_ipaddress {
172.25.0.254/17
}
track_script {
chk_controller
}
notify_master "systemctl restart owl-controller"
}
检查脚本
#!/bin/bash
counter=$(ps -C controller --no-heading|wc -l)
if [ "${counter}" = "0" ]; then
exit 1
fi
运行
systemctl start keepalived