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 » Workload balancing not working

Post new topic  Reply to topic
 Workload balancing not working « View previous topic :: View next topic » 
Author Message
sfari
PostPosted: Fri Aug 12, 2005 6:46 am    Post subject: Workload balancing not working Reply with quote

Centurion

Joined: 15 Apr 2003
Posts: 144

Hi,

I have a cluster with three queue managers. One on Sun Solaris "SUN" and two on z/OS "ZOS1" and "ZOS2". On both of the z/OS QMs I have defined a local cluster queue "Q.TEST" with attribute DEFBIND(NOTFIXED).

Now when I am putting messages on the Sun Solaris Server using /opt/mqm/samp/bin/amqsput Q.TEST all messages always go to ZOS1.

Similar other setups are working. Any idea what could be wrong here?

Thanks
Silvano
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Fri Aug 12, 2005 7:10 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

DEFBIND is merely a suggestion. It is up to the application to use it or not use it, the application has full and exclusive control over where it uses MQOO_BIND_ON_OPEN or MQOO_BIND_NOT_FIXED, or use MQOO_BIND_AS_Q_DEF.

So if all the messages are going to one queue manager, then the application is most likely using MQOO_BIND_ON_OPEN.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
happyj
PostPosted: Fri Aug 12, 2005 7:14 am    Post subject: Reply with quote

Voyager

Joined: 07 Feb 2005
Posts: 87

Have you suspended ZOS2 from the cluster ?
Is the channel TO.ZOS2 running ?
Back to top
View user's profile Send private message
hopsala
PostPosted: Sat Aug 13, 2005 2:38 am    Post subject: Reply with quote

Guardian

Joined: 24 Sep 2004
Posts: 960

Also try such commands as "DISPLAY QCLUSTER(*)" and other cluster commands to see if the cluster qs have been published to your qm. If not, try refreshing the cluster - see Clusters manual.
Look at error logs on all machines, possibly the cluster is not set up properly.
Back to top
View user's profile Send private message
sfari
PostPosted: Sun Aug 14, 2005 10:33 pm    Post subject: Reply with quote

Centurion

Joined: 15 Apr 2003
Posts: 144

Thanks for the answers. The sample application does use the MQOO_BIND_NOT_FIXED. I can see that on other similar environments where messages are spred between the cluster queues. The channels are running and dis qcluster(*) shows all the expected queues and no errors are logged.

I made an other test, changed Put allowed to inhibit and it happend that all messages went to ZOS2 as expected. But as soon as on both queues put is allowed messages go always to ZOS1.
Back to top
View user's profile Send private message
Nigelg
PostPosted: Mon Aug 15, 2005 12:12 am    Post subject: Reply with quote

Grand Master

Joined: 02 Aug 2004
Posts: 1046

One possible cause of this is that ZOS2 has been suspended from the cluster. Issue the command RESUME QMGR CLUSTER(CLUSNAME) or the zOS equivalent.
_________________
MQSeries.net helps those who help themselves..
Back to top
View user's profile Send private message
sfari
PostPosted: Mon Aug 15, 2005 1:32 am    Post subject: Reply with quote

Centurion

Joined: 15 Apr 2003
Posts: 144

As I mentioned putting on ZOS2 is possible as soon as ZOS1 is not available (eg. put inhibit). Thus ZOS2 is not suspended but strange is that no messages will be sent to it as soon as also ZOS1 is available.
Back to top
View user's profile Send private message
KeeferG
PostPosted: Mon Aug 15, 2005 3:25 am    Post subject: Reply with quote

Master

Joined: 15 Oct 2004
Posts: 215
Location: Basingstoke, UK

If you are using V6 you should check your cluster priority and rank for queues and channels
_________________
Keith Guttridge
-----------------
Using MQ since 1995
Back to top
View user's profile Send private message Visit poster's website
sfari
PostPosted: Mon Aug 15, 2005 3:39 am    Post subject: Reply with quote

Centurion

Joined: 15 Apr 2003
Posts: 144

I am using 5.3 CSD10 on Solaris and on z/OS some other 5.3 version.
Back to top
View user's profile Send private message
Mr Butcher
PostPosted: Mon Aug 15, 2005 6:13 am    Post subject: Reply with quote

Padawan

Joined: 23 May 2005
Posts: 1716

in your first post you wrote that you are using amqsput
in a alter post you wrote that the test application uses bind_not_fixed

amqsput (i checked on linux) does not specify any bind option, so it uses bind_as_q_def (did you modify the sample) ? or do you specify any
open options by invokation of amqsput?

from the sum machine,
please post a "DISPLAY CLUSQMGR(*) ALL"
please post a "DISPLAY QCLUSTER(Q.TEST) ALL"
please post the way you call amqsput (if not modified). if you have a modified version of amqsput with open options, please post the proper program section (setting options and open) and the way you call it.
_________________
Regards, Butcher
Back to top
View user's profile Send private message
sfari
PostPosted: Mon Aug 15, 2005 7:18 am    Post subject: Reply with quote

