A channel initiator is needed to start a communication
channel when there is a message to deliver. A channel listener waits
to start the other end of a channel to receive the message.
Before you begin
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.
As part of this configuration, you also need channel initiators and
channel listeners just as you do with distributed queuing.
About this task
All cluster queue managers need a channel initiator to
monitor the system-defined initiation queue SYSTEM.CHANNEL.INITQ
. SYSTEM.CHANNEL.INITQ
is
the initiation queue for all transmission queues including the cluster
transmission queue.
Each queue manager must have a channel
listener. A channel listener program waits 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 can
be started using the START LISTENER
command. On WebSphere MQ for IBM® i, Windows, UNIX and Linux® systems, you
can start the listener automatically at the same time as the queue
manager. To start the listener automatically, set the CONTROL attribute
of the LISTENER object to QMGR or STARTONLY.
Procedure
- Start the channel initiator.
- IBM WebSphere MQ for Windows, UNIX and Linux systems
- When you start a queue manager, if the queue manager attribute SCHINIT is
set to QMGR, a channel initiator is automatically
started. Otherwise it can be started using the runmqsc
START
CHINIT
command or the runmqchi control
command.
- Start the channel listener.
- IBM 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
- IBM WebSphere MQ on UNIX and Linux 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:
- Edit the file /etc/services. You must be
logged in as a superuser or root. If the following line is not in
the file, add it as shown:
MQSeries 1414/tcp # Websphere MQ channel listener
where 1414
is the port number required
by IBM WebSphere MQ. You can
change the port number, but it must match the port number specified
at the sending end.
- Edit the file /etc/inetd.conf. If you do
not have the following line in that file, add it as shown:
MQSeries stream tcp nowait mqm MQ_INSTALLATION_PATH
/bin/amqcrsta amqcrsta
-m queue.manager.name
where
MQ_INSTALLATION_PATH
is replaced
by the high-level directory in which WebSphere MQ is installed.
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 Solaris or
Linux:
- Find the process ID of the inetd with the command:
ps -ef | grep inetd
- Run the appropriate command, as follows:
- For Solaris 9 and Linux:
kill -1 inetd processid
- For Solaris 10, or later versions:
inetconv