Managing Serviceguard NFS for Linux, March 2009
The monitor script monitors NFS services including:
• portmap
• rpc.statd
• nfsd
• rpc.mountd
• rpc.rquotad, if QUOTA_MON is set to “YES” in hanfs.conf
• lockd
• nfs.flm, if LOCK_MIGRATION and NFS_FLM_MONITOR are set to “YES” in
hanfs.conf
If any of the services are dead or hung, the nfs.mon. will cause the package to fail.
NOTE: To configure NFS for maximal availability, you must do the following:
• Specify AUTO_RUN=YES in the package configuration file. This allow the NFS package to
start automatically when the cluster starts up, and to start on an adoptive node after a failure.
• Invoke the NFS Monitoring script, nfs.mon. The default NFS control script does not invoke
the NFS monitoring script, nfs.mon. To invoke this script (see Chapter Chapter 3 (page 33))
trigger a failover if one of the package’s NFS services goes down while the node and network
remain up.
Whenever the monitor script detects an event, it logs information to a file.The name of this file
in legacy packages is same as your NFS control script in addition to a .log extension. For
example, if your control script is called pkg01.cntl, the package log file is called
pkg01.cntl.log. In Modular packages it uses the file specified in the script_log_file
parameter of the package configuration file. Each NFS package has its own log file. The NFS
monitor log file, which is on the same directory as the NFS control script, is always called
hanfs.sh.log.
Remote mount table synchronization
With NFS toolkit, a remote mount table synchronization binary code is installed in /usr/bin/
sync_rmtab. This program is provided for synchronizing the client current mount table, /var/
lib/nfs/rmtab, in the case of a NFS package failover. This synchronization process ensures
NFS clients access NFS seamlessly in the case of the NFS package failover. The NFS control script,
hanfs.sh, calls the synchronization program when the remote mount table needs to be
synchronized.
On the Client Side
The client should NFS-mount a file system using the package name in the mount command. The
package name is associated with the package’s relocatable IP address. On client systems, be sure
to use a hard mount. For auto-mounter, the timeout should be greater than the total end-to-end
recovery time for the Serviceguard NFS package—that is, failover time, running fsck, mounting
file systems, and exporting file systems on the new node. The default value of the timeout is five
minutes. Setting the timeout to zero disables unmounts completely.
Remote mount table synchronization 17