/etc/rc.d/init.d/glusterfsd was removed from 3.3.2 and 3.4.0 which is causing clients to hang for ping-timeout when a server is rebooted or shut down. We want to have the ability to restart glusterd without restarting the bricks during day-to-day operation, but the bricks do need to be shut down before the network during a reboot or shutdown. That init script was useful for sysinit. Not sure how this can be accomplished in systemd though.
Sorry, that wasn't a very well researched bug... Turns out that EL6.4 now checks: [ -f /var/lock/subsys/$subsys -o -f /var/lock/subsys/$subsys.init ] which, since we didn't start glusterfsd through init, didn't get created. I was able to work around it with this patch: --- a/etc/rc.d/init.d/glusterd 2013-08-08 02:09:30.000000000 +0000 +++ b/etc/rc.d/init.d/glusterd 2013-08-08 02:09:06.000000000 +0000 @@ -34,6 +34,7 @@ [ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog lockfile=/var/lock/subsys/$prog +fakelockfile=/var/lock/subsys/glusterfsd start() { [ -x $exe ] || exit 5 @@ -42,7 +43,7 @@ daemon $exe${GLUSTERD_LOGFILE+" -l $GLUSTERD_LOGFILE"}${GLUSTERD_LOGLEVEL+" -L $GLUSTERD_LOGLEVEL"} -p $pidf retval=$? echo - [ $retval -eq 0 ] && touch $lockfile + [ $retval -eq 0 ] && touch $lockfile && touch $fakelockfile return $retval }
I've found something similar too: https://bugzilla.redhat.com/show_bug.cgi?id=988946 some Gluster processes aren't exiting when the service stops.
*** This bug has been marked as a duplicate of bug 1014242 ***