#!/bin/sh # # (C) 2008 by Pablo Neira Ayuso # (C) 2009 Roman I Khimov # # This software may be used and distributed according to the terms # of the GNU General Public License, incorporated herein by reference. # # Description: # # This is the script for primary-backup setups for keepalived # (http://www.keepalived.org). You may adapt it to make it work with other # high-availability managers. # # Do not forget to include the required modifications to your keepalived.conf # file to invoke this script during keepalived's state transitions. # # Contributions to improve this script are welcome :). # ## Modified to work as init.d script under pacemaker control CONNTRACKD_BIN=/usr/sbin/conntrackd CONNTRACKD_LOCK=/var/lock/conntrack.lock CONNTRACKD_CONFIG=/etc/conntrackd/conntrackd.conf case "$1" in start) # # commit the external cache into the kernel table # $CONNTRACKD_BIN -C $CONNTRACKD_CONFIG -c if [ $? -eq 1 ] then logger "ERROR: failed to invoke conntrackd -c" fi # # flush the internal and the external caches # $CONNTRACKD_BIN -C $CONNTRACKD_CONFIG -f if [ $? -eq 1 ] then logger "ERROR: failed to invoke conntrackd -f" fi # # resynchronize my internal cache to the kernel table # $CONNTRACKD_BIN -C $CONNTRACKD_CONFIG -R if [ $? -eq 1 ] then logger "ERROR: failed to invoke conntrackd -R" fi # # send a bulk update to backups # $CONNTRACKD_BIN -C $CONNTRACKD_CONFIG -B if [ $? -eq 1 ] then logger "ERROR: failed to invoke conntrackd -B" fi ;; stop) $CONNTRACKD_BIN -t $CONNTRACKD_BIN -n ;; status) ;; *) logger "ERROR: unknown command" echo "Usage: conntrack-failover {start|stop|status}" exit 1 ;; esac exit 0