This documentation is for older versions of WSO2 products and may not be relevant now. Please see your respective product documentation for clustering details and configurations.

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.



Important: When configuring your WSO2 products for clustering, it is necessary to use a specific IP address and not localhost or host names in your configurations. So, keep this in mind when hosting WSO2 products in your production environment.

See Setting up Up a Cluster in AWS Mode for information on clustering WSO2 products that are deployed on Amazon EC2 instances. The instructions in that topic only include the configurations done to the <PRODUCT_HOME>/repository/conf/axis2/axis2.xml file, so the configuration changes done to other configuration files must be done in addition to the steps in that topic.


  1. Restart the configured load balancer.
  2. Start the manager node. The additional -Dsetup argument creates the required tables in the database if these were not created while setting up the databases
    sh <PRODUCT_HOME>/bin/ -Dsetup
  3. The -DworkerNode=false flag is included in the startup script <PRODUCT_HOME>/repository/confbin/ (wso2server.bat for Windows). So, to start the server as a worker node, you must modify this flag directly in the startup script. It is false by default so it must be set to true as shown below. The -DworkerNode=true argument indicates that this is a worker node. This parameter basically makes a server read-only. A node with this parameter will not be able to do any changes such as writing or making modifications to the deployment repository etc. This parameter also enables the worker profile, where the UI bundles will not be activated and only the back end bundles will be activated once the server starts up.

  4. Start the two worker nodes. 


    Tip: It is recommendation is to delete the <PRODUCT_HOME>/repository/deployment/server directory and create an empty server directory in the worker node. This is done to avoid any SVN conflicts that may arise.

    sh <PRODUCT_HOME>/bin/

  5. Check for ‘member joined’ log messages in all consoles.

    titleAdditional information on logs and new nodes

    When you terminate one node, all nodes identify that the node has left the cluster. The same applies when a new node joins the cluster. 

    If you want to add another new worker node, you can simply copy worker1 without any changes if you are running it on a new server (such as If you intend to use the new node on a server where another WSO2 product is running, you can use a copy of worker1 and change the port offset accordingly in the carbon.xml file. You also have to change localMemberPort in axis2.xml if that product has clustering enabled. Be sure to map all host names to the relevant IP addresses when creating a new node. The log messages indicate if the new node joins the cluster.

  6. Access management console through the LB using the following URL:
  7. Test load distribution via