! Sample configuration for quorum/hysteresis setup.
! The server pool below consists of 10 servers. After
! start, the quorum will not be reached until 9 (7+2)
! live servers are present in the pool (all servers are
! equally weighted, and quorum is the sum of weights).
! Once this happens, a custom script will be executed,
! which supposedly invokes some actions to start
! announcing IP address of the virtual server to the
! world. After that the quorum will not break until
! the pool has 5 (7-2) or more live servers. Pool size
! change from 7 to 6 and back will not trigger a quorum
! flap this way. Once there are less than 5 servers,
! the quorum is considered lost and corresponding
! script is executed, supposedly propagating the
! failure, so necessary actions can be taken.
!
! Due to the alpha mode, all real servers are considered
! down on server start, so the quorum is initially lost.
! Due to the omega mode, quorum_down notifier is executed
! on keepalived shutdown as well (see keepalived.conf
! manpage for details).
virtual_server 10.0.1.1 80 {
delay_loop 6
lb_algo wrr
lb_kind NAT
persistence_timeout 900
protocol TCP
alpha
omega
quorum 7
hysteresis 2
quorum_up /usr/local/sbin/quorum-up.sh
quorum_down /usr/local/sbin/quorum-down.sh
real_server 10.0.0.1 8080 {
weight 1
TCP_CHECK {
connect_port 80
connect_timeout 3
}
}
real_server 10.0.0.2 8080 {
weight 1
TCP_CHECK {
connect_port 80
connect_timeout 3
}
}
real_server 10.0.0.3 8080 {
weight 1
TCP_CHECK {
connect_port 80
connect_timeout 3
}
}
real_server 10.0.0.4 8080 {
weight 1
TCP_CHECK {
connect_port 80
connect_timeout 3
}
}
real_server 10.0.0.5 8080 {
weight 1
TCP_CHECK {
connect_port 80
connect_timeout 3
}
}
real_server 10.0.0.6 8080 {
weight 1
TCP_CHECK {
connect_port 80
connect_timeout 3
}
}
real_server 10.0.0.7 8080 {
weight 1
TCP_CHECK {
connect_port 80
connect_timeout 3
}
}
real_server 10.0.0.8 8080 {
weight 1
TCP_CHECK {
connect_port 80
connect_timeout 3
}
}
real_server 10.0.0.9 8080 {
weight 1
TCP_CHECK {
connect_port 80
connect_timeout 3
}
}
real_server 10.0.0.10 8080 {
weight 1
TCP_CHECK {
connect_port 80
connect_timeout 3
}
}
}