What does mean EQUAL state of keepalived config

keepalivedvrrp

I faced with new for me, unknown value of "state" variable – "EQUAL". Be more specific:

vrrp_script chk_master {
    script "/var/<path>/scripts/cmaster.sh"
    timeout 25
    interval 30
    weight -120
}

vrrp_instance VI {
        interface eth0
        state EQUAL
        priority 101
        virtual_router_id 68
        advert_int 1
        authentication {
                auth_type PASS
                auth_pass password:
        }
        virtual_ipaddress {
                x.x.x.x/x
        }

        track_script {
            chk_master
        }

        notify /usr/local/bin/keepalived-notify.sh
}

vrrp_script chk_standby {
    script "/var/<path>/scripts/cstandby.sh"
    timeout 25
    interval 30
    weight 20
}

vrrp_instance VI2 {
        interface eth0
        state EQUAL
        priority 100
        virtual_router_id 69
        advert_int 1
        authentication {
                auth_type PASS
                auth_pass password:
        }
        virtual_ipaddress {
                x.x.x.x/x
        }

        track_script {
            chk_standby
        }

        notify /usr/local/bin/keepalived-notify2.sh
}

Does anybody know what is meaning of this state? What is difference between "EQUAL" and "MASTER"/"BACKUP" states? I didn't find answer in official docs. Thnx.

Best Answer

In MASTER/BACKUP, the MASTER is always selected if it is operation. With EQUAL, neither one is preferred.

If you have MASTER/BACKUP and the master fails, you'll fail over to the BACKUP. But when the MASTER recovers, you'll switch back to it. With EQUAL, that would not happen.

Related Topic