Configuring a highly available Gateway group with two-phase commit and IPIC (SC03)

This scenario shows how to configure a highly available gateway group (HA group) of Gateway daemons with connections to CICS over IPIC. The scenario supports two-phase commit (XA) transactions and uses policy-based dynamic server selection for selecting a CICS server.

A highly available gateway group consists of a group of Gateway daemons that share the same TCP/IP port and are capable of providing XA transactional support.

The figure shows workload from a connection factory in WebSphere Application Server being served by similar Gateway daemons (CTGA1, CTGA2) which represent the HA group “GroupA”. Any supported JEE application server can be used in this scenario.

This figure shows XA transactions in a high availability scenario with connections to CICS over IPIC.
Figure 1. XA transactions over IPIC in a high availability scenario

Each Gateway daemon is connected to CICS servers CICSA1 and CICSA2 using the IPIC protocol. A transaction might be handled by Gateway daemon CTGA1 or CTGA2, and the work in CICS will be handled by one of CICSA1 or CICSA2. In this scenario, the Gateway daemon is configured for dynamic server selection using a CICS request exit. Dynamic server selection is performed at the start of each new transaction and manages the associated transactional affinity with the selected CICS server, for the life of the transaction.

Note: The connection factory definition in WebSphere Application Server does not need to contain details of the actual CICS servers.

Follow the step-by-step instructions in this scenario to implement an HA group. This example uses CICS Transaction Gateway connecting to CICS Transaction Server V4.1 over IPIC and WebSphere Application Server V8.0.

Table 1. Values used in this scenario
Component Property Where set Details
TCP/IP Port sharing PROFILE.TCPIP

4148 TCP CTGA* SHAREPORT

CICS TG APPLIDQUALIFIER GroupA_GW.ini

GROUPA

CICS TG TCP protocol handler GroupA_GW.ini

Port number 4148

CICS TG Gateway group A common configuration GroupA_GW.ini

maxconnect=500
maxworker=250
xasupport=on

CICS TG IPIC connection to CICSA1 GroupA_GW.ini

name=CICSA1
hostname=server.ibm.com
port=4149

CICS TG IPIC connection to CICSA2 GroupA_GW.ini

name=CICSA2
hostname=server.ibm.com
port=4150

CICS TG A1 Gateway instance A1 environment variables CTGS03A1

CICSCLI=config_path/GroupA_GW.ini
CTGSTART_OPTS=-applid=CTGA1
-statsport=4151

CICS TG A2 Gateway instance A2 environment variables CTGS03A2

CICSCLI=config_path/GroupA_GW.ini
CTGSTART_OPTS=-applid=CTGA2
-statsport=4152

CICS TS CICSA1 TCPIPService for IPIC connection Using CEDA on CICSA1

name=SRV4149
protocol=IPIC
port=4149

CICS TS CICSA2 TCPIPService for IPIC connection Using CEDA on CICSA2

name=SRV4150
protocol=IPIC
port=4150

WebSphere Application Server CICS TG ECI resource adapter connection factory J2C connection factories

name=ECI-XA-GROUPA

WebSphere Application Server CICS TG ECI resource adapter connection factory J2C connection factories JNDI Name=eis/CICSGroupA
WebSphere Application Server CICS TG ECI resource adapter connection factory ECI-XA-GROUPA connection pool properties

Maximum connections=500

WebSphere Application Server CICS TG ECI resource adapter connection factory ECI-XA-GROUPA custom properties

ConnectionURL=tcp://server.ibm.com
PortNumber=4148
ApplidQualifier=GROUPA
Applid=XAWASA
xasupport=on

The following sample configuration and environment variable files for this scenario are available for you to download:

Information Information

Feedback


Timestamp icon Last updated: Tuesday, 19 November 2013


https://ut-ilnx-r4.hursley.ibm.com/tgzos_latest/help/topic/com.ibm.cics.tg.zos.doc//ctgzos/sc_haxa_ipic_ovr.html