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 » Simple cluster setup , but not working.

Post new topic  Reply to topic
 Simple cluster setup , but not working. « View previous topic :: View next topic » 
Author Message
iceage
PostPosted: Thu Jun 28, 2012 11:18 am    Post subject: Simple cluster setup , but not working. Reply with quote

Acolyte

Joined: 12 Apr 2006
Posts: 68

I have simple MQ setup but it is not working , tried out various combinations with no avail. Its beats me that either i am misreading queue name resolution or doing something basically wrong. Please advise.

Code:


QM1 , QM2 are connected using SDR , RCVR.
QM2 & QM3 , QM4 are connected via a cluster - ONE.

on QM1 , DEF QR(QR1) RNAME(QA1) RQMNAME(QM2) XMITQ(QM2).

on QM2 , DEF QA(QA1) TARGQ(CLUSTER.QUEUE)

on QM3,QM4 , DEF QA(CLUSTER.QUEUE) TARGQ(LOCAQ) CLUSTER(ONE)


Now put from QM2 on QA1 works fine. (Validates cluster setup and QA1 defintion).

But put from QM1 , fails on QM2 with 2082. Unknown alias base queue. as if its trying to locally resolve for the CLUSTER.QUEUE.

Tried by altering QM1 defns to , DEF QR(QR1) RNAME(CLUSTER.QUEUE) RQMNAME(QM2) XMITQ(QM2).

Now getting 2085 on QM2.

Few questions

1) What i am trying to acheive is even feasible ? After debugging this thing for 4 hours , i have to doubt myself if its the correct thing to do .

2) Next , do you see any issues with my setup.

Thanks.
Back to top
View user's profile Send private message
iceage
PostPosted: Thu Jun 28, 2012 12:25 pm    Post subject: Reply with quote

Acolyte

Joined: 12 Apr 2006
Posts: 68

After a coffee break , i am able to get ti work ..

To make it work

Code:
QM1 , QM2 are connected using SDR , RCVR.
QM2 & QM3 , QM4 are connected via a cluster - ONE.

on QM1 , DEF QR(QR1) RNAME(QA1) RQMNAME(QMX) XMITQ(QM2).
on QM3,QM4 , DEF QR(QMX) CLUSTER(ONE)
on QM3,QM4 , DEF QA(QA1) TARGQ(LOCAL.QUEUE).



I am sure this is one of the ways to get it work and now i my inference of this situation is .. Queue name resolution looks outside of queue manager if and only
1) if queue its resolving to is a local remote queue
2) if qmgr object that is not local.

Is that a fair assessment ?
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu Jun 28, 2012 1:55 pm    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9469
Location: US: west coast, almost. Otherwise, enroute.

Among other things, Cluster sender and cluster receiver channels are required.

Search here and IBM InfoCenter for how to set up a cluster.
_________________
I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu Jun 28, 2012 3:02 pm    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9469
Location: US: west coast, almost. Otherwise, enroute.

iceage wrote:
Queue name resolution looks outside of queue manager if and only
1) if queue its resolving to is a local remote queue
2) if qmgr object that is not local.

Is that a fair assessment ?

No.

Refer to the WMQ Intercommunications manual (or equivalent InfoCenter) for discussion of name resolution.

Refer to the WMQ Queue Manager Clusters manual (or equivalent InfoCenter) for the bible on clusters.
_________________
I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri Jun 29, 2012 1:54 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

In the non-working case, your first QREMOTE sets an RQMNAME. This sticks with the message until it is modified somewhere else by another QREMOTE.

You fix this in your working case, but I don't think you understand why or what you're really doing.

In your working case, you have
Code:
on QM3,QM4 , DEF QR(QMX) CLUSTER(ONE)

This coincidentally has RQMNAME(''), which blanks out the queue manager name that is used. This is what makes it work.

It also shares the QREMOTE in the cluster named "ONE". You don't need to share this in the cluster named ONE...

Name Resolution is handled entirely based on one of two things. {Queue, Queue Manager} or {Topic}. When an app does an MQPUT, it specifies an Object Queue and Object Queue Manager (or a topic...). These values are then resolved at the connected queue manager, which lead to the message either being put to a local queue or an xmitq. Once the message is on an xmitq, it carries the resolved versions of the {Queue, Queue Manager}. These are then re-resolved when the message is received at the other end of the channel that is processing the xmitq.
Back to top
View user's profile Send private message
iceage
PostPosted: Mon Jul 02, 2012 10:35 am    Post subject: Reply with quote

Acolyte

Joined: 12 Apr 2006
Posts: 68

Quote:
You fix this in your working case, but I don't think you understand why or what you're really doing.

In your working case, you have Code:
on QM3,QM4 , DEF QR(QMX) CLUSTER(ONE)

This coincidentally has RQMNAME(''), which blanks out the queue manager name that is used. This is what makes it work.


Yes i do intentionally defined that defintion to make it a qmgr alias and understand implications of it.

Quote:
It also shares the QREMOTE in the cluster named "ONE". You don't need to share this in the cluster named ONE...


Reason for making it as part of cluster , so i wouldn't require defintion on QM2/ that acts as a gateway to put outside of cluster.

Regarding name resolution , yes understood. This statement from yours is what i was missing. I thought we can resolove outside of qmgr by defining a qmgr alias on QM2 like (DEF QR(QM2) RQMNAME(' '))

Quote:
In the non-working case, your first QREMOTE sets an RQMNAME. This sticks with the message until it is modified somewhere else by another QREMOTE.


Thanks for your help
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » Clustering » Simple cluster setup , but not working.
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.