------------------------------------------------------------ revno: 672 revision-id: [EMAIL PROTECTED] parent: [EMAIL PROTECTED] parent: [EMAIL PROTECTED] committer: Andrew Tridgell <[EMAIL PROTECTED]> branch nick: tridge timestamp: Mon 2007-10-29 13:43:12 +1100 message: merge from ronnie modified: config/events.d/00.ctdb events-20070529030121-04fjh63cxfh8v1pj-1 config/events.d/10.interface 10.interface-20070604050809-s21zslfirn07zjt8-1 config/events.d/60.nfs nfs-20070601141008-hy3h4qgbk1jd2jci-1 ------------------------------------------------------------ revno: 432.1.339 revision-id: [EMAIL PROTECTED] parent: [EMAIL PROTECTED] committer: root <[EMAIL PROTECTED]> branch nick: ctdb timestamp: Mon 2007-10-29 12:34:45 +1100 message: the while loop in the startup event runs as a subshell so we need an extra || exit 1 at the end to propagate the error code back to the caller of the script modified: config/events.d/00.ctdb events-20070529030121-04fjh63cxfh8v1pj-1 ------------------------------------------------------------ revno: 432.1.338 revision-id: [EMAIL PROTECTED] parent: [EMAIL PROTECTED] committer: Ronnie Sahlberg <[EMAIL PROTECTED]> branch nick: ctdb timestamp: Mon 2007-10-29 10:51:16 +1100 message: if bond* interfaces are used as public interfaces we can not rely on ethtool but have to check /proc for the status instead modified: config/events.d/10.interface 10.interface-20070604050809-s21zslfirn07zjt8-1 ------------------------------------------------------------ revno: 432.1.337 revision-id: [EMAIL PROTECTED] parent: [EMAIL PROTECTED] parent: [EMAIL PROTECTED] committer: Ronnie Sahlberg <[EMAIL PROTECTED]> branch nick: ctdb timestamp: Mon 2007-10-29 08:50:51 +1100 message: merge from tridge modified: config/events.d/40.vsftpd 40.vsftpd-20070605080716-mih15mjbgsjt7niv-1 ------------------------------------------------------------ revno: 432.1.336 revision-id: [EMAIL PROTECTED] parent: [EMAIL PROTECTED] parent: [EMAIL PROTECTED] committer: Ronnie Sahlberg <[EMAIL PROTECTED]> branch nick: ctdb timestamp: Mon 2007-10-29 08:40:46 +1100 message: merge from tridge modified: packaging/RPM/ctdb.spec ctdb.spec-20070527204758-biuh7znabuwan3zn-3 ------------------------------------------------------------ revno: 432.1.335 revision-id: [EMAIL PROTECTED] parent: [EMAIL PROTECTED] committer: Ronnie Sahlberg <[EMAIL PROTECTED]> branch nick: ctdb timestamp: Tue 2007-10-23 12:35:43 +1000 message: since service nfs stop/start sometimes fail to bring up the mount daemon on rhel5 check if mountd is running during monitoring and if it is not, try to restart it modified: config/events.d/60.nfs nfs-20070601141008-hy3h4qgbk1jd2jci-1 === modified file 'config/events.d/00.ctdb' --- a/config/events.d/00.ctdb 2007-09-14 04:14:03 +0000 +++ b/config/events.d/00.ctdb 2007-10-29 01:34:45 +0000 @@ -31,7 +31,7 @@ value=`echo $v | cut -d= -f2` ctdb setvar $varname $value || exit 1 echo "`date` Set $varname to $value" - done + done || exit 1 ;; esac
=== modified file 'config/events.d/10.interface' --- a/config/events.d/10.interface 2007-10-10 21:27:38 +0000 +++ b/config/events.d/10.interface 2007-10-28 23:51:16 +0000 @@ -137,23 +137,29 @@ ;; monitor) - [ -x /usr/sbin/ethtool ] && { - [ -z "$CTDB_PUBLIC_INTERFACE" ] || { - /usr/sbin/ethtool $CTDB_PUBLIC_INTERFACE | grep 'Link detected: yes' > /dev/null || { - echo "`date` ERROR: No link on the public network interface $CTDB_PUBLIC_INTERFACE" - exit 1 - } - } - cat $CTDB_PUBLIC_ADDRESSES | sed -e "s/^[^\t ]*[\t ]*//" -e "s/[\t ]*$//" | - sort | uniq | while read IFACE; do + INTERFACES=`cat $CTDB_PUBLIC_ADDRESSES | + sed -e "s/^[^\t ]*[\t ]*//" -e "s/[\t ]*$//"` + + [ "$CTDB_PUBLIC_INTERFACE" ] && INTERFACES="$CTDB_PUBLIC_INTERFACE $INTERFACES" + + INTERFACES=`for IFACE in $INTERFACES ; do echo $IFACE ; done | sort | uniq` + + + for IFACE in $INTERFACES ; do + if [ `echo $IFACE | grep '^bond*'` ] ; then + grep '^MII Status: up' /proc/net/bonding/$IFACE > /dev/null || { + echo "`date` ERROR: public network interface $IFACE is down" + exit 1 + } + else [ -z "$IFACE" ] || { /usr/sbin/ethtool $IFACE | grep 'Link detected: yes' > /dev/null || { echo "`date` ERROR: No link on the public network interface $IFACE" exit 1 } } - done - } + fi + done ;; esac === modified file 'config/events.d/60.nfs' --- a/config/events.d/60.nfs 2007-10-22 05:14:49 +0000 +++ b/config/events.d/60.nfs 2007-10-23 02:35:43 +0000 @@ -67,7 +67,6 @@ monitor) # check that NFS responds to rpc requests ctdb_check_rpc "NFS" 100003 3 - ctdb_check_rpc "mount" 100005 1 # and that its directories are available nfs_dirs=`grep -v '^#' < /etc/exports | cut -d' ' -f1` @@ -77,6 +76,17 @@ ctdb_check_rpc "statd" 100024 1 ctdb_check_rpc "lockd" 100021 1 ctdb_check_directories "statd" $STATD_SHARED_DIRECTORY + + # mount needs special handling since it is sometimes not started + # correctly on RHEL5 + rpcinfo -u localhost 100005 1 > /dev/null || { + echo "`date` ERROR: MOUNTD is not running. Trying to restart it." + RPCMOUNTDOPTS="" + [ -n "$MOUNTD_PORT" ] && RPCMOUNTDOPTS="$RPCMOUNTDOPTS -p $MOUNTD_PORT" + killall -q -9 rpc.mountd + rpc.mountd $RPCMOUNTDOPTS & + exit 1 + } ;; esac