Centurion

Joined: 15 Apr 2003
Posts: 144

No I haven't modified the sample. I knew that the amqsput program uses what the queue specifies. Since I have NOTFIXED specified it must use not fixed binding.

In the listing below the SUN qm is "C004501A.SUN.T", ZOS1 "T1QM", ZOS2 "T2QM", and the test queue is "A.EPLATFORM.CLUSTST".

Thanks for your help!

Code:

/opt/mqm/samp/bin/amqsput A.EPLATFORM.CLUSTST


Code:

dis clusqmgr(*) cluster(TEST) all
     3 : dis clusqmgr(*) cluster(TEST) all
AMQ8441: Display Cluster Queue Manager details.
   CLUSQMGR(C004501A.SUN.T)                CLUSTER(TEST)
   CHANNEL(CC.TO.C004501A)                 CONNAME(ecpent01)
   QMID(C004501A.SUN.T_2003-04-01_08.31.51)
   DESCR(Cluster QM -> ecpent01)           CLUSTIME( )
   CLUSDATE( )                             ALTTIME(13.47.18)
   ALTDATE(2005-08-10)                     TRPTYPE(TCP)
   DEFTYPE(CLUSRCVR)                       QMTYPE(NORMAL)
   MCANAME( )                              MODENAME( )
   TPNAME( )                               BATCHSZ(50)
   DISCINT(6000)                           SHORTRTY(10)
   SHORTTMR(60)                            LONGRTY(999999999)
   LONGTMR(1200)                           SCYEXIT( )
   SCYDATA( )                              SEQWRAP(999999999)
   MAXMSGL(104857600)                      PUTAUT(DEF)
   CONVERT(NO)                             MCAUSER( )
   MCATYPE(THREAD)                         MREXIT( )
   MRDATA( )                               MRRTY(10)
   MRTMR(1000)                             HBINT(300)
   BATCHINT(0)                             NPMSPEED(FAST)
   NETPRTY(0)                              SUSPEND(NO)
   SSLCIPH(TRIPLE_DES_SHA_US)              SSLCAUTH(REQUIRED)
   BATCHHB(0)                              LOCLADDR( )
   KAINT(AUTO)                             ALTTIME(13.47.18)
   ALTDATE(2005-08-10)
   SSLPEER(CN=MQ*,L=8401 Winterthur,ST=ZH,C=CH,O=Winterthur Versicherungen,OU=*)
   SENDEXIT( )
   SENDDATA( )
   MSGEXIT( )
   MSGDATA( )
   RCVEXIT( )
   RCVDATA( )
AMQ8441: Display Cluster Queue Manager details.
   CLUSQMGR(T1QM)                          CLUSTER(TEST)
   CHANNEL(CC.TO.T1QM)                     CONNAME(S51)
   QMID(T1QM.BD1FFF8564F0E6CA)
   DESCR(Channel advertising T1QM to TEST)
   CLUSTIME(20.08.29)                      CLUSDATE(2005-08-13)
   ALTTIME(13.30.59)                       ALTDATE(2005-08-10)
   TRPTYPE(TCP)                            DEFTYPE(CLUSSDRB)
   QMTYPE(REPOS)                           MCANAME( )
   MODENAME( )                             TPNAME( )
   BATCHSZ(50)                             DISCINT(6000)
   SHORTRTY(10)                            SHORTTMR(60)
   LONGRTY(999999999)                      LONGTMR(1200)
   SCYEXIT( )                              SCYDATA( )
   SEQWRAP(999999999)                      MAXMSGL(4194304)
   CONVERT(NO)                             USERID()
   PASSWORD()                              MCAUSER( )
   MCATYPE(THREAD)                         HBINT(300)
   BATCHINT(0)                             NPMSPEED(FAST)
   NETPRTY(0)                              SUSPEND(NO)
   STATUS(INACTIVE)                        SSLCIPH(TRIPLE_DES_SHA_US)
   SSLCAUTH(REQUIRED)                      BATCHHB(0)
   LOCLADDR( )                             KAINT(AUTO)
   ALTTIME( )                              ALTDATE( )
   SSLPEER(CN=MQ*,L=8401 Winterthur,SP=ZH,C=CH,O=Winterthur Versicherungen,OU=*)
   SENDEXIT( )
   SENDDATA( )
   MSGEXIT( )
   MSGDATA( )
   RCVEXIT( )
   RCVDATA( )
