After installing the software components on the physical nodes and the cluster group client is configured, we must configure the cvclusternotify script.
The Problem
We had a number of backup failures on a RHEL 6 pacemaker clusters which were configured with no cvclusternotify script, and the below was the response from a Commvault support engineer regarding the issue:
“The cluster agent would behave unpredictably without the cvclusternotify script being called when the cluster is intialised.
The purpose of the script is to notify the CS server when the active node is switched, and to ensure it is aware which is the primary node.”
Environment in question is Simpana 10.
Cvclusternotify on RHEL 6 HA Pacemaker Cluster
One of the ways of adding the cvclusternotify script to a cluster is to create a new <script> resource within cluster.conf
, combined with a simple init script.
# ccs -h $NODE --addresource script name=cvnotify-$CLUSTER_SERVICE file=$CVNOTIFYPATH/cvnotify-$CLUSTER_SERVICE
# ccs -h $NODE --addsubservice $CLUSTER_SERVICE script ref=cvnotify-$CLUSTER_SERVICE
Where:
- $NODE – the cluster node you are running the command on,
- $CLUSTER_SERVICE – the cluster service name which you want to add the new resource to,
- $CVNOTIFYPATH/cvnotify-$CLUSTER_SERVICE – the full path to the LSB compliant cvnotify script which will be called on failover.
Normally the cluster resource scripts are like init scripts where they need to support start, stop and status. Therefore they can be written to call the following command on a cluster startup:
cvclusternotify -inst "$SIMPANA_INSTANCE" -cn "$CLUSTER_SERVICE" -start
And this one on a cluster shutdown:
cvclusternotify -inst "$SIMPANA_INSTANCE" -cn "$CLUSTER_SERVICE" -shutdown
Where:
- $SIMPANA_INSTANCE – the name of the simpana instance as reported by ‘simpana status’ command,
- $CLUSTER_SERVICE – the cluster service name that is being failed over.
References
http://documentation.commvault.com/commvault/v10/article?p=features/clustering/advanced.htm#Configure_Script_non_veritas_unix