keepalived 的 unicast 单播模式

最近遇到一个问题,keepalived 在 OpenStack 环境下一直脑裂无法选举。在不支持组播的场景下,可以使用单播模式。

主节点:

global_defs {
   router_id LVS_DEVEL
#  vrrp_strict # 严格模式不支持单播
   vrrp_skip_check_adv_addr
   vrrp_garp_interval 0
   vrrp_gna_interval 0
   vrrp_iptables
   script_user root
   enable_script_security 
}

vrrp_script chk_nginx {
    script "/usr/bin/killall -0 nginx && exit 0 || exit 1"
    interval 1
    weight -10
    fall 2
    rise 1
}

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 55
    priority 100
    advert_int 1
#   nopreempt
    unicast_src_ip 172.20.47.4
    unicast_peer {
        172.20.47.5
    }
    authentication {
        auth_type PASS
        auth_pass 12345678
    }
    virtual_ipaddress {
        172.20.47.202
    }

    track_script {
        chk_nginx
    }
}

备节点:

global_defs {
   router_id LVS_DEVEL
#  vrrp_strict # 严格模式不支持单播
   vrrp_skip_check_adv_addr
   vrrp_garp_interval 0
   vrrp_gna_interval 0
   vrrp_iptables
   script_user root
   enable_script_security 
}

vrrp_script chk_nginx {
    script "/usr/bin/killall -0 nginx && exit 0 || exit 1"
    interval 1
    weight -10
    fall 2
    rise 1
}

vrrp_instance VI_1 {
    state BACKUP
    interface eth0
    virtual_router_id 55
    priority 95
    advert_int 1
#   nopreempt
    unicast_src_ip 172.20.47.5
    unicast_peer {
        172.20.47.4
    }
    authentication {
        auth_type PASS
        auth_pass 12345678
    }
    virtual_ipaddress {
        172.20.47.202
    }

    track_script {
        chk_nginx
   }
}

参考:
https://www.jianshu.com/p/7c709c3be4a9
https://blog.csdn.net/weixin_34362991/article/details/93011752
https://blog.csdn.net/kjh2007abc/article/details/90455558

posted @ 2020-04-23 09:50  KeithTt  阅读(3403)  评论(0编辑  收藏  举报