Critical JBOSS Clustering Configuration Steps:
Novell's User Application Clustering documentation can be found here.
This note will not duplicate content found there, but highlight relevant details that fit into the procedures described in the Novell documents. These steps were taken in creating both the lab and production cluster environments.
You of course need to choose "All" and establish different engine ID's on each UA install.
Identical Master Keys: Clusters require identical master keys to function, and a key is requested during installation of the UA. During install of the first cluster node, the UA generates a key and places it in the install base folder, in a file called "master-key.txt" .During the second node installation, copy the master-key.txt file to the new server during UA Installation and paste its contents into the UserApp installation..
Add the following to the /opt/novell/idm/start-jboss.sh script on each server, with the Engine ID being different:
This command should be inserted in the "exec" line, replacing the former part that begins with -c, and preserving the part that ends "-b 0.0.0.0"
-c IDM -Djboss.partition.name=Lab_Partition -Djboss.partition.udpGroup=18.104.22.168 -Dcom.novell.afw.wf.engine-id=LabUA3
-c IDM -Djboss.partition.name=Lab_Partition -Djboss.partition.udpGroup=22.214.171.124 -Dcom.novell.afw.wf.engine-id=LabUA1
PROD: (Note the different group multicast address)
-c IDM -Djboss.partition.name=Prod_Partition -Djboss.partition.udpGroup=126.96.36.199 -Dcom.novell.afw.wf.engine-id=IDMUA1
-c IDM -Djboss.partition.name=Prod_Partition -Djboss.partition.udpGroup=188.8.131.52 -Dcom.novell.afw.wf.engine-id=IDMUA2
Modify /opt/novell/idm/jboss/server//deploy/cluster-service.xml file:
" set the mcast_port attribute to 45580 in the lab; 45581 in production.**
**This is only relevant in an environment where you have both a lab and Production (i.e. more than one cluster on the same network)
Of course, all of this must be fronted with a load-balancer of some sort to distribute requests to the different nodes and maintain session/connection information.