Establishing communication in a cluster

To establish communication between queue managers in a cluster, configure a link using one of the supported communication protocols. The supported protocols are TCP or LU 6.2 on any platform, and NetBIOS or SPX on Windows systems. Configuring communication links is described in detail in WebSphere MQ Intercommunication. As part of this configuration, you also need channel initiators and channel listeners just as you do with distributed queuing.

Channel initiator

All cluster queue managers need a channel initiator to monitor the system-defined initiation queue SYSTEM.CHANNEL.INITQ. This is the initiation queue for all transmission queues including the cluster transmission queue.

WebSphere MQ for z/OS
There is one channel initiator for each queue manager and it runs as a separate address space. You start it using the MQSC START CHINIT command, which you issue as part of your queue manager startup.
Platforms other than z/OS
When you start a queue manager, a channel initiator is automatically started if the queue manager attribute SCHINIT is set to QMGR. Otherwise it can be started using the MQSC START CHINIT command or the runmqchi control command.

Channel listener

Run a channel listener program on each queue manager. A channel listener program 'listens' for incoming network requests and starts the appropriate receiver channel when it is needed.

The implementation of channel listeners is platform specific, however there are some common features. On all WebSphere MQ platforms, the listener may be started using the MQSC command START LISTENER. On WebSphere MQ for iSeries, Windows systems and UNIX systems, you can make the listener start automatically with the queue manager by setting the CONTROL attribute of the LISTENER object to QMGR or STARTONLY. Platform-specific details follow:

WebSphere MQ for z/OS
Use the channel listener program provided by WebSphere MQ. To start a WebSphere MQ channel listener, use the MQSC command START LISTENER, which you issue as part of your channel initiator startup. For example:
START LISTENER PORT(1414) TRPTYPE(TCP)
or
START LISTENER LUNAME(LONDON.LUNAME) TRPTYPE(LU62)

As well as a listener for each queue manager, members of a queue-sharing group can make use of a shared listener. Do not use shared listeners in conjunction with clusters. If you do, queue managers might receive messages pertaining to queues for which they do not have a CLUSRCVR definition.

WebSphere MQ for iSeries
Use the channel listener program provided by WebSphere MQ. To start a WebSphere MQ channel listener use the CL command STRMQMLSR. For example:
STRMQMLSR MQMNAME(QM1) PORT(1414)
WebSphere MQ for Windows
Use either the channel listener program provided by WebSphere MQ, or the facilities provided by the operating system.

To start the WebSphere MQ channel listener use the RUNMQLSR command. For example:

RUNMQLSR -t tcp -p 1414 -m QM1

WebSphere MQ on UNIX systems
Use either the channel listener program provided by WebSphere MQ, or the facilities provided by the operating system (for example, inetd for TCP communications).

To start the WebSphere MQ channel listener use the runmqlsr command. For example:

runmqlsr -t tcp -p 1414 -m QM1

To use inetd to start channels, configure two files:

  1. Edit the file /etc/services. (To do this you must be logged in as a superuser or root.) If you do not have the following line in that file, add it as shown:
      MQSeries       1414/tcp      # Websphere MQ channel listener
    where 1414 is the port number required by WebSphere MQ. You can change this, but it must match the port number specified at the sending end.
  2. Edit the file /etc/inetd.conf. If you do not have the following line in that file, add it as shown:

    For AIX:

      MQSeries stream tcp nowait mqm /usr/mqm/bin/amqcrsta amqcrsta
      -m queue.manager.name

    For Compaq Tru64 UNIX , HP-UX, Solaris and Linux:

      MQSeries stream tcp nowait mqm /opt/mqm/bin/amqcrsta amqcrsta
      -m queue.manager.name

The updates become active after inetd has reread the configuration files. Issue the following commands from the root user ID:

On AIX:

      refresh -s inetd

On HP-UX:

       inetd -c

On Compaq Tru64 UNIX, Solaris or Linux:

  1. Find the process ID of the inetd with the command:
      ps -ef | grep inetd
  2. Run the command:
      kill -1 inetd processid
MQSeries for Compaq NonStop Kernel
Use either the channel listener program provided by MQSeries (runmqlsr), or the PATHCOM command.

To start the channel listener using the runmqlsr command, use a command of the form:

runmqlsr -t tcp -p 1414 -m QM1

For more information, see MQSeries for Compaq NonStop Kernel System Administration.

To start the channel listener using PATHCOM, use a command of the form:

START SERVER MQS-TCPLISxx
MQSeries for Compaq OpenVMS Alpha
For information on setting up communications, see WebSphere MQ Intercommunication.