Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
Managing MC/ServiceGuard NFS for Linux > Chapter 3 Sample Configurations

Configuring One Adoptive Node to Support Failover of Multiple Packages

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

 » Index

This configuration has two packages, each owned by a different server. The adoptive node for both packages is the same host. This sample configuration uses the package control option, which prevents the adoptive node from adopting another package if it has already adopted one. Figure 3-3 “One Adoptive Node for Two Packages” illustrates this configuration. Figure 3-4 “One Adoptive Node for Two Packages After One Server Fails” shows the same configuration after one primary server has failed.

Figure 3-3 One Adoptive Node for Two Packages

One Adoptive Node for Two Packages

Figure 3-4 “One Adoptive Node for Two Packages After One Server Fails” shows this sample configuration after host basil has failed. Host sage has adopted pkg02.

NOTE: Setting the package control option (-d) of the cmmodpkg command, prevents host sage from adopting another package, so host sage is no longer an adoptive node for pkg01. This prevent the adoptive node (sage) from becomming overloaded when multiple packages failover.

Figure 3-4 One Adoptive Node for Two Packages After One Server Fails

One Adoptive Node for Two Packages After One Server Fails

Cluster Configuration File for Adoptive Node for Two Packages

This section shows the cluster configuration file (cluster.conf) for this configuration example. The comments are not shown.

CLUSTER_NAME                      PkgCtrl

QS_HOST qs
QS_POLLING_INTERVAL 300000000

NODE_NAME thyme
NETWORK_INTERFACE eth0
HEARTBEAT_IP 192.100.112.146
NETWORK_INTERFACE eth1

NODE_NAME basil
NETWORK_INTERFACE eth0
HEARTBEAT_IP 192.100.112.168

NODE_NAME sage
NETWORK_INTERFACE eth0
HEARTBEAT_IP 192.100.112.184
NETWORK_INTERFACE eth1
NETWORK_INTERFACE eth2

HEARTBEAT_INTERVAL 1000000
NODE_TIMEOUT 5000000

AUTO_START_TIMEOUT 600000000
NETWORK_POLLING_INTERVAL 2000000

MAX_CONFIGURED_PACKAGES 4

Package Configuration File for pkg01

This section shows the package configuration file (pkg1.conf) for the package pkg01 in this sample configuration. The comments are not shown.

PACKAGE_NAME               pkg01
PACKAGE_TYPE FAILOVER
FAILOVER_POLICY CONFIGURED_NODE
FAILBACK_POLICY MANUAL
NODE_NAME thyme
NODE_NAME sage
AUTO_RUN YES
NODE_FAIL_FAST_ENABLED NO
RUN_SCRIPT /usr/local/cmcluster/pkg1/pkg1.conf
RUN_SCRIPT_TIMEOUT NO_TIMEOUT
HALT_SCRIPT /usr/local/cmcluster/pgk1/pkg1.conf
HALT_SCRIPT_TIMEOUT NO_TIMEOUT
SERVICE_NAME nfs1.monitor
SERVICE_FAIL_FAST_ENABLED NO
SERVICE_HALT_TIMEOUT 300
SUBNET 192.100.112.0

Package Control Script for pkg01

This section shows the package control script (pkg1.cntl) for the package pkg01 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 have been omitted.

PATH=/sbin:/usr/bin:/usr/sbin:/etc:/bin:usr/local/
cmcluster/bin
RAIDTAB="/usr/local/cmcluster/conf/raidtab.sg"
RAIDSTART="raidstart -c ${RAIDTAB}"
RAIDSTOP="raidstop -c ${RAIDTAB}"
VGCHANGE="vgchange -a y" # Default
VG[0]="nfsu01"
MD[0]="/dev/md0"
LV[0]=/dev/nfsu01/lvol1;
FS[0]=/hanfs/nfsu011;
FS_TYPE[0]="ext2";
FS_MOUNT_OPT[0]="-o rw"
# FS_UMOUNT_COUNT=""
# FS_MOUNT_RETRY_COUNT=""
IP[0]="192.100.112.243"
SUBNET[0]="192.100.112.0"
HA_APP_SERVER="pre-IP"
#SERVICE_NAME[0]=""
#SERVICE_CMD[0]=""
#SERVICE_RESTART[0]=""

The function customer_defined_run_cmds calls the cmmodpkg command with the package control option (-d). This command prevents the host that is running pkg01 from adopting pkg02. 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.

NFS Control Script for pkg01

This section shows the NFS control script (hanfs.sh) for the package pkg03 on this sample configuration on the the user-configured part of the script is shown:

XFS[0]="-o rw *:/hanfs/nfsu011"
NFS_SERVICE_NAME[0]="nfs1.monitor"
NFS_SERVICE_CMD[0]="/usr/local/cmcluster/pkg1/nfs.mon"
NFS_SERVICE_RESTART[0]="-r 0"

Package Configuration File for pkg02

This section shows the package configuration file (pkg2.conf) for the package pkg02 in this sample configuration. The comments are not shown.

PACKAGE_NAME               pkg02
PACKAGE_TYPE FAILOVER
FAILOVER_POLICY CONFIGURED_NODE
FAILBACK_POLICY MANUAL
NODE_NAME basil
NODE_NAME sage
AUTO_RUN YES
NODE_FAIL_FAST_ENABLED NO
RUN_SCRIPT /usr/local/cmcluster/pkg2/pkg2.conf
RUN_SCRIPT_TIMEOUT NO_TIMEOUT
HALT_SCRIPT /usr/local/cmcluster/pgk2/pkg2.conf
HALT_SCRIPT_TIMEOUT NO_TIMEOUT
SERVICE_NAME nfs2.monitor
SERVICE_FAIL_FAST_ENABLED NO
SERVICE_HALT_TIMEOUT 300
SUBNET 192.100.112.0

Package Control Script for pkg02

This section shows the package control script (pkg2.cntl) for the package pkg02 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 have been omitted.

PATH=/sbin:/usr/bin:/usr/sbin:/etc:/bin:usr/local/
cmcluster/bin
RAIDTAB="/usr/local/cmcluster/conf/raidtab.sg"
RAIDSTART="raidstart -c ${RAIDTAB}"
RAIDSTOP="raidstop -c ${RAIDTAB}"
VGCHANGE="vgchange -a y" # Default
VG[0]="nfsu02"
MD[0]="/dev/md1"
LV[0]=/dev/nfsu02/lvol1;
FS[0]=/hanfs/nfsu021;
FS_TYPE[0]="ext2";
FS_MOUNT_OPT[0]="-o rw"
# FS_UMOUNT_COUNT=""
# FS_MOUNT_RETRY_COUNT=""
IP[0]="192.100.112.244"
SUBNET[0]="192.100.112.0"
HA_APP_SERVER="pre-IP"
#SERVICE_NAME[0]=""
#SERVICE_CMD[0]=""
#SERVICE_RESTART[0]=""

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.

NFS Control Script for pkg02

This section shows the NFS control script (hanfs.sh) for the package pkg02 on this sample configuration on the the user-configured part of the script is shown:

XFS[0]="-o rw *:/hanfs/nfsu021"
NFS_SERVICE_NAME[0]="nfs2.monitor"
NFS_SERVICE_CMD[0]="/usr/local/cmcluster/pkg2/nfs.mon"
NFS_SERVICE_RESTART[0]="-r 0"
Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© Hewlett-Packard Development Company, L.P.