OverviewThere are two methods of installing Confluence in a cluster, depending on whether you have existing data. This page describes a fresh installation with no existing data. See also Confluence Cluster Installation with Existing Data. Installation with no existing dataTo get Confluence running in a two-node cluster, you must do the following:
Each of these steps will be described in detail below. 1. Clustering requirementsYour Confluence cluster installation must meet all the following criteria for clustering:
Clustered licenses are available through the Confluence website. A cluster can run using two copies of Confluence Standalone. However, cluster administrators must understand how to configure an application server and web server with load balancing, so we recommend you are comfortable installing Confluence as a EAR/WAR in your application server before proceeding with a clustered installation. 2. Installation on first nodeCluster administrators should already be comfortable with the normal installation method, so it won't be repeated here. There are two differences in the Confluence Setup Wizard from a normal installation:
3. Load test the single nodeMost Confluence installations do not need to be clustered. Ensure you have tested your single node installation with the number of users you expect to host before going ahead with the additional complexity of clustering. Check out our performance tuning tips for ways to improve the performance of a single instance of Confluence. You can upgrade your single node to a multi-node cluster at any time by resuming this guide from step 4 below. 4. Copy Confluence to second nodeConfluence clusters must use the same JDK, application server and application. The easiest way to ensure this is to shut down Confluence on the first node, then copy its web application and home directory to the second node:
Copying the web application ensures any modifications you have made to the application itself, custom LDAP settings (atlassian-user.xml), and any other advanced configuration are copied to node #2. Copying the home directory ensures the Confluence search index (the index/ directory), the database and cluster configuration (confluence.cfg.xml), and any other home directory settings are copied to node #2. 5. Start Confluence on the first node, wait, then start Confluence on second nodeFor the most stable start-up process, it is important to start Confluence one server at a time.
6. Test cluster connectivityThe Cluster Administration page (Administration, Cluster Configuration) includes information about the active cluster. When the cluster is running properly, this page displays:
A simple process to ensure your cluster is working correctly is:
7. Configure load balancerFor the moment, configuring the load balancer is outside the scope of this document. However, a simple Apache and Tomcat load-balancing configuration is available, which includes sample configuration for the Apache Tomcat and the Apache web server, using its load-balancing JK connector. TroubleshootingIf you have problems with the above procedure, please see our Cluster Troubleshooting guide. Upgrading a clusterIt is important that upgrades follow the procedure for Upgrading a Confluence Cluster. Related documentationOverview of Confluence Clusters |

Comments (4)
Dec 19, 2007
Fabien Bergeret says:
Is it possible not to use multicast but unicast ?Is it possible not to use multicast but unicast ?
Jan 04, 2008
Tony Cheah Tong Nyee says:
Hi Fabien, Please find the following reply from Paul CurrenHi Fabien,
Please find the following reply from Paul Curren .
Additionally, the link below may be of help:
Hope the information helps.
Cheers,
Tony
Jan 30
Anonymous says:
We received a suggestion from Atlassian that: Session affinity for J2EE web a...We received a suggestion from Atlassian that:
Session affinity for J2EE web applications means the load balancer keeps a cache which maps the JSESSIONID cookie values sent in a response to the cluster node that sent it. When a client request includes a JSESSIONID cookie that matches a value in the cache, the request should be processed by the associated server.
Unfortunately, load balancing via the JESSIONID doesn't seem to work. We're finding that after logging in we are ending up back on the login page. Note how the JSESSION ID changed in the second attachement. You'll end up with logins that will work maybe 50% of the time you open a new browser window in a two node cluster.
Atlassian really should provide better advice on this. The tomcat example doesn't seem to show anything about using jsessionid, it's not clear in skimming over it how it is doing the session affinity.
Feb 19
Choy Li Tham says:
Hi, Unfortunately, load balancing via the JESSIONID doesn't seem to work. May ...Hi,
May I know if you have encountered any problems with the load balancing via the JESSIONID? If that is the case, it would be appreciated that if you could raise a support request pertaining to the problem that you are having at the following Issue Tracker:
Thus, we can further investigate the problem and follow up the issue from there. Thanks.
Regards,
Choy Li
Add Comment