Installing and Configuring Cassandra
Contents
Before you start installing and configuring Workspace Web Edition & Web Services, first you have to install and configure Cassandra version 1.2. The procedures below are meant to serve as a quick guide on how to do this — for more information, see the Cassandra 1.2 documentation.
Installing Cassandra
Complete this procedure for each Cassandra node.
Prerequisites
- You have installed the latest Java 1.7 JDK 64bit for Linux. For more information, refer to the Java documentation.
Start
-
Download the latest 1.2.x version of Cassandra.
- Copy the Cassandra archive to the installation directory. For example, /usr/local
- Use a tar utility to extract the files. For example, tar -zxvf apache-cassandra-1.2.15-bin.tar.gz
- 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
- 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
Select a tab below for the procedure that matches your deployment scenario.
Configuring Cassandra (1 Cassandra node)
Prerequisites
Start
- Modify the cassandra.yaml file:
- Set seeds to the list of host name of the node. For example: -seeds: “127.0.0.1”
- Set listen_address and rpc_address to the host name.
- Set data_file_directories, commitlog_directory, and saved_caches_directory to the directories you created in Step 4 of Installing Cassandra.
- Save your changes and close the file.
- 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.
- Save your changes and close the file.
End
Configuring Cassandra (1 datacenter)
Complete the steps below for each node.
Prerequisites
Start
- Modify the cassandra.yaml file:
- Set the cluster_name. It must be the same name on all nodes.
- 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
- Set seeds to the list of host names of all nodes. For example: -seeds: "node1, node2, node3"
- Set listen_address and rpc_address to the host name.
- Set data_file_directories, commitlog_directory, and saved_caches_directory to the directories you created in Step 4 of Installing Cassandra.
- Change endpoint_snitch to PropertyFileSnitch.
- Save your changes and close the file.
- 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.
- Save your changes and close the file.
- 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]</nowiki> *<tt>[node]</tt> — The IP address of the node *<tt>[datacenter]</tt> — The name of the datacenter for this node. *<tt>[rack]</tt> — 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
- Save your changes and close the file.
End
Verifying the Cassandra Installation
Prerequisites
Start
- Start all Cassandra nodes using the following command: Cassandra_install_dir/bin/cassandra
- 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