CE Install Guide

James Davies

Overview

Information and Resources related to installing Kinetic Request CE locally. For a hosted trial, checkout our hosted version @ kinops.io

Requirements

Cassandra Database Server

  • Linux or Windows server, preferably Ubuntu Linux 14.04. See the preferred architecture diagram for details.
  • Oracle Java SE JDK - v1.8.0_66-b17 or later
  • Python - v2.7 or later (Used by cqlsh, which is a command line CQL tool. It is not required by Cassandra or Kinetic Request CE.)
  • Apache Cassandra - v3.0 or later
  • Ensure each Cassandra node's time is in sync with the Kinetic Request CE web server environment. Clock drift between the Cassandra cluster and the Kinetic Request CE web servers can cause issues when performing batch operations (including kapp or form slug renames). Kinetic recommends using the NTP service to keep the servers in sync.

Kinetic Request CE Web Server

  • Linux or Windows server, preferably Ubuntu Linux 14.04 or later
  • Oracle Java SE JDK - v1.8.0_66-b17 or later
  • Apache Tomcat - v8.0.27 or later, or other Java web server supporting the 3.1 servlet spec and 2.3 JSP spec
  • Ensure each Kinetic Request CE web server is in sync with the each Cassandra server. Clock drift between the Cassandra cluster and the Kinetic Request CE web servers can cause issues when performing batch operations (including kapp or form slug renames). Kinetic recommends using the NTP service to keep the servers in sync.

Other Software for Kinetic Request CE Web Server

Other software that is not required, but nice to have on the Kinetic Request CE web server.

  • Git - for managing Kinetic Request bundles and Kinetic Task handlers
  • JRuby v1.7.12 - for testing Kinetic Task handlers

Notes

For a development / testing environment, it is acceptable to install the Cassandra database on the same server as the Kinetic Request CE web application. For a production environment, it is strongly encouraged to setup a Cassandra database cluster with at least 3 nodes, and install the Kinetic Request CE web application on a separate server.

Downloads

All Kinetic Request CE release can be found on our release page (see related article).

Installation

  • Oracle Java SE - v1.8.0_66-b17 or later

  • Python - v2.7 or later

  • Apache Cassandra v3.0 or later

    • Follow these instructions if installing a multi-node production environment

    • Additional Cassandra configurations (made in cassandra.yaml file after installing cassandra)

      • Increase the batchsizefailthresholdin_kb (cassandra.yaml) value from 50 to 500
      • Determine the endpoint_snitch setting (cassandra.yaml) based on how the cluster is installed.
      • Ensure each Cassandra node's time is in sync with the Kinetic Request CE web server environment. Clock drift between the Cassandra cluster and the Kinetic Request CE web servers can cause issues when performing batch operations (including kapp or form slug renames). Kinetic recommends using the NTP service to keep the servers in sync.
      • Remember to apply these settings to each node (if multi-node cluster) and restart cassandra to apply settings.
    • Download the Request CE schema.cql file to create the necessary tables in Cassandra.

      • Download the Kinetic Request CE schema

      • Create the Kinetic Request CE keyspace and schema

        • From a bash terminal, run the Cassandra CQL Shell program: cqlsh

        • Create the keyspace and tables for Request CE by typing the following commands in the CQL shell.

          • If using the command line cqlsh program:

            • Create the kineticcore keyspace: `CREATE KEYSPACE kineticcore WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1};`

              • NOTE: kinetic_core is the default keyspace.

              • NOTE: The replication factor should be adjusted to match the number of nodes in your cassandra cluster.

            • Edit the downloaded schema.cql file with a text editor and add the following to the first line of the file: use kinetic_core;

              • NOTE: kinetic_core is the default keyspace. Use the correct keyspace if your installation is different
            • Run the file with the cqlsh program:

              • cqlsh -e "SOURCE '/full/path/to/schema.cql';"
          • If using DevCenter:

            • Ensure the correct connection and keyspace are selected. The default keyspace is kinetic_core.
            • Open the schema.cql file from the File -> Open File... menu option.
            • Run the schema.cql file.
  • Apache Tomcat- v8.0.27 or later

  • Deploy Kinetic Request Web Application

    • Move the kinetic.war file into the Apache Tomcat webapps directory (/webapps/)
    • Navigate to the Kinetic Web Application

    • Optionally configure the applications data directory to store configurations outside of the kinetic webapp (this will make future upgrades much easier).