Rev 775: merged 60.nfs changes from ronnie in
http://samba.org/~tridge/ctdb
tridge at samba.org
tridge at samba.org
Mon Jan 21 01:46:21 GMT 2008
------------------------------------------------------------
revno: 775
revision-id:tridge at samba.org-20080121014611-z9qz6trxkgxrulfz
parent: tridge at samba.org-20080118044836-breaxa1j2sdox553
committer: Andrew Tridgell <tridge at samba.org>
branch nick: tridge.stable
timestamp: Mon 2008-01-21 12:46:11 +1100
message:
merged 60.nfs changes from ronnie
modified:
config/events.d/60.nfs nfs-20070601141008-hy3h4qgbk1jd2jci-1
=== modified file 'config/events.d/60.nfs'
--- a/config/events.d/60.nfs 2008-01-16 11:06:44 +0000
+++ b/config/events.d/60.nfs 2008-01-21 01:46:11 +0000
@@ -18,6 +18,8 @@
/bin/mkdir -p $CTDB_BASE/state/statd/ip
/bin/mkdir -p $STATD_SHARED_DIRECTORY
+ /bin/rm -f $CTDB_BASE/state/statd/statd.restart >/dev/null 2>/dev/null
+
# make sure nfs is stopped before we start it, or it may get a bind error
service nfs stop > /dev/null 2>&1
service nfslock stop > /dev/null 2>&1
@@ -68,6 +70,31 @@
;;
monitor)
+ # check that statd responds to rpc requests
+ # if statd is not running we try to restart it once and wait
+ # for the next monitoring event to verify if it is running or not
+ # if it still fails we fail and mark the node as UNHEALTHY
+ if [ -f $CTDB_BASE/state/statd/statd.restart ]; then
+ # statd was restarted, see if it came up ok
+ rpcinfo -u localhost 100024 1 > /dev/null || {
+ echo "ERROR: Failed to restart STATD"
+ exit 1
+ }
+ echo "STATD successfully restarted."
+ /bin/rm -f $CTDB_BASE/state/statd/statd.restart
+ else
+ rpcinfo -u localhost 100024 1 > /dev/null || {
+ RPCSTATDOPTS=""
+ [ -n "$STATD_HOSTNAME" ] && RPCSTATDOPTS="$RPCSTATDOPTS -n $STATD_HOSTNAME"
+ [ -n "$STATD_PORT" ] && RPCSTATDOPTS="$RPCSTATDOPTS -p $STATD_PORT"
+ [ -n "$STATD_OUTGOING_PORT" ] && RPCSTATDOPTS="$RPCSTATDOPTS -o $STATD_OUTGOING_PORT"
+ rpc.statd $RPCSTATDOPTS
+ echo "ERROR: STATD is not responding. Trying to restart it. [rpc.statd $RPCSTATDOPTS]"
+ touch $CTDB_BASE/state/statd/statd.restart
+ }
+ fi
+
+
# check that NFS responds to rpc requests
ctdb_check_rpc "NFS" 100003 3
@@ -76,7 +103,6 @@
ctdb_check_directories "nfs" $nfs_dirs
# check that lockd responds to rpc requests
- ctdb_check_rpc "statd" 100024 1
ctdb_check_rpc "lockd" 100021 1
ctdb_check_directories "statd" $STATD_SHARED_DIRECTORY
More information about the samba-cvs
mailing list