. $CTDB_BASE/functions
loadconfig
+update_config_from_tdb() {
+ # Pull optional ctdb configuration data out of config.tdb
+ PUBLICADDRESSESKEY='public-addresses:node#'`ctdb -t 1 xpnn|sed -e "s/.*://"`
+ rm -f $CTDB_VARDIR/state/public_addresses
+ ctdb pfetch config.tdb $PUBLICADDRESSESKEY $CTDB_VARDIR/state/public_addresses
+ [ "$?" = "0" ] && [ `stat --format="%s" /etc/ctdb/state/public_addresses` != "0" ] && [ ! -z "$CTDB_PUBLIC_ADDRESSES" ] && {
+ diff $CTDB_VARDIR/state/public_addresses $CTDB_PUBLIC_ADDRESSES >/dev/null 2>/dev/null
+ [ $? = "0" ] || {
+ echo CTDB public address configuration had been updated.
+ echo Extracting new configuration from database.
+ diff $CTDB_VARDIR/state/public_addresses $CTDB_PUBLIC_ADDRESSES
+ cp $CTDB_VARDIR/state/public_addresses $CTDB_PUBLIC_ADDRESSES
+ echo Restarting CTDB
+ service ctdb restart &
+ }
+ }
+}
+
case "$1" in
init)
# make sure we have a blank state directory for the scripts to work with
;;
startup)
- # Pull optional ctdb configuration data out of config.tdb
- PUBLICADDRESSESKEY='public-addresses:node#'`ctdb -t 1 xpnn|sed -e "s/.*://"`
- rm -f $CTDB_VARDIR/state/public_addresses
- ctdb pfetch config.tdb $PUBLICADDRESSESKEY $CTDB_VARDIR/state/public_addresses
- [ "$?" = "0" ] && [ `stat --format="%s" /etc/ctdb/state/public_addresses` != "0" ] && [ ! -z "$CTDB_PUBLIC_ADDRESSES" ] && {
- diff $CTDB_VARDIR/state/public_addresses $CTDB_PUBLIC_ADDRESSES >/dev/null 2>/dev/null
- [ $? = "0" ] || {
- echo CTDB public address configuration had been updated.
- echo Extracting new configuration from database.
- diff $CTDB_VARDIR/state/public_addresses $CTDB_PUBLIC_ADDRESSES
- cp $CTDB_VARDIR/state/public_addresses $CTDB_PUBLIC_ADDRESSES
- echo Restarting CTDB
- service ctdb restart &
- }
- }
+ update_config_from_tdb &
;;
monitor)
# We should never enter swap, so SwapTotal == SwapFree.