ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » Clustering » Connecting to a cluster through a gateway

Post new topic  Reply to topic Goto page Previous  1, 2, 3  Next
 Connecting to a cluster through a gateway « View previous topic :: View next topic » 
Author Message
exerk
PostPosted: Wed May 28, 2008 6:53 am    Post subject: Reply with quote

Jedi Council

Joined: 02 Nov 2006
Posts: 6339

Nothing that I can see.

I prototyped this some time back including a multi-hop, e.g. qmgr1 -> qmgr2 -> gateway -> cluster. I've gone back over my definitions and can see no mistake in yours. My definitions were:

SOURCE

DEFINE QREMOTE ('EX1') RNAME('EX1') RQMNAME('ANY.QMGR') XMITQ('GATEWAY') REPLACE

GATEWAY

DEFINE QREMOTE ('ANY.QMGR') REPLACE (note:not shared in cluster)

I also quickly rebuilt it and tested only the qmgr2 -> gateway -> cluster element, and it worked fine.
_________________
It's puzzling, I don't think I've ever seen anything quite like this before...and it's hard to soar like an eagle when you're surrounded by turkeys.
Back to top
View user's profile Send private message
mquser925
PostPosted: Thu May 29, 2008 6:25 am    Post subject: Reply with quote

Acolyte

Joined: 22 Apr 2008
Posts: 61

So thanks to exerk I found out in v6.0 there is no need for a gateway as long as I alter the queue managers and queues with clwluseq(any) then the messages should distribute throughout the cluster. When I put a message to the qm in the cluster, all the messages are put on the one cluster. Should this setup work or if I specify a remote queue manager will the message be put only on that queue manager? Should the rcvr channel (source.to.qm1) be defined as a cluster queue? If it is not defined to the cluster, do I need an alias to point from the rcvr channel to the cluster channel?

Code:

#mq script
crtmqm -u SYSTEM.DEAD.LETTER.QUEUE SOURCE
strmqm SOURCE
runmqsc SOURCE << EOF
DEFINE QLOCAL(QM1) USAGE(XMITQ)
DEFINE CHANNEL ('SOURCE.TO.QM1') CHLTYPE(SDR) CONNAME('xx.xxx.x.15(2188)') XMITQ('QM1') TRPTYPE(TCP)
DEFINE QREMOTE(1.Q) RNAME(1.Q) RQMNAME(QM1) XMITQ(QM1)
START CHANNEL ('SOURCE.TO.QM1')
EOF


Code:

#mq script
crtmqm -u SYSTEM.DEAD.LETTER.QUEUE QM1
strmqm QM1
runmqsc QM1 << EOF
 ALTER QMGR REPOS('DEMO') CLWLUSEQ(ANY)
 DEFINE CHANNEL ('SOURCE.TO.QM1') CHLTYPE(RCVR) TRPTYPE(TCP)
 DEFINE CHANNEL(TO.QM1) CHLTYPE(CLUSRCVR) TRPTYPE(TCP) CONNAME('xx.xxx.x.15(2188)') CLUSTER('DEMO') DESCR('TCP Cluster-receiver channel for queue manager QM1') REPLACE
 DEFINE CHANNEL(TO.QM2) CHLTYPE(CLUSSDR) TRPTYPE(TCP) CONNAME('xx.xxx.x.15(2189)') CLUSTER('DEMO') DESCR('TCP Cluster-sender channel from QM1 to repository at QM2') REPLACE
 DEFINE QLOCAL(1.Q) CLUSTER('DEMO') PROCESS (QM1.PROCESS) DEFPSIST(YES) INITQ(QM1.INIT.QUEUE) TRIGGER TRIGTYPE(EVERY) CLWLUSEQ(ANY) REPLACE
 DEFINE QLOCAL(QM1.INIT.QUEUE) GET(ENABLED)
 DEFINE PROCESS(QM1.PROCESS) APPLTYPE(UNIX) APPLICID('java helloworld')
 DEFINE LISTENER (QM1.LISTENER) TRPTYPE(TCP) CONTROL(QMGR) PORT(2188)
 START LISTENER(QM1.LISTENER)
EOF
runmqtrm -m QM1 -q QM1.INIT.QUEUE &


Code:

