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 » Messages are not appearing on the destination queues.

Post new topic  Reply to topic
 Messages are not appearing on the destination queues. « View previous topic :: View next topic » 
Author Message
jfweemaes
PostPosted: Thu Oct 06, 2005 2:29 pm    Post subject: Messages are not appearing on the destination queues. Reply with quote

Newbie

Joined: 06 Oct 2005
Posts: 6
Location: Montreal

I followed the IBM-Queue Manager Cluster handbook.

Servers:

server1 AIX 5.3ML1 + MQ ver. 530.9 CSD09
server2 AIX 5.3ML1 + MQ ver. 530.9 CSD09

This is what I did:

[mqm@server1] /usr/mqm/bin/crtmqm LONDON
[mqm@server2] /usr/mqm/bin/crtmqm NEWYORK

[root@server1] echo MQSeries1418 1418/tcp >> /etc/services
[root@server2] echo MQSeries1418 1418/tcp >> /etc/services

[root@server1] echo MQSeries1418 stream tcp nowait mqm /usr/mqm/bin/amqcrsta -m LONDON >> /etc/inetd.conf
[root@server2] echo MQSeries1418 stream tcp nowait mqm /usr/mqm/bin/amqcrsta -m NEWYORK >> /etc/inetd.conf

[root@server1] refresh -s inetd
[root@server2] refresh -s inetd

[mqm@server1] /usr/mqm/bin/strmqbrk -m LONDON
[mqm@server2] /usr/mqm/bin/strmqbrk -m NEWYORK

[mqm@server1] /usr/mqm/bin/runmqsc LONDON
[mqm@server2] /usr/mqm/bin/runmqsc NEWYORK

[mqm@server1]
ALTER QMGR REPOS(INVENTORY)
[mqm@server2]
ALTER QMGR REPOS(INVENTORY)

[mqm@server1]
DEFINE CHANNEL(TO.LONDON) CHLTYPE( CLUSRCVR ) TRPTYPE( TCP ) CONNAME('server1(1418)') CLUSTER(INVENTORY)

[mqm@server2]
DEFINE CHANNEL(TO.NEWYORK) CHLTYPE( CLUSRCVR ) TRPTYPE( TCP ) CONNAME('server2(1418)') CLUSTER(INVENTORY)

[mqm@server1]
DEFINE CHANNEL(TO.NEWYORK) CHLTYPE( CLUSSDR ) TRPTYPE( TCP ) CONNAME('server2(1418)') CLUSTER(INVENTORY)

[mqm@server2]
DEFINE CHANNEL(TO.LONDON) CHLTYPE( CLUSSDR ) TRPTYPE( TCP ) CONNAME('server1(1418)') CLUSTER(INVENTORY)

[mqm@server1]
DEFINE QLOCAL(INVENTQ) CLUSTER(INVENTORY)
[mqm@server2]
DEFINE QLOCAL(INVENTQ) CLUSTER(INVENTORY)

[mqm@server1] /usr/mqm/samp/bin/amqsput INVENTQ LONDON
Sample AMQSPUT0 start
target queue is INVENTR
blab...blabla..bla
blebleble...ble

[mqm@server2] usr/mqm/samp/bin/amqsput INVENTQ NEWYORK
Sample AMQSGET0 start
no more messages
Sample AMQSGET0 end

[mqm@server1] /usr/mqm/bin/runmqsc LONDON
[mqm@server2] /usr/mqm/bin/runmqsc NEWYORK

[mqm@server1]

display clusqmgr(*) qmtype status

AMQ8441: Display Cluster Queue Manager details.
CLUSQMGR(LONDON) CLUSTER(INVENTORY)
CHANNEL(TO.LONDON) QMTYPE(REPOS)
STATUS(RUNNING)
AMQ8441: Display Cluster Queue Manager details.
CLUSQMGR(NEWYORK) CLUSTER(INVENTORY)
CHANNEL(TO.NEWYORK) QMTYPE(REPOS)


display chs(*)

AMQ8417: Display Channel Status details.
CHANNEL(TO.NEWYORK) XMITQ(SYSTEM.CLUSTER.TRANSMIT.QUEUE)
CONNAME(server2(1418))
CURRENT CHLTYPE(CLUSSDR)
STATUS(RUNNING) RQMNAME(LONDON)
AMQ8417: Display Channel Status details.
CHANNEL(TO.LONDON) XMITQ( )
CONNAME(**.**.**.**)
CURRENT CHLTYP(CLUSRCVR)
STATUS(RUNNING) RQMNAME(LONDON)


[mqm@server2]

