[prev in list] [next in list] [prev in thread] [next in thread]
List: linux-ha-dev
Subject: Re: [Linux-ha-dev] [PATCH] handle idmapd using nfsserver RA
From: Junko IKEDA <tsukishima.ha () gmail ! com>
Date: 2012-05-31 1:22:27
Message-ID: CAB49TtQSu+=WYBHRwGFEsmvonTdaYvppQ7R_=xVAuM06dm8y_Q () mail ! gmail ! com
[Download RAW message or body]
Hi,
My previous patch had a spelling error, revise it just a bit.
Thanks,
Junko
2012/5/30 Junko IKEDA <tsukishima.ha@gmail.com>:
> Hi,
>
> I am trying to setup NFSv4 server using nfsserver RA,
> and adding some handlings for rpc.idmad.
> http://linux.die.net/man/8/rpc.idmapd
>
> Please see the attached.
>
> /etc/init.d/nfs script which is included with RHEL6.2 starts idmad
> during its starting process.
>
> # /etc/init.d/nfs start
> Starting NFS services: =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 =A0 =A0 =A0 [ =A0OK =A0]
> Starting NFS quotas: =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 =A0 =A0 =A0 [ =A0OK =A0]
> Starting NFS daemon: =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 =A0 =A0 =A0 [ =A0OK =A0]
> Starting NFS mountd: =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 =A0 =A0 =A0 [ =A0OK =A0]
> Starting RPC idmapd : =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0=
=A0 =A0 =A0 =A0 =A0 =A0 [ =A0OK =A0]
>
> But nfs init script does not stop idmapd, so I need this patch for now.
> How's that for the other distribution?
>
> # /etc/init.d/nfs stop
> Shutting down NFS mountd: =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0=
=A0 =A0 =A0 =A0 =A0[ =A0OK =A0]
> Shutting down NFS daemon: =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0=
=A0 =A0 =A0 =A0 =A0[ =A0OK =A0]
> Shutting down NFS quotas: =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0=
=A0 =A0 =A0 =A0 =A0[ =A0OK =A0]
> Shutting down NFS services: =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 =A0 =A0[ =A0OK =A0]
>
> # /etc/init.d/rpcidmapd status
> rpc.idmapd (pid 17450) is running...
>
> Thanks,
> Junko IKEDA
>
> NTT DATA INTELLILINK CORPORATION
["nfsserver.patch" (application/octet-stream)]
diff --git a/heartbeat/nfsserver b/heartbeat/nfsserver
index 52f00d8..db77225 100755
--- a/heartbeat/nfsserver
+++ b/heartbeat/nfsserver
@@ -75,6 +75,17 @@ IP addresses.
<content type="string"/>
</parameter>
+<parameter name="rpcidmapd_init_script" unique="0" required="0">
+<longdesc lang="en">
+The init script for rpc.idmapd.
+rpc.idmapd is the NFSv4 ID-name mapping daemon.
+</longdesc>
+<shortdesc lang="en">
+The init script for rpc.idmapd.
+</shortdesc>
+<content type="string" default="" />
+</parameter>
+
</parameters>
<actions>
@@ -124,6 +135,20 @@ nfsserver_monitor ()
ocf_log debug `cat $fn`
rm -f $fn
+ if [ $rc -eq 0 -a x != x"${OCF_RESKEY_rpcidmapd_init_script}" ]; then
+ while true; do
+ ${OCF_RESKEY_rpcidmapd_init_script} status /dev/null 2>&1
+ if [ $? -ne 0 ]; then
+ ocf_log debug "restart rpcidmapd"
+ ${OCF_RESKEY_rpcidmapd_init_script} start
+ [ $? -eq 0 ] && break
+ else
+ break
+ fi
+ sleep 1
+ done
+ fi
+
#Adapte LSB status code to OCF return code
if [ $rc -eq 0 ]; then
return $OCF_SUCCESS
@@ -161,8 +186,11 @@ bind_tree ()
unbind_tree ()
{
- if `mount | grep -q "rpc_pipefs on /var/lib/nfs/rpc_pipefs"`; then
- umount /var/lib/nfs/rpc_pipefs
+ if `mount | grep -q "type rpc_pipefs"`; then
+ if [ x != x"${OCF_RESKEY_rpcidmapd_init_script}" ]; then
+ ${OCF_RESKEY_rpcidmapd_init_script} stop
+ fi
+ umount -a -t rpc_pipefs
fi
if is_bound $fp /var/lib/nfs; then
umount /var/lib/nfs
_______________________________________________________
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic