使用KeepAlived处理Nginx故障转移

时间:2019-11-20 08:53:31  来源:igfitidea点击:

当nginx死机,宕机或为了内核升级而重启系统时,如何配置释放和获取VIP(虚拟IP)?

编辑/usr/local/etc/keepalived/keepalived.conf并添加以下部分以检查nginx是否存在:

# vi /usr/local/etc/keepalived/keepalived.conf

更改两个负载均衡器上的文件:

vrrp_script chk_http_port {
        script "/usr/bin/killall -0 nginx"
        interval 2
        weight 2
}
vrrp_instance VI_1 {
        interface eth0
        state MASTER
        virtual_router_id 51
        priority 101
        authentication {
            auth_type PASS
            auth_pass Add-Your-Password-Here
        }
        track_script {
            chk_http_port
        }
        virtual_ipaddress {
                202.54.1.1/29 dev eth1
        }
}

保存并关闭文件。

重新加载keealived:

# /etc/init.d/keepalived restart

如果nginx因为某个原因僵死,则keepalived将释放主VIP,备用服务器将变为活动状态。
当主Nginx LB0恢复联机时,备用LB1将在备份状态下关闭。