display clusqmgr(*) qmtype status

AMQ8441: Display Cluster Queue Manager details.
CLUSQMGR(NEWYORK) CLUSTER(INVENTORY)
CHANNEL(TO.NEWYORK) QMTYPE(REPOS)
STATUS(RUNNING)
AMQ8441: Display Cluster Queue Manager details.
CLUSQMGR(LONDON) CLUSTER(INVENTORY)
CHANNEL(TO.LONDON) QMTYPE(REPOS)


display chs(*)

AMQ8417: Display Channel Status details.
CHANNEL(TO.LONDON) XMITQ(SYSTEM.CLUSTER.TRANSMIT.QUEUE)
CONNAME(server1(1418))
CURRENT CHLTYPE(CLUSSDR)
STATUS(RUNNING) RQMNAME(LONDON)
AMQ8417: Display Channel Status details.
CHANNEL(TO.NEWYORK) XMITQ( )
CONNAME(**.**.**.**)
CURRENT CHLTYP(CLUSRCVR)
STATUS(RUNNING) RQMNAME(NEWYORK)


[mqm@server1]
refresh cluster(INVENTORY)
AMQ8558: REFRESH CLUSTER accepted.
END

[mqm@server2]
refresh cluster(INVENTORY)
AMQ8558: REFRESH CLUSTER accepted.
END

[mqm@server1] /usr/mqm/samp/bin/amqsput INVENTQ LONDON
Sample AMQSPUT0 start
target queue is INVENTR
dflsdfj894
fawefaef453gtvsvfd
ergrgae5

[mqm@server2] usr/mqm/samp/bin/amqsput INVENTQ NEWYORK
Sample AMQSGET0 start
no more messages
Sample AMQSGET0 end



Conclusion: Messages are not appearing on the destination queues.

Could somebody help me ?


Regards,

Jean-Francois Weemaes
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
wschutz
PostPosted: Thu Oct 06, 2005 2:54 pm    Post subject: Reply with quote

Jedi Knight

Joined: 02 Jun 2005
Posts: 3316
Location: IBM (retired)

So on both machines you have local instances of the queue... Read Chapter 5 in the cluster manual about that.... (answer: in V5, if a local queue exists, it will always be used)

then there's....
Quote:
mqm@server2] usr/mqm/samp/bin/amqsput INVENTQ NEWYORK
Sample AMQSGET0 start
no more messages
Sample AMQSGET0 end
Cut & paste error?
_________________
-wayne
Back to top
View user's profile Send private message Send e-mail AIM Address
fjb_saper
PostPosted: Thu Oct 06, 2005 8:03 pm    Post subject: Reply with quote

Grand High Poobah

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

jfweemaes wrote:
[root@server1] echo MQSeries1418 stream tcp nowait mqm /usr/mqm/bin/amqcrsta -m LONDON >> /etc/inetd.conf
[root@server2] echo MQSeries1418 stream tcp nowait mqm /usr/mqm/bin/amqcrsta -m NEWYORK >> /etc/inetd.conf


Jean Francois, do you know that since 5.3 using runmqlsr is the preferred way over inetd ?

Enjoy
Francois-Joseph
Back to top
View user's profile Send private message Send e-mail
jfweemaes
PostPosted: Fri Oct 07, 2005 6:29 am    Post subject: That's not working when local queues don't exist. Reply with quote

Newbie

Joined: 06 Oct 2005
Posts: 6
Location: Montreal

Thanks wschutz.

I tried to define local queues on one side without doing same on the other side. It's not working at all. If the local queues don't exist on the local queuemanager, I get an error when I try to amqsget on it.

By the way, I want 2 full repository qmgrs.

Regards,

JF

wschutz wrote:
So on both machines you have local instances of the queue... Read Chapter 5 in the cluster manual about that.... (answer: in V5, if a local queue exists, it will always be used)

then there's....
Quote:
mqm@server2] usr/mqm/samp/bin/amqsput INVENTQ NEWYORK
Sample AMQSGET0 start
no more messages
Sample AMQSGET0 end
Cut & paste error?


Yes it is !
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
jfweemaes
PostPosted: Fri Oct 07, 2005 6:35 am    Post subject: Reply with quote

Newbie

Joined: 06 Oct 2005
Posts: 6
Location: Montreal

Thanks Francois-Joseph,

I am following your advice and setting up a call to runmqlsr -m [qmgr] -p 1418 in rc.d.



