Problem

At cluster package stop, a file system is not unmounting correctly because the underlying NFS share is not being unshared first correcty:

HANFS -- Sep 20 16:18:53 - Node "serv1": Killing rpc.statd
HANFS -- Sep 20 16:18:53 - Node "serv1": Killing rpc.lockd
HANFS -- Sep 20 16:18:53 - Node "serv1": Killing nfsd
HANFS -- Sep 20 16:18:53 - Node "serv1": Restarting rpc.statd
HANFS -- Sep 20 16:18:54 - Node "serv1": Restarting rpc.lockd
HANFS -- Sep 20 16:18:55 - Node "serv1": Restarting nfsd
HANFS EXPORT-- Sep 20 16:18:55
Usage: unshare { pathname | resource }
        ERROR:  Function nfs_un_export_fs
        ERROR:  Failed to unexport root=serv1:serv1.acme.com:dbORA      /export/sapmnt/ORA
HANFS EXPORT -- Sep 20 16:18:55 - Node "serv1": Unexporting filesystem on   /export/usr/sap/trans_ORA
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: Number of components: 4 5 5 5 5 5 5 5 5 5 6
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: sorted indexes: 0 1 2 3 4 5 6 7 8 9 10
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: processing 10 /export/usr/sap/trans_ORA 1
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: processing 9 /export/sapmnt/ORA 1
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: processing 8 /oracle/ORA/sapdata1 1
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: processing 7 /oracle/ORA/oraarch 1
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: processing 6 /oracle/ORA/mirrlogB 1
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: processing 5 /oracle/ORA/mirrlogA 1
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: processing 4 /oracle/ORA/origlogB 1
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: processing 3 /oracle/ORA/origlogA 1
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: processing 2 /oracle/ORA/sapreorg 1
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: processing 1 /oracle/ORA/11204 1
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: processing 0 /oracle/ORA 1
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: max mnt order: 2
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: Unmounting filesystem on /dev/vgdbORA/lvsapdata1
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: Unmounting filesystem on /dev/vgdbORA/lvoraarch
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: Unmounting filesystem on /dev/vgdbORA/lvmirrlogB
Sep 20 16:18:55 root@serv1 filesystem.sh[11580]: Unmounting filesystem on /dev/vgdbORA/lvmirrlogA
Sep 20 16:18:56 root@serv1 filesystem.sh[11580]: Unmounting filesystem on /dev/vgdbORA/lvoriglogB
Sep 20 16:18:56 root@serv1 filesystem.sh[11580]: Unmounting filesystem on /dev/vgdbORA/lvoriglogA
Sep 20 16:18:56 root@serv1 filesystem.sh[11580]: Unmounting filesystem on /dev/vgdbORA/lvsapreorg
Sep 20 16:18:56 root@serv1 filesystem.sh[11580]: Unmounting filesystem on /dev/vgdbORA/lv11204
Sep 20 16:18:56 root@serv1 filesystem.sh[11580]: Unmounting filesystem on /dev/vgdbORA/lvusrsaptrans
Sep 20 16:18:56 root@serv1 filesystem.sh[11580]: Unmounting filesystem on /dev/vgdbORA/lvsapmnt
umount: cannot unmount /dev/vgdbORA/lvsapmnt : Device busy
umount: return error 1.
Sep 20 16:18:56 root@serv1 filesystem.sh[11580]:
Sep 20 16:18:56 root@serv1 filesystem.sh[11580]: WARNING: Running fuser to remove anyone using the file system directly.
/dev/vgdbORA/lvsapmnt:
umount: cannot unmount /dev/vgdbORA/lvsapmnt : Device busy
umount: return error 1.
Sep 20 16:18:56 root@serv1 filesystem.sh[11580]: ERROR: Unmount /dev/vgdbORA/lvsapmnt failed, trying again.
/dev/vgdbORA/lvsapmnt:
umount: cannot unmount /dev/vgdbORA/lvsapmnt : Device busy
umount: return error 1.
Sep 20 16:18:57 root@serv1 filesystem.sh[11580]: ERROR: Unmount /dev/vgdbORA/lvsapmnt failed, trying again.
/dev/vgdbORA/lvsapmnt:
umount: cannot unmount /dev/vgdbORA/lvsapmnt : Device busy
umount: return error 1.
Sep 20 16:18:58 root@serv1 filesystem.sh[11580]: Unmounting filesystem /dev/vgdbORA/lvsapmnt using the -o force option
Sep 20 16:18:59 root@serv1 filesystem.sh[11580]: Unmounting filesystem on /dev/vgdbORA/lvoraclehome
Sep 20 16:18:59 root@serv1 volume_group.sh[11704]: Deactivating volume group /dev/vgdbORA
Volume Group configuration for /dev/vgdbORA has been saved.
Deactivated volume group in Exclusive Mode.
Volume group "/dev/vgdbORA" has been successfully changed.

Solution

After removing the TABS and putting spaces I was able to unshare the filesystem without any issue during package halt.

So the config should not be:

# ************ HANFS TOOLKIT PARAMETERS ************
#
#   NFS EXPORTS
#
#   Specifies all exported NFS directories with share options. The directories
#   must be defined in the mounted file system FS list specified in the control
#   script. These variables are used by the command "share" to share the
#   file systems and the command "unshare" to unshare the file systems.
#   The configuration value for XFS should be with in double quotes.
#   Example: XFS        "-o ro /pkg1"
#   Example: XFS        "/pkg2"
#
# Legal values for nfs/hanfs_export/XFS: /^\"[^"]+[^\]\"$/.

nfs/hanfs_export/XFS            "-o root=serv1:serv1.acme.com:dbORA <TABS> /export/sapmnt/ORA"
nfs/hanfs_export/XFS            "-o root=serv1:serv1.acme.com:dbORA <TABS> /export/usr/sap/trans_ORA"

But rather:

# ********** HANFS TOOLKIT PARAMETERS **********
#
#   NFS EXPORTS
#
#   Specifies all exported NFS directories with share options. The directories
#   must be defined in the mounted file system FS list specified in the control
#   script. These variables are used by the command "share" to share the
#   file systems and the command "unshare" to unshare the file systems.
#   The configuration value for XFS should be with in double quotes.
#   Example: XFS        "-o ro /pkg1"
#   Example: XFS        "/pkg2"
#
# Legal values for nfs/hanfs_export/XFS: /^\"[^"]+[^\]\"$/.

nfs/hanfs_export/XFS            "-o root=serv1:serv1.acme.com:dbORA <SPACES> /export/sapmnt/ORA"
nfs/hanfs_export/XFS            "-o root=serv1:serv1.acme.com:dbORA <SPACES> /export/usr/sap/trans_ORA"

See: http://h20564.www2.hpe.com/hpsc/doc/public/display?docId=emr_na-c02653531&sp4ts.oid=4162088

Leave a comment