#mq script
crtmqm -u SYSTEM.DEAD.LETTER.QUEUE QM2
strmqm QM2
runmqsc QM2 << EOF
 ALTER QMGR REPOS('DEMO') CLWLUSEQ(ANY)
 DEFINE CHANNEL(TO.QM2) CHLTYPE(CLUSRCVR) TRPTYPE(TCP) CONNAME('xx.xxx.x.15(2189)') CLUSTER('DEMO') DESCR('TCP Cluster-receiver channel for queue manager QM2') REPLACE
 DEFINE CHANNEL(TO.QM1) CHLTYPE(CLUSSDR) TRPTYPE(TCP) CONNAME('xx.xxx.x.15(2188)') CLUSTER('DEMO') DESCR('TCP Cluster-sender channel from QM2 to repository at QM1') REPLACE
 DEFINE QLOCAL(1.Q) CLUSTER('DEMO') PROCESS (QM2.PROCESS) DEFPSIST(YES) INITQ(QM2.INIT.QUEUE) TRIGGER TRIGTYPE(EVERY) CLWLUSEQ(ANY) REPLACE
 DEFINE QLOCAL(QM2.INIT.QUEUE) GET(ENABLED)
 DEFINE PROCESS(QM2.PROCESS) APPLTYPE(UNIX) APPLICID('java helloworld')
 DEFINE LISTENER (QM2.LISTENER) TRPTYPE(TCP) CONTROL(QMGR) PORT(2189)
 START LISTENER(QM2.LISTENER)
EOF
runmqtrm -m QM2 -q QM2.INIT.QUEUE &
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Thu May 29, 2008 1:29 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

The cluster manual has the answer to your questions

It also addresses the case where you access the cluster from a non clustered qmgr.

Enjoy
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
tommq
PostPosted: Thu Jun 05, 2008 2:39 am    Post subject: Reply with quote

Novice

Joined: 18 Jul 2007
Posts: 20

in gateway QM change Alias q properties > click Cluster > change Default bind type to notfixed then again place message it will move to your destination.
Back to top
View user's profile Send private message
sami.stormrage
PostPosted: Tue Jul 08, 2008 1:17 pm    Post subject: Reply with quote

Disciple

Joined: 25 Jun 2008
Posts: 186
Location: Bangalore/Singapore

Yep u have the definations wrong..

Define a Qremote on Source Qmr:
with RQMName(GATEWAY) RQname(AliasTo.1.Q) ..

Define a clusterQ alias on Gateway Qmgr:
Define QAlias(AliasTo.1.Q) cluster(DEMO) Defbind(NOTFIXED) TARGQ(1.Q)

change ur binds to notfixed on QM1 and QM2 aswell.. And enjoy.. this should work.. or I am goin to shave my head off..

exeption being.. 2082.. due to clustering issues which am currently facing.. ...had altered the GATEWAY Qmgr as a Repos...
_________________
*forgetting everything *
Back to top
View user's profile Send private message Yahoo Messenger
sami.stormrage
PostPosted: Tue Jul 08, 2008 1:23 pm    Post subject: Reply with quote

Disciple

Joined: 25 Jun 2008
Posts: 186
Location: Bangalore/Singapore

Code:

DEFINE QREMOTE(ANY.CLUSTER) RNAME(' ') RQMNAME(' ')

what sort of defination is that without having a ClusterQ defined anywhere .. how do u expect the call to resolve at the first place?
_________________
*forgetting everything *
Back to top
View user's profile Send private message Yahoo Messenger
PeterPotkay
PostPosted: Tue Jul 08, 2008 1:38 pm    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

sami.stormrage wrote:
Code:

DEFINE QREMOTE(ANY.CLUSTER) RNAME(' ') RQMNAME(' ')

what sort of defination is that without having a ClusterQ defined anywhere .. how do u expect the call to resolve at the first place?

Its a perfectly valid definition. Any message arriving on the QM with this definition with ANY.CLUSTER in the destination QM field will be changed to have nothing for the destination QM, meaning the message will be free to round robin in the cluster.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
exerk
PostPosted: Tue Jul 08, 2008 1:44 pm    Post subject: Reply with quote

Jedi Council

Joined: 02 Nov 2006
Posts: 6339

OK, I'm trying to remember what went before, without re-reading the whole thread...

Basics (and some of these may already be done):

1. Define a SDR from SOURCE, the queue manager outside the cluster, to the queue manager inside the cluster you have designated as a gateway (QM1 or QM2) - don't forget to define a RCVR on that queue manager - and an XMITQ of the same name as the gateway queue manager (QM1 or QM2).

