User Application 3.6.1 (and earlier) clustering using the JBoss TCP stack

  • 3448409
  • 30-Jul-2007
  • 26-Apr-2012

Environment

Novell Identity Manager User Application 3.0
Novell Identity Manager User Application 3.01
Novell Identity Manager User Application 3.5
Novell Identity Manager Roles Based Provisioning Module 3.6
Novell Identity Manager Roles Based Provisioning Module 3.6.1
JBoss Application Server 4.x (jdk5)

Situation

By default, the Roles Based Provisioning Module (User Application) uses the UDP protocol and multicast transmission for all clustering operations.  In certain cases, where the UDP protocol and/or multicast transmission is not available between nodes in the User Application cluster (e.g., WAN links separating nodes), it is necessary to use the TCP protocol and unicast transmission to perform the clustering operations.

Resolution

Special Notice:  If you are new to the concept of clustering the User Application, please review the Clustering topic of the Roles Based Provisioning Module Administration Guide at https://www.novell.com/documentation/idmrbpm361/agpro/data/b2gx73a.html.

To enable User Application 3.6.1 clustering via the TCP protocol and unicast transmission, perform the following steps on every node in the User Application Cluster:
  1. Login to the User Application as the administrator.
  2. Click on the Administration tab and choose Caching from the left hand navigation bar.
  3. In the Cluster and Cache Configuration, Cluster Configuration section, change the Global Value for Cluster Enabled to true.
  4. Save your configuration.
  5. Stop JBoss.
  6. Modify (JBoss Home)/server/IDMProv/deploy/cluster-service.xml
    • Comment the default UDP stack configuration by adding <!-- before <Config> for UDP and --> after </Config> for UDP.
    • Uncomment the Alternate TCP stack configuration by removing the <!-- before <Config> for TCP and the --> after </Config> for TCP.
    • Change bind_addr from thishost to the IP address of the local server.
    • Change the initial_hosts from thishost[7800],otherhost[7800] to the IP address of local server and other cluster members, for example initial_hosts="10.0.0.1[7800],10.0.0.2[7800],10.0.1.1[7800]"
  7. Save and close the cluster-service.xml file.
  8. After all cluster members have been updated, start JBoss on each server.
  9. Login to the User Application as the administrator.
  10. In the Cluster and Cache Configuration, Cluster Configuration section, change the Cluster Properties so that Enable Local is checked and the following string is entered:
    TCP(bind_addr=10.0.0.1;start_port=7815;loopback=true):TCPPING(initial_hosts=10.0.0.1[7815],10.0.0.2[7815],10.0.1.1[7815];port_range=3;timeout=3500;num_initial_members=3;up_thread=true;down_thread=true):MERGE2(min_interval=5000;max_interval=10000):FD(shun=true;timeout=2500;max_tries=5;up_thread=true;down_thread=true):VERIFY_SUSPECT(timeout=1500;down_thread=false;up_thread=false):pbcast.NAKACK(down_thread=true;up_thread=true;gc_lag=100;retransmit_timeout=3000):pbcast.STABLE(desired_avg_gossip=20000;down_thread=false;up_thread=false):pbcast.GMS(join_timeout=5000;join_retry_timeout=2000;shun=false;print_local_addr=true;down_thread=true;up_thread=true):pbcast.STATE_TRANSFER(up_thread=true;down_thread=true)
    • Notice:  This should be a contiguous string with no spaces before, after, or within.
    • Change the IP address for the  bind_addr to the IP address of the local server.
    • Change the IP addresses for the initial_hosts to the IP addresses of the local server and other cluster members
  11. Save your configuration.
  12. After all of the cluster members have been updated, restart JBoss on each server.

Additional Information

The above procedure will only enable clustering for the User Application and the JBoss default clustering partition.

The information in this TID is for Identity Manager Roles Based Provisioning Module (User Application) 3.6.1 (and earlier) when used with JBoss Application Server 4.x (jdk5) ONLY.  For information on clustering later versions of User Application, please review TID 7006728 - User Application 3.7 (and later) clustering using the JBoss TCP stack.