czwartek, 6 grudnia 2012

Manager kolejek MQ - PROXYQMGR

Architektura:
LEFT <-> PROXY <-> RIGHT

Utworzenie managerów:
crtmqm -ll -c "RIGHT manager, linear logging" RIGHT
crtmqm -ll -c "PROXY manager, linear logging" PROXY
crtmqm -ll -c "LEFT manager, linear logging" LEFT
Konfiguracja managerów:
### RIGHT #############################################################

# podstawowa konfiguracja (po dodaniu wymagany restart managera)
DEFINE QLOCAL (DEADQ.RIGHT)
ALTER QMGR DEADQ(DEADQ.RIGHT)
DEFINE LISTENER (RIGHT.LISTENER) TRPTYPE(TCP) PORT(1435) CONTROL(QMGR)
DEFINE CHANNEL (CLIENT.SVRCONN) CHLTYPE(SVRCONN) MCAUSER('mqm')
ALTER QMGR SSLKEYR('/var/mqm/qmgrs/RIGHT/ssl/RIGHT')

# odbior z PROXY
DEFINE CHANNEL(PROXY.RIGHT) CHLTYPE(RCVR) SSLCIPH(TRIPLE_DES_SHA_US)
DEFINE QLOCAL(QUEUE.INP)

# wysylka do PROXY
DEFINE CHANNEL(RIGHT.PROXY) CHLTYPE(SDR)  SSLCIPH(TRIPLE_DES_SHA_US) CONNAME('1.2.3.4(1415)') XMITQ(XMITQ.RIGHT.PROXY) DISCINT(10)
DEFINE QLOCAL(XMITQ.RIGHT.PROXY) USAGE(XMITQ) TRIGGER INITQ(SYSTEM.CHANNEL.INITQ) TRIGTYPE(FIRST) TRIGDATA(RIGHT.PROXY)
DEFINE QREMOTE(QUEUE.OUT) RNAME(QUEUE.OUT) RQMNAME(PROXY) XMITQ(XMITQ.RIGHT.PROXY)

### PROXY #########################################################

# podstawowa konfiguracja (po dodaniu wymagany restart managera)
DEFINE QLOCAL (DEADQ.PROXY)
ALTER QMGR DEADQ(DEADQ.PROXY)
DEFINE LISTENER (PROXY.LISTENER) TRPTYPE(TCP) PORT(1415) CONTROL(QMGR)
DEFINE CHANNEL (CLIENT.SVRCONN) CHLTYPE(SVRCONN) MCAUSER('mqm')
ALTER QMGR SSLKEYR('/var/mqm/qmgrs/PROXY/ssl/PROXY')

# odbior z LEFT
DEFINE CHANNEL(LEFT.PROXY) CHLTYPE(RCVR) SSLCIPH(TRIPLE_DES_SHA_US)

# wysylka do LEFT
DEFINE QLOCAL(XMITQ.PROXY.LEFT) USAGE(XMITQ) TRIGGER INITQ(SYSTEM.CHANNEL.INITQ) TRIGTYPE(FIRST) TRIGDATA(PROXY.LEFT)
DEFINE CHANNEL(PROXY.LEFT) CHLTYPE(SDR) SSLCIPH(TRIPLE_DES_SHA_US) CONNAME('1.2.3.4(1425)') XMITQ(XMITQ.PROXY.LEFT) DISCINT(10)
DEFINE QREMOTE(QUEUE.OUT) RNAME(QUEUE.OUT) RQMNAME(LEFT) XMITQ(XMITQ.PROXY.LEFT)

# odbior z RIGHT
DEFINE CHANNEL(RIGHT.PROXY) CHLTYPE(RCVR) SSLCIPH(TRIPLE_DES_SHA_US)

# wysylka do RIGHT
DEFINE CHANNEL(PROXY.RIGHT) CHLTYPE(SDR) SSLCIPH(TRIPLE_DES_SHA_US) CONNAME('1.2.3.4(1435)') XMITQ(XMITQ.PROXY.RIGHT) DISCINT(10)
DEFINE QLOCAL(XMITQ.PROXY.RIGHT) USAGE(XMITQ) TRIGGER INITQ(SYSTEM.CHANNEL.INITQ) TRIGTYPE(FIRST) TRIGDATA(PROXY.RIGHT)
DEFINE QREMOTE(QUEUE.INP) RNAME(QUEUE.INP) RQMNAME(RIGHT) XMITQ(XMITQ.PROXY.RIGHT)

### LEFT ###############################################################

# podstawowa konfiguracja (po dodaniu wymagany restart managera)
DEFINE QLOCAL (DEADQ.LEFT)
ALTER QMGR DEADQ(DEADQ.LEFT)
DEFINE LISTENER (LEFT.LISTENER) TRPTYPE(TCP) PORT(1425) CONTROL(QMGR)
DEFINE CHANNEL (CLIENT.SVRCONN) CHLTYPE(SVRCONN) MCAUSER('mqm')
ALTER QMGR SSLKEYR('/var/mqm/qmgrs/LEFT/ssl/LEFT')

# odbior z PROXY
DEFINE CHANNEL(PROXY.LEFT) CHLTYPE(RCVR) SSLCIPH(TRIPLE_DES_SHA_US)
DEFINE QLOCAL(QUEUE.OUT)

# wysylka do PROXY
DEFINE QLOCAL(XMITQ.LEFT.PROXY) USAGE(XMITQ) TRIGGER INITQ(SYSTEM.CHANNEL.INITQ) TRIGTYPE(FIRST) TRIGDATA(LEFT.PROXY)
DEFINE CHANNEL(LEFT.PROXY) CHLTYPE(SDR) SSLCIPH(TRIPLE_DES_SHA_US) CONNAME('1.2.3.4(1415)') XMITQ(XMITQ.LEFT.PROXY) DISCINT(10)
DEFINE QREMOTE(QUEUE.INP) RNAME(QUEUE.INP) RQMNAME(PROXY) XMITQ(XMITQ.LEFT.PROXY)

# odbior przez klienta (WAS)
DEFINE CHANNEL(QUEUE.CHANNEL.SVRCONN) CHLTYPE(SVRCONN) SSLCAUTH(REQUIRED) MCAUSER('mqm') SSLCIPH(TRIPLE_DES_SHA_US) SSLPEER('CN=COMMON_NAME') MAXMSGL(104857600)