AMQ8441: Display Cluster Queue Manager details.
   CLUSQMGR(T2QM)                          CLUSTER(TEST)
   CHANNEL(CC.TO.T2QM)                     CONNAME(S52)
   QMID(T2QM.B4DE7B906C909480)
   DESCR(Channel advertising T2QM to TEST)
   CLUSTIME(20.09.09)                      CLUSDATE(2005-08-13)
   ALTTIME(13.32.21)                       ALTDATE(2005-08-10)
   TRPTYPE(TCP)                            DEFTYPE(CLUSSDRA)
   QMTYPE(REPOS)                           MCANAME( )
   MODENAME( )                             TPNAME( )
   BATCHSZ(50)                             DISCINT(6000)
   SHORTRTY(10)                            SHORTTMR(60)
   LONGRTY(999999999)                      LONGTMR(1200)
   SCYEXIT( )                              SCYDATA( )
   SEQWRAP(999999999)                      MAXMSGL(4194304)
   CONVERT(NO)                             USERID()
   PASSWORD()                              MCAUSER( )
   MCATYPE(THREAD)                         HBINT(300)
   BATCHINT(0)                             NPMSPEED(FAST)
   NETPRTY(0)                              SUSPEND(YES)
   STATUS(INACTIVE)                        SSLCIPH(TRIPLE_DES_SHA_US)
   SSLCAUTH(REQUIRED)                      BATCHHB(0)
   LOCLADDR( )                             KAINT(AUTO)
   ALTTIME( )                              ALTDATE( )
   SSLPEER(CN=MQ*,L=8401 Winterthur,SP=ZH,C=CH,O=Winterthur Versicherungen,OU=*)
   SENDEXIT( )
   SENDDATA( )
   MSGEXIT( )
   MSGDATA( )
   RCVEXIT( )
   RCVDATA( )
dis qcluster(Q.EPLATFORM.CLUSTST) all
     4 : dis qcluster(Q.EPLATFORM.CLUSTST) all
AMQ8409: Display Queue details.
   DESCR(Test Queue für neue Clusterstrat)
   CLUSTER(TEST)                           QUEUE(Q.EPLATFORM.CLUSTST)
   CLUSQMGR(T1QM)                          QMID(T1QM.BD1FFF8564F0E6CA)
   CLUSDATE(2005-08-10)                    CLUSTIME(14.31.38)
   ALTDATE(2005-08-15)                     ALTTIME(08.25.05)
   CLUSQT(QLOCAL)                          TYPE(QCLUSTER)
   PUT(ENABLED)                            DEFPRTY(0)
   DEFPSIST(YES)                           DEFBIND(NOTFIXED)
AMQ8409: Display Queue details.
   DESCR(TEST QUEUE FÜR NEUE CLUSTERSTRAT)
   CLUSTER(TEST)                           QUEUE(Q.EPLATFORM.CLUSTST)
   CLUSQMGR(T2QM)                          QMID(T2QM.B4DE7B906C909480)
   CLUSDATE(2005-08-10)                    CLUSTIME(14.31.38)
   ALTDATE(2005-08-10)                     ALTTIME(14.58.56)
   CLUSQT(QLOCAL)                          TYPE(QCLUSTER)
   PUT(ENABLED)                            DEFPRTY(0)
   DEFPSIST(YES)                           DEFBIND(NOTFIXED)
Back to top
View user's profile Send private message
Mr Butcher
PostPosted: Mon Aug 15, 2005 7:42 am    Post subject: Reply with quote

Padawan

Joined: 23 May 2005
Posts: 1716

t2qm is suspended?
_________________
Regards, Butcher
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Mon Aug 15, 2005 12:31 pm    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

sfari wrote:
As I mentioned putting on ZOS2 is possible as soon as ZOS1 is not available (eg. put inhibit). Thus ZOS2 is not suspended but strange is that no messages will be sent to it as soon as also ZOS1 is available.

Not true. A suspended QM can receive messages from the cluster. Take a look in the Cluster manual on the SUSPEND command and what it really means.

That was a smart test you did, PUT_INHIBITING ZOS1. By showing us that given no other choice the messages went to ZOS2, you proved the channels and queues are defined correctly. So the question is why does the Workload algorithem always favor ZOS1 given the choice?

You symptoms indicate a suspended QM. Or ZOS2 is getting a *LOT* more traffic, so its channel sequence numbers are rising very fast compared to ZOS1, and so the algorithim chooses Z0S1 as the least used channel every time one of your little messages from amqsputc comes along, so they all go there.

Or you have a cluster workload exit installed.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Mon Aug 15, 2005 12:33 pm    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

Mr Butcher wrote:
t2qm is suspended?

whoops! just saw this as soon as I posted. That of course is the answer.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
sfari
PostPosted: Mon Aug 15, 2005 9:46 pm    Post subject: Reply with quote

Centurion

Joined: 15 Apr 2003
Posts: 144

Ups, that's bad I haven't seen this before. Thanks MR. Butcher! I had a wrong understanding of beeing suspended thought messages can't be put then. Thus I haven't thought about this. Thanks Peter for correcting me!

Compliment to all in this forum! It's just great, thanks!
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 » Workload balancing 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.