heartbeat – generic HA configuration

few configuration files i use on highly-available active-standby clusters running under debian.

my very simplistic heartbeat setup [ under debian ] consists of two servers:

  • ser0 [preferred active node] with permanently assigned at eth0
  • ser0b [hot-standby node waiting to replace master] with permanently assigned at eth0

‘floating ip’ – assigned to the active node is assigned to eth1

in this case service that gets high availability is apache. i separately sync apache’s configs and content that is served from ser0 to ser0b.

files below are identical on both machines with one marked exception:


auth 1
1 md5 somethingrandom


ser0 ha.sh


keepalive 2
deadtime 10
udpport        694 
; below - address permanently assigned to the peer node . this is for master:
ucast eth1
; and on slave i have 
; ucast eth1
udp     eth0
logfacility     local0
auto_failback on

node    ser0
node    ser0b


case "$1" in
        ip link set dev eth1 up
        # bind 'floating' ip to the interface
        ip a a dev eth1
        # you might want to add some route-changes here if needed
        /usr/lib/heartbeat/send_arp -r 10 eth1 auto
        # to make sure apache reloads it's config when machine becomes master
        /etc/init.d/apache2 restart

        # we are no longer active, un-bind 'floating' ip from the interface
        ip a d dev eth1
        # you could stop it as well or just skip this step
        /etc/init.d/apache2 restart
exit 0

Leave a Reply

Your email address will not be published. Required fields are marked *

(Spamcheck Enabled)