Serviceguard NFS Toolkit A.11.11.06, A.11.23.05 and A.11.31.03 Administrator's Guide
AUTO_RUN YES
LOCAL_LAN_FAILOVER_ALLOWED YES
NODE_FAIL_FAST_ENABLED NO
RUN_SCRIPT /etc/cmcluster/nfs/nfs2.cntl
RUN_SCRIPT_TIMEOUT NO_TIMEOUT
HALT_SCRIPT /etc/cmcluster/nfs/nfs2.cntl
HALT_SCRIPT_TIMEOUT NO_TIMEOUT
SERVICE_NAME nfs2.monitor
SERVICE_FAIL_FAST_ENABLED NO
SERVICE_HALT_TIMEOUT 300
SUBNET 15.13.112.0
NFS Control Scripts for pkg02
The nfs.cntl Control Script
This section shows the NFS control script (nfs2.cntl) for the pkg02 package in this sample
configuration. Only the user-configured part of the script is shown; the executable part of the
script and most of the comments are omitted.
PATH=/sbin:/usr/bin:/usr/sbin:/etc:/bin
VGCHANGE="vgchange -a e" # Default
CVM_ACTIVATION_CMD="vxdg -g \$DiskGroup set activation=exclusivewrite"
VG[0]=nfsu02
LV[0]=/dev/nfsu02/lvol1; FS[0]=/hanfs/nfsu021
VXVOL="vxvol -g \$DiskGroup startall" #Default
FS_UMOUNT_COUNT=1
FS_MOUNT_RETRY_COUNT=0
IP[0]=15.13.114.244
SUBNET[0]=15.13.112.0
function customer_defined_run_cmds
{
cmmodpkg -d -n 'hostname' pkg01 &
}
The function customer_defined_run_cmds calls the cmmodpkg command with the package
control option (-d). This command prevents the host that is running pkg02 from adopting
pkg01. The ampersand (&) causes the cmmodpkg command to run in the background. It must
run in the background to allow the control script to complete.
There is a short time, after one primary node has failed but before the cmmodpkg command has
executed, when the other primary node can fail and the adoptive node will adopt its package.
In other words, if both thyme and basil fail at approximately the same time, host sage may
adopt two packages, even though the package control option is specified.
If you omit the cmmodpkg -d command from the NFS control script, host sage can adopt both
pkg01 and pkg02 if their primary nodes fail.
The hanfs.sh Control Script
This section shows the NFS control script (hanfs2.sh) for the pkg02 package in this sample
configuration. This example includes only the user-configured part of the script; the executable
Example Two - One Adoptive Node for Two Packages with File Lock Migration 57