Professional Documents
Culture Documents
iSeries
Troubleshooting clusters
iSeries
Troubleshooting clusters
© Copyright International Business Machines Corporation 1998, 2001. All rights reserved.
US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract
with IBM Corp.
Contents
Troubleshooting clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Determining if a cluster problem exists . . . . . . . . . . . . . . . . . . . . . . . . . 1
Common cluster problems. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Recovering from partition errors . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Determining primary and secondary cluster partitions . . . . . . . . . . . . . . . . . . . 4
Changing partitioned nodes to failed . . . . . . . . . . . . . . . . . . . . . . . . . 5
Tips: Cluster partitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Example: Merging cluster partitions . . . . . . . . . . . . . . . . . . . . . . . . . 6
Recovering from cluster job failures . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Recovering a damaged cluster object . . . . . . . . . . . . . . . . . . . . . . . . . 8
Certain cluster conditions are easily corrected. You can learn how to recover from a partitioned cluster
situation“Recovering from partition errors” on page 3. This topic also tells you how to avoid a cluster
partition and gives you an example of how to merge partitions back together. You can read about how to
recover from a job failure“Recovering from cluster job failures” on page 8 and what to do to recover a
damaged object.“Recovering a damaged cluster object” on page 8
You cannot add a node to a device domain or access the IBM cluster management utility.
To access the IBM Simple Cluster Management utility or to use switchable devices, you must have OS/400
Option 41, HA Switchable Resources, installed on your system. You must also have a valid valid license
key for this option.
Troubleshooting clusters 3
Using this example, read how to Determine a primary and secondary cluster partition to see what kinds of
cluster resource group actions you can take.
If the partition condition reported is really a failure condition of one or more nodes, see Changing a
partition to failed.
See Tips: cluster partitions“Tips: Cluster partitions” on page 5 for more cluster partition tips.
For more information on merging partitions see Example: merging cluster partitions“Example: Merging
cluster partitions” on page 6.
See Example: Fail over for details on the various types of failures that can occur.
Once you have corrected the partitioned cluster situation, you will receive the message CPFBB21. This
message lets you know that you have recovered from the cluster partition.
By applying these restrictions, cluster resource groups can be resynchronized when the cluster is no
longer partitioned. As nodes rejoin the cluster from a partitioned status, the version of the cluster resource
group in the primary partition is copied to nodes from a secondary partition.
When a partition is detected, the Add Cluster Node Entry, Adjust Cluster Version, and the Create Cluster
API cannot be run in any of the partitions. The Add Device Domain Entry API can only be run if none of
the nodes in the device domain are partitioned. All of the other Cluster Control APIs may be run in any
partition. However, the action performed by the API takes affect only in the partition running the API.
To get the node back to the cluster again, start the cluster node. This can be done using a graphical user
interface, or using the Start Cluster Node (QcstStartClusterNode) API.
When the status of a node is changed to Failed, the role of nodes in the recovery domain for each Cluster
Resource Group in the partition may be reordered. The node being set to Failed will be assigned as the
last backup. If multiple nodes have failed and their status needs to be changed, the order in which the
nodes are changed will affect the final order of the recovery domain’s backup nodes. If the failed node was
the primary node for a CRG, the first active backup will be reassigned as the new primary node.
When you tell cluster resource services that a node has failed, it makes recovery from the partition state
simpler. However, changing the node status to failed when, in fact, the node is still active and a true
partition has occurred should not be done. Doing so could cause a node in more than one partition to
assume the primary role for a Cluster Resource Group. When two nodes think they are the primary node,
data such as files or data bases could become disjoint or corrupted if multiple nodes are each
independently making changes to their copies of files. In addition, the two partitions cannot be merged
back together when a node in each partition has been assigned the primary role.
Troubleshooting clusters 5
b. Remove Nodes A and B from the cluster in Partition 2. Partition 2 is now the cluster.
c. Create Cluster Resource Groups B, C, and D in Partition 2 specifying Nodes C and D as the
recovery domain.
d. Establish any replication environments needed in the new cluster.
Since nodes have been removed from the cluster definition in Partition 2, an attempt to merge Partition
1 and Partition 2 will fail. In order to correct the mismatch in cluster definitions, run the Delete Cluster
(QcstDeleteCluster) API on each node in Partition 1. Then add the nodes from Partition 1 to the
cluster, and reestablish all the cluster resource group definitions, recovery domains, and replication.
This requires a great deal of work and is also prone to errors. It is very important that you do this
procedure only in a site loss situation.
3. Processing a start node operation is dependent on the status of the node that is being started:
The node either failed or an End Node operation ended the node:
a. Cluster resource services is started on the node that is being added
b. Cluster definition is copied from an active node in the cluster to the node that is being started.
c. Any cluster resource group that has the node being started in the recovery domain is copied from
an active node in the cluster to the node being started. No cluster resource groups are copied from
the node that is being started to an active node in the cluster.
In the first case, the partitions are merged back together automatically once the communication problem is
fixed. This happens when both partitions periodically try to communicate with the partitioned nodes and
eventually reestablish contact with each other. In the second case, cluster resource services must be
restarted on the failed node. CRS must be restarted by calling the Start Cluster Node
(QcstStartClusterNode) from one of the nodes that is active in the cluster. If CRS is restarted on the failed
node by calling the Start Cluster Node API on the failed node, it becomes a 1 node cluster and will not
merge back into the rest of the cluster.
1. merge
2. primary partition secondary partition
1. merge
2. secondary partition secondary partition
merge operation
primary partition secondary partition
contains copy of CRG does NOT contain copy of CRG contains copy of CRG does NOT contain copy of CRG
(1) (2) (3) (4)
During a primary secondary merge as shown in the diagram above, the following situations are possible:
1. 1 and 3
2. 1 and 4
3. 2 and 3 (Cannot happen since a majority partition has the primary node active and must have a copy
of the CRG.)
4. 2 and 4 (Cannot happen since a majority partition has the primary node active and must have a copy
of the CRG.)
A copy of the CRG object is sent to all nodes in the secondary partition. The following actions can result
on the nodes in the secondary partition:
v No action since the secondary node is not in the CRG’s recovery domain.
v A secondary node’s copy of the CRG is updated with the data from the primary partition.
v The CRG object is deleted from a secondary node since the secondary node is no longer in the CRG’s
recovery domain.
v The CRG object is created on the secondary node since the object does not exist. However, the node is
in the recovery domain of the CRG copy that is sent from the primary partition.
merge operation
secondary partition secondary partition
contains copy of CRG does NOT contain copy of CRG contains copy of CRG does NOT contain copy of CRG
(1) (2) (3) (4)
During a secondary-secondary merge as shown in the diagram above, the following situations are
possible:
1. 1 and 3
2. 1 and 4
3. 2 and 3
4. 2 and 4
The node with the most recent change to the CRG is selected to send a copy of the CRG object to all
nodes in the other partition. If multiple nodes are selected because they all appear to have the most recent
change, the recovery domain order is used to select the node. The actions that can occur on the receiving
partition nodes are:
Troubleshooting clusters 7
v No action since the node is not the CRG’s recovery domain.
v The CRG is created on the node since the node is in the recovery domain of the copy of the CRG
object it receives.
v The CRG is deleted from the node since the node is not in the recovery domain of the copy of the CRG
object is receives.
A node from the partition which has a copy of the CRG object is selected to send the object data to all
nodes in the other partition. The CRG object may be created on nodes in the receiving partition if the node
is in the CRG’s recovery domain.
A primary partition can subsequently be partitioned into a primary and secondary partition. If the primary
node fails, CRS detects it as a node failure. The primary partition becomes a secondary partition. The
same result would occur if you ended the primary node that uses the End Cluster Node API. A secondary
partition can become a primary partition if the primary node becomes active in the partition either through
a rejoin or merge operation.
For a merge operation, the exit program is called on all nodes in the CRG’s recovery domain regardless of
which partition the node is in. The same action code as rejoin is used. No roles are changed as a result of
the merge, but the status of the nodes in the CRG’s recovery domain is changed from partition to active.
Once all partitions merge together, the partition condition is cleared, and all CRG API’s can be used.
For more information on cluster jobs, see cluster resource services job structure and user queues. For
more information on the APIs that are used to end and start clustering on a node, see Cluster APIs . If you
are using a business partner cluster management product, refer to the documentation that came with the
product.
If the system cannot identify or reach any other active node, you will need to perform these recovery
steps:
Troubleshooting clusters 9
10 iSeries: Troubleshooting clusters
Printed in U.S.A.