fjb_saper wrote:
jfweemaes wrote:
[root@server1] echo MQSeries1418 stream tcp nowait mqm /usr/mqm/bin/amqcrsta -m LONDON >> /etc/inetd.conf
[root@server2] echo MQSeries1418 stream tcp nowait mqm /usr/mqm/bin/amqcrsta -m NEWYORK >> /etc/inetd.conf


Jean Francois, do you know that since 5.3 using runmqlsr is the preferred way over inetd ?

Enjoy
Francois-Joseph
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
wschutz
PostPosted: Fri Oct 07, 2005 6:40 am    Post subject: Reply with quote

Jedi Knight

Joined: 02 Jun 2005
Posts: 3316
Location: IBM (retired)

Do this:

1)server1: Delete the local queue definition on LONDON
2)server1: /usr/mqm/samp/bin/amqsput INVENTQ LONDON
3) server2: /usr/mqm/samp/bin/amqsget INVENTQ NEWYORK

You can never get from a queue unless its defined locally.

Whether you use amqcrsta or runmqlsr will not make any difference, thats a performance issue.
_________________
-wayne
Back to top
View user's profile Send private message Send e-mail AIM Address
jfweemaes
PostPosted: Fri Oct 07, 2005 10:28 am    Post subject: That's working ! However, I have to setup a .... Reply with quote

Newbie

Joined: 06 Oct 2005
Posts: 6
Location: Montreal

Thanks wschutz !

That's working ! However, I have to setup a MQ cluster in which we could do amqsget on both servers for a specific queue.




wschutz wrote:
Do this:

1)server1: Delete the local queue definition on LONDON
2)server1: /usr/mqm/samp/bin/amqsput INVENTQ LONDON
3) server2: /usr/mqm/samp/bin/amqsget INVENTQ NEWYORK

You can never get from a queue unless its defined locally.

Whether you use amqcrsta or runmqlsr will not make any difference, thats a performance issue.
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
wschutz
PostPosted: Fri Oct 07, 2005 11:02 am    Post subject: Reply with quote

Jedi Knight

Joined: 02 Jun 2005
Posts: 3316
Location: IBM (retired)

Do you want WAS Node 1 to connect to both queue mgrs or to connect to one qmgr and use clustering to round-robin the messages between the two queue managers?
_________________
-wayne
Back to top
View user's profile Send private message Send e-mail AIM Address
jfweemaes
PostPosted: Fri Oct 07, 2005 11:23 am    Post subject: Reply with quote

Newbie

Joined: 06 Oct 2005
Posts: 6
Location: Montreal

Hello wschutz

I want that both WAS servers connect to both Qmgrs. Because we are still using WebSphere 5.1.1.5, I have to build the JMS workload at the application level instead than server level.

However, the two qmgrs ought to be able to get and put messages in the entire cluster. In other words, both of them have to be full repository of the cluster.

Regards,

Jean-Francois Weemaes


wschutz wrote:
Do you want WAS Node 1 to connect to both queue mgrs or to connect to one qmgr and use clustering to round-robin the messages between the two queue managers?
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
jefflowrey
PostPosted: Fri Oct 07, 2005 5:31 pm    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

jfweemaes wrote:
I want that both WAS servers connect to both Qmgrs. Because we are still using WebSphere 5.1.1.5, I have to build the JMS workload at the application level instead than server level.

Probably not.

jfweemaes wrote:
However, the two qmgrs ought to be able to get and put messages in the entire cluster. In other words, both of them have to be full repository of the cluster.

The two are unreleated.

Any qmgr in a cluster, regardless of it's repository status, can put messages to every queue that is shared in the cluster.

No MQ Application, in any environment, regardless of whether the qmgr is a full repository or not, can get from a queue that is not a qlocal on the qmgr the application is connected to.

If you want to ensure that every message that your applications GET are fully load balanced, and that every message that your applications PUT are fully load balanced, then you should create a queue manager for queues you are GETing from and a SEPARATE queue manager that you are PUTting to. The PUT qmgr or qmgrs will have no local queues on them at all.

This means your application will need to connect to more than one queue manager. This may be a difficulty. You should consider how much of a difficulty, and decide how that compares to your requirement that ever put and get be load balanced.

You *may* be able to get full load balancing if you put to qaliases, that point to qclusters, rather than directly putting to qclusters - and thus avoid use of separate qmgrs. But this will take a little more sophistication on the part of your mq administration/network design.

Also, if you upgrade everything to v6, you don't need to worry about any of this - as the workload algorithms are different and more tunable.

The version of WAS that you are using is mostly unimportant for this question. It is probably unsupported to use MQ v6 with WAS 5.x, though.
_________________
I am *not* the model of the modern major general.
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 » Messages are not appearing on the destination queues.
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.