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.