You can use the dynacacheJMSSIB.py script to enable dynamic cache service multi-cell and multi-core group invalidation. This script configures the external cache adapter and service integration bus infrastructure in multiple cells. The script must be executed from the WAS_INSTALL_ROOT/profiles/PROFILE_NAME/bin directory for it to work correctly.
Before starting this task, the wsadmin tool must be running. See the topic on how to start the wsadmin tool for more information.
Outbound JMS/service integration bus configuration includes configuring the JMS queue connection factory to communicate with a remote cell.
External cache group configuration includes configuring an external cache group and external cache adapter on each cluster member hosting the production applications.
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheInSIB --help
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheOutSIB --help
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=ddynacacheECA --help
To delete an inbound, outbound, or ECA configuration, add --delete to the command used to create the respective configuration artifacts.
Example 1: Multiple cells
Cell1 ProductionCluster1 (hosts ApplicationA) SIBCluster1 node1/sib1 (service integration bus member) SIB_ENDPOINT_ADDRESS=7777 hostname=host1.com node1b/sib2 (service integration bus member) SIB_ENDPOINT_ADDRESS=7776 hostname=host11.com ReplicationDomain (contains ProductionCluster1 members and SIBCluster1 members) Service Integration Bus Data Source1 JNDI name = jdbc/SIBCluster1DataSource
Cell2 ProductionCluster2 (hosts ApplicationA) SIBCluster2 node2/sib1 (service integration bus member) SIB_ENDPOINT_ADDRESS=8888 hostname=host2.com nodesb/sib2 (service integration bus member) SIB_ENDPOINT_ADDRESS=8889 hostname=host22.com ReplicationDomain (contains ProductionCluster2 members and SIBCluster2 members) Service Integration Bus Data Source2 JNDI name = jdbc/SIBCluster2DataSource
Complete the following steps to enable dynamic cache service cell invalidation support for Cell1 and Cell2.
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheInSIB --cluster=SIBCluster1 --datasourceJNDI=jdbc/SIBCluster1DataSource
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheInSIB --cluster=SIBCluster2 --datasourceJNDI=jdbc/SIBCluster2DataSource
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheOutSIB --remoteCellSIBServers=host2.com:8888,host22.com:8889 --remoteCellID=Cell2
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheOutSIB --remoteCellSIBServers=host1.com:7777,host11.com:7776 --remoteCellID=Cell1
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheECA --cluster=ProductionCluster1 --remoteCellID=Cell2
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheECA --cluster=ProductionCluster2 --remoteCellID=Cell1
Example 2: Single cell that contains multiple core groups
CoreGroup1 ProductionCluster1 (hosts ApplicationA) SIBCluster1 node1/sib1 (service integration bus member) SIB_ENDPOINT_ADDRESS=7777 hostname=host1.com node1b/sib2 (service integration bus member) SIB_ENDPOINT_ADDRESS=7776 hostname=host11.com ReplicationDomain (contains ProductionCluster1 members and SIBCluster1 members) Service Integration Bus Data Source1 JNDI name = jdbc/SIBCluster1DataSource
CoreGroup2 ProductionCluster2 (hosts ApplicationA) SIBCluster2 node2/sib1 (service integration bus member) SIB_ENDPOINT_ADDRESS=8888 hostname=host2.com nodesb/sib2 (service integration bus member) SIB_ENDPOINT_ADDRESS=8889 hostname=host22.com ReplicationDomain (contains ProductionCluster2 members and SIBCluster2 members) Service Integration Bus Data Source2 JNDI name = jdbc/SIBCluster2DataSource
Complete the following steps to enable dynamic cache service core group invalidation support for CoreGroup1 and CoreGroup2.
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheInSIB --localCellID=Cell1/CoreGroup1 --cluster=SIBCluster1 --datasourceJNDI=jdbc/SIBCluster1DataSource
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheInSIB --localCellID=Cell1/CoreGroup2 --cluster=SIBCluster2 --datasourceJNDI=jdbc/SIBCluster2DataSource
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheOutSIB --localCellID=Cell1/CoreGroup1 --remoteCellSIBServers=host2.com:8888,host22.com:8889 --remoteCellID=Cell1/CoreGroup2
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheOutSIB --localCellID=Cell1/CoreGroup2 --remoteCellSIBServers=host1.com:7777,host11.com:7776 --remoteCellID=Cell1/CoreGroup1
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheECA --cluster=ProductionCluster1 --localCellID=Cell1/CoreGroup1 --remoteCellID=Cell1/CoreGroup2
./wsadmin.sh -lang jython -f ../../../util/dynacacheJMSSIB.py --setup=dynacacheECA --cluster=ProductionCluster2 --localCellID=Cell1/CoreGroup2 --remoteCellID=Cell1/CoreGroup1
In this information ...Related tasks
Related reference
| IBM Redbooks, demos, education, and more(Index) |