Suspend and resume a queue manager from a cluster to perform maintenance.
About this task
From time to time, you might need to perform maintenance on a queue manager that is part of a cluster. For example, you might need to take backups of the data in its queues, or apply fixes to the software. If the queue manager hosts any queues, its activities must be suspended. When the maintenance is complete, its activities can be resumed.
Procedure
-
Suspend a queue manager, by issuing the
SUSPEND QMGR
runmqsc command:
SUSPEND QMGR CLUSTER(clusterName)
Where clusterName specifies the name of the cluster.
The SUSPEND
runmqsc command notifies the queue managers in the cluster that this queue
manager has been suspended.
The purpose of the SUSPEND QMGR command is only to advise other queue managers
to avoid sending messages to this queue manager if possible. It does not mean that the queue manager
is disabled. Some messages that have to be handled by this queue manager are still sent to it, for
example when this queue manager is the only host of a clustered queue.
While the queue manager is suspended the workload management routines avoid sending messages to
it. Messages that have to be handled by that queue manager include messages sent by the local queue
manager.
IBM® MQ uses a workload balancing algorithm to
determine which destinations are suitable, rather than selecting the local queue manager whenever
possible.
-
Enforce the suspension of a queue manager by using the FORCE option on the
SUSPEND QMGR command:
SUSPEND QMGR CLUSTER(clusterName) MODE(FORCE)
Where clusterName specifies the name of the cluster.
MODE(FORCE) forcibly stops all inbound channels from other queue managers in the
cluster. If you do not specify MODE(FORCE), the default
MODE(QUIESCE) applies.
- Check that no messages are sent to the queue manager.
You must close any application that continues to send messages to this queue manager. The cluster
workload algorithm might choose the suspended queue manager. If there are no other valid
destinations, or if an application has an affinity with the queue manager, it might select the queue
manager.
- Do whatever maintenance tasks are necessary.
-
Resume the queue manager by issuing the
RESUME QMGR
runmqsc command:
RESUME QMGR CLUSTER(clusterName)
Where clusterName specifies the name of the cluster.
Results
The RESUME runmqsc command notifies the full repositories that the queue manager is available again. The full repository queue managers disseminate this information to other queue managers that have requested updates to information concerning this queue manager.