Centos Keepalived vrrp_脚本不进行故障切换

Centos Keepalived vrrp_脚本不进行故障切换,centos,haproxy,failover,Centos,Haproxy,Failover,我有两个具有keepalived和haproxy服务的节点(CentOS7)。 如果我关闭了一个节点,一切正常。但如果haproxy不在,我想让贵宾们进行故障切换 这是第一个节点配置: vrrp_script ha_check { script "/etc/keepalived/haproxy_check" interval 2 weight 21 } vrrp_instance VI_1 { state MASTER interface eno16777984

我有两个具有keepalived和haproxy服务的节点(CentOS7)。 如果我关闭了一个节点,一切正常。但如果haproxy不在,我想让贵宾们进行故障切换

这是第一个节点配置:

  vrrp_script ha_check {
script "/etc/keepalived/haproxy_check"
interval 2
weight 21
}

vrrp_instance VI_1 {
    state MASTER
        interface eno16777984
        virtual_router_id 151
        priority 101
        advert_int 1
        authentication {
        auth_type PASS
        auth_pass 11111
                        }
        virtual_ipaddress {
                10.0.100.233
                            }
        smtp_alert
track_script {
ha_check
}
}
第二节点:

vrrp_script ha_check {
script "/etc/keepalived/haproxy_check"
interval 2
fall 2
rise 2
timeout 1
weight 2
}

vrrp_instance VI_1 {
    state BACKUP
        interface eno16777984
        virtual_router_id 151
        priority 100
        advert_int 1
        authentication {
        auth_type PASS
        auth_pass 11111
                        }
        virtual_ipaddress {
                10.0.100.233
                            }
        smtp_alert
track_script {
ha_check
}
}
cat/etc/Keepalive/haproxy\u检查

systemctl status haproxy | grep "inactive"
当我停止haproxy时,它仍然不会将VIP故障切换到下一个 主持人


我做错了什么?提前谢谢你

在脚本中,您正在检查

systemctl status haproxy
包含关键字“不活动”。这是手动停止haproxy服务时得到的值吗

一旦haproxy服务停止,您的日志将再次启动。你能核实一下吗

另外,尝试将脚本替换为

script "killall -0 haproxy"

这很容易。请尝试以下示例:

vrrp_script check_haproxy {
    script "pidof haproxy"
    interval 2
    weight 2
}
在配置的末尾,还应添加以下部分:

track_script {
    check_haproxy
}
[root@cks-hatest1~]#系统CTL启动haproxy[root@cks-hatest1~]#/etc/keepalive/haproxy\u检查[root@cks-hatest1~]#系统CTL停止haproxy[root@cks-hatest1~]#/etc/keepalived/haproxy_检查激活:未激活(死)
killall-0 haproxy不工作
cks-hatest1 keepalived_vrrp[5891]:vrrp_脚本(ha_检查)已成功
,但无任何进展
track_script {
    check_haproxy
}