Install and Configure Additional Extractor Instance for High Availability (Linux) pre 5.5

The following guide gives detailed instructions on how to install an additional extractor instance for high availability (slave server) on Linux. Make sure that you have followed the suggested prerequisites defined in the PoolParty System Requirements.

This installation instructions assume that the installation will be made using the following options:

  • A working PoolParty installation is in place (master server)
  • Instance is running on a 64-bit Linux server
  • A user "poolparty" is defined on the server that should be used to run the tomcat server and is able to execute the sudo command.
  • Instance is using the default path /opt
  • Tomcat is running as localhost using port 80

STEP 1: Unpack the application on the slave server

The installation package is delivered as an archive in GNU tar format. Unpack the archive under /opt/, where it will create the folder /opt/poolparty/ as PoolParty-Root directory. You will find the following resulting (sub)directories:

  • /opt/poolparty/bin
    Containing the PoolParty control script.
  • /opt/poolparty/config
    Containing all PoolParty configuration files.
  • /opt/poolparty/data
    Containing all data (e.g. repositories, backups) created by PoolParty.
  • /opt/poolparty/tomcat
    Containing a Tomcat 6 installation adapted for PoolParty including the PoolParty web application.

We strongly recommend not to change the path or location of your PoolParty installation.

STEP 2: Check and adjust data directory ownership and permissions

Running PoolParty involves Tomcat, a Java-based web application server. The server needs to have write access to the PoolParty data directory in order to store various PoolParty-related information. To ensure that this data can be committed to disk without problems, you need to make sure that ownership and permissions of the PoolParty data directory are correct. In order to do this, please choose an unprivileged UNIX user account on the machine hosting PoolParty (a popular and suitable user account is, for example, "www-data" on Debian and derivatives). If no suitable user account exists, please check the documentation of your operating system on how to create one. Recursively change the ownership of the data directory to that of your elected user account by opening a console and running the following command:

sudo chown -R poolparty /opt/poolparty/data

If no user account with the name poolparty exists on your system, this command will fail. Please make sure to choose a user account that is appropriate for your operating system's configuration!

STEP 3: Move your license key to the license directory

Add your license key file to the license directory:

  • /opt/poolparty/config/licenses

STEP 4: Configure replication on the master server

Stop the master server. Add the following code in the solrconfig.xml file for the following cores on the master server.

  • conceptData
  • conceptMatching
  • corpusTerm
  • excludedTerms
  • geo
  • thesaurusBasedDisambiguation

The files can be found here:

  • /opt/poolparty/data/solr/{core-name}/conf/
Example of a master configuration (solrconfig.xml)
<requestHandler name="/replication" class="solr.ReplicationHandler">
  <lst name="master">
    <str name="replicateAfter">startup</str>
    <str name="replicateAfter">commit</str>
    <str name="confFiles">schema.xml,stopwords.txt</str>
    <str name="commitReserveDuration">00:00:10</str>
  </lst>
  <str name="maxNumberOfBackups">1</str>
</requestHandler>

STEP 5: Start the master server.

STEP 6: Configure replication on the additional instance (slave server)

Download the solr-template.tgz archive from the installation folder in our download area. Remove the content of the solr folder and replace it with the content of the solr-template.tgz archive. The solr folder can be found here:

  • /opt/poolparty/data/solr

Adapt the solrcore.properties file to match your environment:

MASTER_CORE_URL=http://my-master.poolparty.biz:80
POLL_TIME=00:00:20
BASIC_AUTH_USER=username
BASIC_AUTH_PWD=password

Copy the file to the conf folder of the following solr cores and remove the file from the top level of the solr folder when done.

  • conceptData/conf
  • conceptMatching/conf
  • corpusTerm/conf
  • excludedTerms/conf
  • geo/conf
  • thesaurusBasedDisambiguation/conf

STEP 7: Start slave server

Open a console and change to root

sudo -i

Make infrastructure scripts and binaries executable:

chmod a+x /opt/poolparty/bin/*

Start instance

/opt/poolparty/bin/poolparty start

Authorization for the additional instance (slave server) is done configuring users in the auth.xml file that can be found here:

  • /opt/poolparty/config/

Per default the user "apiuser" with password "poolparty" is configured.  We strongly recommend to change the default password after the installation.

In case tfidf was calculated on master server you should also include tfidf core into replication configuration.

Post installation check

You can check your system, following this procedure: Controlling the Status of Solr Replication