Installing Crowd Data Center
To install Crowd Data Center, you'll create a cluster of Crowd instances that will make sure your users have uninterrupted access both to Crowd, and all other systems that are connected to it. We recommend that you start with the prerequisite information, listed on this page, to understand what Data Center is, and to know exactly what you'll need to complete the installation.
Before you begin
Before you install Crowd Data Center, you need to answer a few questions.
What is Crowd Data Center?
|How do I get it?|
What are the prerequisites?
Tell me more...
Supported operating systems, databases, etc., are the same as for the Server installation, and you can see them here: Supported platforms. You need to use an external database - HSQLDB is not supported.
Those specific to Data Center include requirements for nodes that create the cluster:
|Do I need a load balancer?|
Tell me more...
Yes. Crowd Data Center relies on a load balancer to balance the traffic between the nodes, and this guide assumes that you already have one set up. You can use a load balancer of your choice, just make sure it meets these requirements:
Or you can just turn your proxy into a load balancer.
Many bigger installations of Crowd already have a reverse proxy configured, and many reverse proxies can do load balancing as well. We've provided some examples on how to use your proxy as a load balancer. See Load balancer examples.
1. Install Crowd
Crowd Data Center is available for Crowd 3.0, or later. If you're not on this version yet, install or upgrade your Crowd instance.
After you've installed Crowd and applied your license, you can verify that Data Center is available by going to> Licensing.
2. Set up the shared directory
You'll need to create a remote directory that is readable and writable by all nodes in the cluster. There are multiple ways to do this, but the simplest is to use an NFS share.
- Go to Crowd's home directory, and check whether it already has the
sharedsub-directory, which might have been created after starting Crowd. If it's there, you'll need to copy its contents to the new shared directory that you'll create in the next steps. If you can't find it, just omit this step.
- Create a remote directory, accessible by all nodes in the cluster, and name it
Mount shared as a sub-directory of the Crowd home directory.
3. Add the first Crowd node to your load balancer
Before you begin
You must enable clustering in Crowd first. To do that, in your shared directory edit the crowd.cfg.xml file and set the
crowd.clustering.enabled property to
true and restart Crowd.
The load balancer distributes the traffic between the nodes. If a node stops working, the remaining nodes will take over its workload, and your users won't even notice it.
- First, add your load balancer as a trusted proxy server in Crowd. See Configuring Trusted Proxy Servers.
Add the first node to the load balancer.
- Restart the node, and then try opening different pages in Crowd. If the load balancer is working properly, you should have no problems with accessing Crowd.
In Crowd, go to> Clustering. The node should be listed as part of the cluster.
If your load balancer supports health checks, configure it to perform a check on
<crowd-node>is the node's hostname or IP address, and
<context-path>is the Crowd's context path (e.g.
/crowd). If the node doesn't respond with a
200 OKresponse within a reasonable time, the load balancer shouldn't direct any traffic to this node.
- After you've added the node to the load balancer, configure the Crowd's base URL to also point to the load balancer. Go to
4. Add the remaining nodes to the cluster
- Copy the Crowd installation directory to the new node.
- Create a home directory, like you did for the first node, and mount
sharedas its sub-directory.
crowd-init.properties, and enter the path to the home directory that you just created.Where can I find crowd-init.properties?
crowd-init.propertiesfile is in
- Go to
<installation-directory>/apache-tomcat/conf/Catalina/localhost, and delete the
openidserver.xmlfile. This is needed because currently the CrowdID component doesn't support clustering, and it must be enabled only on the first node. The component will work as usual.
- Start Crowd. It will read the configuration from the shared directory, and start without any extra setup.
- Take a look around the new Crowd instance. Verify that user and group management, directory synchronization, and any custom integrations all work as expected.
- Again, verify that the node was added to the cluster. In Crowd, go to
If everything looks fine, you can configure your load balancer to start routing traffic to the new node. Once you do this, you can make a couple of changes in one Crowd instance to see if they're visible in other instances as well.
Adding node names
When displaying information about your nodes in the Crowd footer or on the
cluster.node.name system property, like in the following example:
Well done! Crowd Data Center is now at your service.
Interested in learning more about what Crowd Data Center provides? Click here for an overview.