High Availability - Best Practices

Applies to Collaborator 14.5, last modified on April 18, 2024

Generally, the Collaborator server is very stable and resilient. In most environments, it is appropriate to simply try configuration changes or upgrades in-place (backup first, of course).

However if the server is in constant use by a large number of users, or if Collaborator is vital for your business processes, it may be a good idea to be more cautious. To ensure that a change will not cause a problem on your production Collaborator server, it is best to try it first on a test server.

Create Test Server

A test server should mirror your production server as closely as possible so that the results of the change are reproducible. Follow these steps to create a test server:

  1. Provision a machine. This should be physically different hardware than the machine that is running your production Collaborator server, and ideally it should have the same specifications. It does not have to be a perfect match, but the closer you get it to the production server the more confident you will be when testing the change.

    • Hardware – This is not that important to get exactly identical, unless you are concerned about performance issues.

    • Operating system – This is important. Make sure you install the same operating system version, especially if you are using Windows.

    • Java virtual machine – This is vitally important. Make sure that you install exactly the same version of Java.

    • Network configuration – This is usually not that important, unless your change involves communicating with an external system like LDAP, a database service running on a different machine, or configuring HTTPS.

    • Database – This is very important, especially when testing upgrades to new versions of Collaborator.

      The test server must have its own database. Do not run the test server with your production database!
  2. Install the Collaborator server.

    • Download the installer for exactly the same version as your production server.

    • Run the installer. You can click Next through all the screens and accept the default settings, because those will be overwritten anyway in step 4.

    • When you click Finish in the installer, it will open a browser on a page that says Initialize database. Do not click the button, instead close the browser.

    • Shut down the Collaborator server.

  3. Copy your content cache. This directory stores the content of the files being reviewed and can become bery large.

    The directory is configured in the <Collaborator Server>/tomcat/conf/Catalina/localhost/ROOT.xml file and defaults to <Collaborator Server>/tomcat/collaborator-content-cache. Copy the entire directory to the test server in the same location.

    You can skip this step, and your content cache will simply be empty. Everything will work except when you look at the content of files in old reviews you will see a message: This content has been archived by the Administrator.

    Another option is to use a network share to the content cache of your production server, mounted to the file system of the test server. While not ideal, this is fairly safe because Collaborator only ever writes to the content cache, and never deletes.

  4. Copy your configuration – that is, the following files from the production server to the test server.

    • <Collaborator Server>/ccollab-server.vmoptions
    • <Collaborator Server>/tomcat/conf/collab.ks (may not exist, if not using HTTPS connection)
    • <Collaborator Server>/tomcat/conf/Catalina/localhost/ROOT.xml
  5. Edit the <Collaborator Server>/tomcat/conf/Catalina/localhost/ROOT.xml file using a text editor and change the database information (url, username, password) to point to the test database.

  6. Copy your database data. To do that, migrate a copy of the data from your production database to your test database as described in Backup and Migration.

  7. Start up Collaborator.

  8. Immediately disable email notifications so that your users do not get double notifications from your production server and your test server.

  9. Click around and make sure everything works. Licensing is not an issue – since you have migrated your database, your license will work on the test server.

Test Changes

Once you have set up your test server you can use it to test any change you are considering to Collaborator, especially upgrades to new versions or global configuration changes.

See Also

Backup and Migration
Admin Tasks

Highlight search results