Installing Cassandra locally
Installing Cassandra on your local machine for experimental or development purposes is as easy as downloading and unzipping the tarball (the .tar
compressed file). For development purposes, Cassandra does not have any extreme requirements. Any modern computer with 1 GB of RAM and a dual-core processor is good to test the water. All the examples in this chapter are performed on a laptop with 4 GB of RAM, a dual-core processor, and the Ubuntu 14.04 operating system. Cassandra is supported on all major platforms; after all, it's Java. Here are the steps to install Cassandra locally:
- Install Oracle Java 1.6 (Java 6) or higher. Installing the JVM is sufficient, but you may need the Java Development Kit (JDK) if you are planning to code in Java:
# Check whether you have Java installed in your system $ java -version java version "1.7.0_21" Java(TM) SE Runtime Environment (build 1.7.0_21-b11) Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)
If you do not have Java, you may want to follow the installation details for your machine from the Oracle Java website (http://www.oracle.com/technetwork/java/javase/downloads/index.html).
- Download Cassandra 2.0.0 or a newer version from the Cassandra website (http://archive.apache.org/dist/cassandra/ or http://cassandra.apache.org/download/). This book uses Cassandra 2.1.2, which was the latest version at the time of writing this book. Decompress this file to a suitable directory:
# Download Cassandra wget http://archive.apache.org/dist/cassandra/2.1.2/apache-cassandra-2.1.2-bin.tar.gz # Untar to your home directory tar xzf apache-cassandra-2.1.2-bin.tar.gz -C $HOME
The unzipped file location is
$HOME/apache-cassandra-2.1.2
. Let's call this locationCASSANDRA_HOME
. Wherever we refer toCASSANDRA_HOME
in this book, always assume it to be the location where Cassandra is installed. - You may want to edit
$CASSANDRA_HOME/conf/cassandra.yaml
to configure Cassandra. It is advisable to change thedata
directory to a writable location when you start Cassandra as a nonroot user. - To change the
data
directory, change thedata_file_directories
attribute incassandra.yaml
, as follows (here, thedata
directory is chosen as/mnt/Cassandra/data
; you may want to set the directory where you want to put the data):data_file_directories: - /mnt/cassandra/data
- Set the commit log directory:
commitlog_directory: /mnt/cassandra/commitlog
- Set the saved caches directory:
saved_caches_directory: /mnt/cassandra/saved_caches
- Set the logging location. Edit
$CASSANDRA_HOME/conf/log4j-server.properties
as follows:log4j.appender.R.File=/tmp/cassandra.log
With this, you are ready to start Cassandra. Fire up your shell and type in $CASSANDRA_HOME/bin/cassandra -f
. In this command, -f
stands for foreground. You can keep viewing the logs and press Ctrl + C to shut the server down. If you want to run it in the background, do not use the -f
option. If your data
or log
directories are not set with the appropriate user permission, you may want to start Cassandra as superuser using the sudo
command. The server is ready when you see statistics in the startup log: