Revision as of 16:32, December 5, 2016 by Sschlich (talk | contribs) (Cassandra Requirements)
Jump to: navigation, search

Prerequisites

Before deploying and configuring Interaction Recording Web Services, make sure your system meets the following minimum requirements:

OS Requirements

  • Red Hat Enterprise Linux, version 6

Java Requirements

Jetty Requirements

  • Jetty 9.2.14.v20151106 is embedded in Interaction Recording Web Services and doesn't require a separate installation.

Cassandra Requirements

Interaction Recording Web Services stores the information about call recordings in a Cassandra database. For each contact center, the distinct column families with unique names exist for storing call recording information. These column families are created when the contact center is created, and deleted when contact center is deleted.

Important
  • Interaction Recording Web Services deletes column families only if they do not contain any call recordings; otherwise they should be deleted manually from Cassandra using the cassandra-cli tool.
  • Interaction Recording Web Services and Web Services and Application share the same Cassandra instance within the same deployment. If you are using Interaction Recording Web Services with Web Services and Applications in the same environment, verify that your Cassandra version is the same for both components and all nodes.

Interaction Recording Web Services requires that your environment includes Cassandra 1.2. Complete the steps in the procedures below to install and configure Cassandra. Install and configure Cassandra according to Installing and Configuring Cassandra.

Installing Cassandra

Complete this procedure for each Cassandra node.

Prerequisites

Start

  1. Download the latest 1.2.x version of Cassandra.
  2. Copy the Cassandra archive to the installation directory. For example, /usr/local
  3. Use a tar utility to extract the files. For example, tar -zxvf apache-cassandra-1.2.6-bin.tar.gz
  4. Add directories for data, commitlog, and saved_caches. You can create these directories anywhere or in the default locations configured in the Cassandra_install_dir/conf/cassandra.yaml file. For example:
    • /var/lib/cassandra/data
    • /var/lib/cassandra/commitlog
    • /var/lib/cassandra/saved_caches
  5. Add a directory for logging. You can create this directory anywhere, such as /var/log/cassandra/.

End

Configuring Cassandra

The procedures below describe how to create the Cassandra keyspace for the following scenarios:

  • Development — 1 Cassandra node (appropriate for a development or lab environment)
  • Single Datacenter — 1 datacenter with a minimum of three Cassandra nodes
Important
For more complex Cassandra deployments, please consult with Genesys.

Select a tab below for the procedure that matches your deployment scenario.

Configuring Cassandra (1 Cassandra node)

Important
The files modified in this procedure are typically found in the Cassandra_install_dir/conf directory.

Start

  1. Modify the cassandra.yaml file:
    1. Set seeds to the list of host name of the node. For example: -seeds: “127.0.0.1”
    2. Set listen_address and rpc_address to the host name.
    3. Set data_file_directories, commitlog_directory, and saved_caches_directory to the directories you created in Step 4 of Installing Cassandra.
  2. Save your changes and close the file.
  3. Open the log4j-server.properties file and set the log4j.appender.R.File property to the directory you created in Step 5 of Installing Cassandra.
  4. Save your changes and close the file.

End

Configuring Cassandra (1 datacenter)

Complete the steps below for each node.

Important
The files modified in this procedure are typically found in the Cassandra_install_dir/conf directory.

Start

  1. Modify the cassandra.yaml file:
    1. Set the cluster_name. It must be the same name on all nodes.
    2. Set the initial_token according to the node's place in ring. It must be one of the following:
      Node #1:  -9223372036854775808
      Node #2:  -3074457345618258603
      Node #3:   3074457345618258602
    3. Important
      The tokens shown here can be used for a three-node Cassandra cluster in a single datacenter. If you are using a different topology or cluster size, consult the Cassandra documentation.
    4. Set seeds to the list of host names of all nodes. For example: -seeds: "node1, node2, node3"
    5. Set listen_address and rpc_address to the host name.
    6. Set data_file_directories, commitlog_directory, and saved_caches_directory to the directories you created in Step 4 of Installing Cassandra.
    7. Change endpoint_snitch to PropertyFileSnitch.
  2. Save your changes and close the file.
  3. Open the log4j-server.properties file and set the log4j.appender.R.File property to the directory you created in Step 5 of Installing Cassandra.
  4. Save your changes and close the file.
  5. Open the cassandra-topology.properties file and update for you cluster topology. For each node in your cluster, add the following line:
    [node]=[datacenter]:[rack]
    • [node] — The IP address of the node
    • [datacenter] — The name of the datacenter for this node.
    • [rack] — The name of the rack for this node.

    The following is a sample cassandra-topology.properties file for a Single Datacenter scenario:

    192.0.2.10=datacenter1:rack1
    192.0.2.11=datacenter1:rack1
    192.0.2.12=datacenter1:rack1
  6. Save your changes and close the file.

End

Verifying the Cassandra Installation

Start

  1. Start all Cassandra nodes using the following command: Cassandra_install_dir/bin/cassandra
  2. Use the nodetool utility to verify that all nodes are connected by entering the following command: Cassandra_install_dir/bin/nodetool -h Cassandra_host ring

    The following is sample output for a Single Datacenter scenario with three Cassandra nodes:
    /genesys/apache-cassandra-1.2/bin$ ./nodetool ring
    Address     DC           Rack   Status  State   Load      Owns     Token
    192.0.2.10  datacenter1  rack1  Up      Normal  14.97 MB  100.00%  -9223372036854775808
    192.0.2.11  datacenter1  rack1  Up      Normal  14.97 MB  100.00%  -3074457345618258603
    192.0.2.12  datacenter1  rack1  Up      Normal  14.97 MB  100.00%   3074457345618258602

    The following is sample output for a Development scenario with a single Cassandra node:

    /genesys/apache-cassandra-1.2/bin$ ./nodetool ring
    Address         DC          Rack        Status State   Load            Effective-Ownership Token                                       
    127.0.0.1       datacenter1 rack1       Up     Normal  1.89 MB         100.00%             76880863635469966884037445232169973201

End

Genesys Environment

For more information about the required Genesys environment for GIR, refer to the Minimum Recommended Versions.

Next Step

Comments or questions about this documentation? Contact us for support!