Before You Begin
Before you set up the nodes in a cluster, you should have already configured a cache
server, as described in Setting Up a
Cache Server. The cluster will require the
presence of a cache server to cache data that should be available to all nodes
in the cluster. If your cache server isn't configured and running, you won't be able to
set up the cluster.
Note: Your license determines whether or not clustering is enabled and how many nodes are
supported. To check on the number of clustered servers your license allows, see the
license information after logging into the Admin Console.
Topology
The nodes in a cluster need to be installed on the same
subnet, and preferably on the same switch. You cannot install nodes in a cluster across
a WAN.
Upgrading
- IMPORTANT If you're upgrading and copying the home directory (such as
/usr/local/jive/applications/<instance_name>/home) from the older
installation, you must preserve the node.id file and the crypto directory from
the home directory before starting the server. The value stored in this file
must be unique among the cluster nodes; that is, each node in a cluster will
have a unique value in the node.id file. You must preserve the node.id file
because it plays a role in storing encrypted information in the cluster; if that
file is lost, you will lose access to the encrypted information.
If you are
deploying a new cluster, it is permissible to copy the contents of the home
directory from the first node (where you set up clustering) to subsequent
nodes -- with the exception of the node.id file. Do not copy the node.id
file to subsequent nodes. If the node.id file does not exist, the
application will generate a new file on startup.
- The cache server must be cleared and restarted before the upgraded application
server nodes are started and try to talk to the cache.
- If you're upgrading a plugin, clear the cache for that plugin and shut down the
cache server first.
Starting a New Cluster
Always wait for the first node in the cluster to be up and running with
clustering enabled before you start other cluster nodes. Waiting a minute or
more between starting each node ensures the nodes are not in competition. As the
senior member, the first node you start has a unique role in the cluster. See
the clustering
overview for more information.
Clocks
- The clocks on all machines must be synchronized for caching to work correctly.
For more information, take a look at Managing Cache
Servers. Also, if you're running in a virtualized environment, you
must have VMware tools installed in order to counteract clock drift.
- If you're running in a virtualized environment, you must have VMware tools
installed in order to counteract clock drift.
Cluster Node Communication
- Do not put a firewall between your cache servers and
your Jive
application servers. If you do so, caching will not work. A firewall is unnecessary because your
application servers will not be sending untrusted communications to the cache
servers, or vice versa. There should
be nothing that might slow down communication between the application servers
and the cache servers.
- All ports between the cache and web application servers must be open.
- Port 6650 should be blocked to external access (but not between the
cluster nodes!) so that any access outside of the datacenter is disallowed. This
is to prevent operations allowed by JMX from being executed on the cache server.
Installing on a Cluster
Important: If, as part of your new installation, you're setting up one node
as a template, then copying the home directory (such as
/usr/local/jive/applications/your_instance_name/home) to other nodes in the cluster,
you must remove the node.id file and the crypto directory from the home
directory before starting the server. The application will correctly populate
them.
- Use the Jive
application package to set up a cache server on a separate machine. See Setting Up a
Cache Server for more information. Note the cache server address for
use in setting up the application servers.
- Before proceeding, make sure the cache server you set up is running. It must be
running while you set up the application server nodes.
- On each node in the cluster, install the application using the package (RPM on
Linux), but don't run the Admin Console's setup wizard.
See the Linux installation instructions for more information on
installing the application.
- Start the primary node and navigate to its instance with a web browser. In the
setup screen provided, enter the address of the cache server you installed, then
complete the Admin Console setup wizard.
- After you've finished with the setup wizard, restart the node.
- Copy the jive.license file, the
jive_startup.xml file, and the search
folder from the home directory on the primary node to the
home directory in each of the other nodes in the cluster.
The home directory is typically found here:
/usr/local/jive/applications/your_instance_name/home.
- On each of the secondary nodes, remove the node.id file
and the crypto directory from the home directory. (The application will
correctly populate these on each node when they are started for the first time.)
- Start the application on each of the secondary nodes (service
jive-application start followed by service jive-httpd
start). Because they are connecting to the same database used by
the primary server, each secondary node will detect that clustering is enabled
and will pick up the configuration you set on the primary node.
- Restart all the servers in the cluster to ensure that the address of each node
in the cluster is known to all the other nodes.