2. Define a QR in SOURCE with an RNAME of 1.Q (the cluster queue you are trying to get to) an RQMNAME of ANY.CLUSTER, and the XMITQ should be that of the gateway queue manager (as at step 1.).

3. Define a QR in the gateway queue manager with the name ANY.CLUSTER and leave all other attributes blank.

4. Put a message to the QR defined in step 2. above.

5. See what happens.

sami.stormrage wrote:
what sort of defination is that without having a ClusterQ defined anywhere .. how do u expect the call to resolve at the first place?


Because it is a cluster queue manager alias, and should resolve to queue 1.Q which is defined in the cluster - so long as the chain of definitions is correct.

One day, just one day I may beat Mr. PotKay to the punch!
_________________
It's puzzling, I don't think I've ever seen anything quite like this before...and it's hard to soar like an eagle when you're surrounded by turkeys.
Back to top
View user's profile Send private message
sami.stormrage
PostPosted: Tue Jul 08, 2008 2:06 pm    Post subject: Reply with quote

Disciple

Joined: 25 Jun 2008
Posts: 186
Location: Bangalore/Singapore

think.. I should brush-up my knowledge on QmgrAliases before replying back.. and testing this scenerio...
_________________
*forgetting everything *
Back to top
View user's profile Send private message Yahoo Messenger
fjb_saper
PostPosted: Tue Jul 08, 2008 2:44 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

And think about the reply:
on the gateway
Define qr(destqmgroutsidecluster) cluster(mycluster) rqmname(destqmgroutsidecluster) rname('') xmitq(to.destqmgroutsidecluster) defbind (notfixed)
and of course the corresponding channel.

This should allow you to get a reply there from anywhere in the cluster.

Enjoy
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
sami.stormrage
PostPosted: Sat Jul 12, 2008 10:24 am    Post subject: Reply with quote

Disciple

Joined: 25 Jun 2008
Posts: 186
Location: Bangalore/Singapore

EXERK:

Ur Qmgr aliasing doesn't work.. messages end up on the transmission Q to GATEWAY...
_________________
*forgetting everything *
Back to top
View user's profile Send private message Yahoo Messenger
sami.stormrage
PostPosted: Sat Jul 12, 2008 10:36 am    Post subject: Reply with quote

Disciple

Joined: 25 Jun 2008
Posts: 186
Location: Bangalore/Singapore

@quser925:

The Alias defination on GATEWAY Qmgr should work. And messages should be destributed evenly even though there is no channel to QM2, from GATEWAY Qmgr.

My setup stopped complaining of 2082 error after I restarted my PC..
_________________
*forgetting everything *
Back to top
View user's profile Send private message Yahoo Messenger
exerk
PostPosted: Sat Jul 12, 2008 11:24 am    Post subject: Reply with quote

Jedi Council

Joined: 02 Nov 2006
Posts: 6339

sami.stormrage wrote:
EXERK:

Ur Qmgr aliasing doesn't work.. messages end up on the transmission Q to GATEWAY...


I beg to differ...the messages should end up on the XMITQ to GATEWAY, then be transmitted to GATEWAY and sprayed across the cluster.

ANY.CLUSTER is a cluster queue manager alias, not a queue manager alias.
_________________
It's puzzling, I don't think I've ever seen anything quite like this before...and it's hard to soar like an eagle when you're surrounded by turkeys.
Back to top
View user's profile Send private message
crossland
PostPosted: Wed Nov 19, 2008 7:43 am    Post subject: Reply with quote

Master

Joined: 26 Jun 2001
Posts: 248

To fix a 2082 for an alias queue on a gateway queue manager, you need to specify DEFBIND(NOTFIXED).

Tim

http://www.inspirotechnic.com
Back to top
View user's profile Send private message
Vitor
PostPosted: Wed Nov 19, 2008 7:44 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

crossland wrote:
To fix a 2082 for an alias queue on a gateway queue manager, you need to specify DEFBIND(NOTFIXED).


As this thread hasn't been updated since the 12th July, I suspect the poster either knows this or has given up & is pursuing a career growing roses.....
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page Previous  1, 2, 3  Next Page 2 of 3

MQSeries.net Forum Index » Clustering » Connecting to a cluster through a gateway
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.