Author |
Message
|
vjsony |
Posted: Sun Aug 26, 2001 4:55 am Post subject: |
|
|
 Apprentice
Joined: 01 Aug 2001 Posts: 45
|
Hi,
I would like to know if there's any way of starting channels automatically in Solaris.
I know that one way is to trigger the channels. I've done that on Windows NT. In windows NT, the channel initiator can be made to start automatically when the queue manager starts.
Is there any way of doing starting the channel initiator automatically when the qmanager starts in Solaris?
Is there any other way of autostarting the channels in Solaris?
Thanks in advance
VJ. |
|
Back to top |
|
 |
royr |
Posted: Sun Aug 26, 2001 5:32 am Post subject: |
|
|
 Acolyte
Joined: 30 Jun 2001 Posts: 65 Location: Israel
|
The standard way is to start the channel initiator right after the strmqm command in the system's inittab and then to trigger the channels. The command 'runmqchi' starts the channel initiator.
In MQ 5.2 there's a new switch (in qm.ini, I think) that starts runmqchi automatically when the queue manager starts.
|
|
Back to top |
|
 |
bduncan |
Posted: Mon Aug 27, 2001 12:30 pm Post subject: |
|
|
Padawan
Joined: 11 Apr 2001 Posts: 1554 Location: Silicon Valley
|
Yes, in version 5.2 for solaris, a single channel initiator instance is started on the SYSTEM.CHANNEL.INITQ when the queue manager starts by default. This way, when you create a transmit queue set the following:
INITQ(SYSTEM.CHANNEL.INITQ) +
TRIGDATA(CHANNELNAME) +
TRIGGER
Where CHANNELNAME is the name of the channel that you want to start. This way, you don't have to create a PROCESS definition to start "runmqchl"
_________________ Brandon Duncan
IBM Certified MQSeries Specialist
MQSeries.net forum moderator |
|
Back to top |
|
 |
emileke |
Posted: Tue Aug 28, 2001 12:44 am Post subject: |
|
|
Centurion
Joined: 19 Aug 2001 Posts: 110 Location: South Africa
|
If you want to start channels at QMGR start, add it to your startup script.
If you want to start the channel when something has to go via the channel, trigger the transmission queue.
Change the current XMITQ and add the following parameters:
TRIGDATA(Sender Channel name)
TRIGGER(YES)
TRIGTYPE(FIRST)
INITQ(SYSTEM.CHANNEL.INITQ)
|
|
Back to top |
|
 |
bduncan |
Posted: Tue Aug 28, 2001 8:06 am Post subject: |
|
|
Padawan
Joined: 11 Apr 2001 Posts: 1554 Location: Silicon Valley
|
emileke,
This is what I specified in the post above. However, your definition will not work because the trigger parameter is either TRIGGER or NOTRIGGER. It is not defined as TRIGGER(YES) or TRIGGER(NO). Your definition does include the TRIGTYPE which I neglected to put, however it defaults to FIRST, so normally you don't need to specify it.
_________________ Brandon Duncan
IBM Certified MQSeries Specialist
MQSeries.net forum moderator |
|
Back to top |
|
 |
crojas |
Posted: Mon Apr 01, 2002 6:17 pm Post subject: |
|
|
Apprentice
Joined: 10 Mar 2002 Posts: 28
|
But if i use the inittab, what happen when i reboot the system?
|
|
Back to top |
|
 |
dgolding |
Posted: Mon Apr 01, 2002 11:16 pm Post subject: |
|
|
 Yatiri
Joined: 16 May 2001 Posts: 668 Location: Switzerland
|
You don't need to start your channel initiator as normally the queue manager(5.1 and above) will start it automagically. So if your queue manager is being started on reboot then the channel initiator will also start. As soon as a message arrives on a transmit queue (if it's set up as triggering as described before) the channel will start.
If you want channels started up anyway then put a "runmqchl" command in your queue manager startup script.
I'm not too sure if "inittab" is the appropriate place to put a queue manager startup. This is usually used for setting up dump terminal line speeds and the like. Also, you wouldn't want to start up your queue manager before you had mounted the disk it lives on, or before TCP/IP was started.
More usually, a script in the /etc/init.d directory should do the trick, and/or in the rc2.d directory. This is the standard Unix startup method: it uses a naming structure S99Name where S is for startup, 99 is a (2 digit) number to control the order things are started, and Name is a descriptive name. There is also a K 99Name to kill the sub-system.
This is a bit more involved than that, what with run-levels and files that are actually just links to other files.
Stick a file called "S99mqm" in your "rc2.d" directory containing the command "strmqm". On reboot this script will be executed and it will start your default queue manager up. That's as simple as it can get.
[ This Message was edited by: on 2002-04-01 23:22 ] |
|
Back to top |
|
 |
|