安装Keepalived

August 30, 2017
keepalived

安装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
comments powered by Disqus