This article is outdated and may not work correctly for current operating systems or software.
Apache Cassandra is a free and open source NoSQL database management system that is designed to provide scalability, high availability, and uncompromised performance.
In this article, I will guide you through installing the latest stable release of Apache Cassandra, Apache Cassandra 3.11.2, on a Debian 9 server instance.
A fresh Vultr Debian 9 x64 server instance with at least 4GB of memory. Insufficient memory will cause Apache Cassandra to exit abnormally.
A sudo user.
The server instance has been updated to the latest stable status.
Apache Cassandra requires the latest release of Java 8. For that you can choose to install the latest release of OpenJDK JRE 1.8 as below:
sudo apt install openjdk-8-jre -y
Having OpenJDK JRE 1.8 installed, you can confirm the installation result:
java -version
The output will be similar to the following:
openjdk version "1.8.0_162"
OpenJDK Runtime Environment (build 1.8.0_162-8u162-b12-1~deb9u1-b12)
OpenJDK 64-Bit Server VM (build 25.162-b12, mixed mode)
Optionally, you can create the JAVA_HOME
environment variable as follows:
echo "JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")" | sudo tee -a /etc/profile
source /etc/profile
echo $JAVA_HOME
Apache Cassandra requires Python 2.7 rather than Python 3. If you operate Apache Cassandra in a Python 3 environment, you may have trouble launching the cqlsh
shell of Apache Cassandra.
First, determine the existence and version of Python on your machine:
python -V
On Debian 9, the output normally will be:
Python 2.7.13
As you see, Python 2.7 is a built-in component on Debian 9. However, if it's missing for some reason, you can install it by running the following command:
sudo apt-get install python
Create the Apache Cassandra 3.11.x apt repo:
echo "deb http://www.apache.org/dist/cassandra/debian 311x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
curl https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -
sudo apt-get update
If you encounter a GPG public key error, run the following commands to add the mentioned Apache Cassandra public key, which is A278B781FE4B2BDA
in this case:
sudo apt-key adv --keyserver pool.sks-keyservers.net --recv-key A278B781FE4B2BDA
sudo apt-get update
Use the newly added apt repo to install Apache Cassandra:
sudo apt-get install cassandra
Start the Apache Cassandra daemon:
sudo service cassandra start
If you want to make Apache Cassandra automatically start at system boot, run the following command:
sudo update-rc.d cassandra defaults
Next, use the nodetool
program to show the status of Apache Cassandra on current node:
nodetool status
The output will resemble the following:
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns (effective) Host ID Rack
UN 127.0.0.1 103.67 KiB 256 100.0% 796aceb9-9adf-41c3-be9a-22b6bb1900d8 rack1
You can use the cqlsh
shell to interact with Apache Cassandra:
cqlsh localhost
The output will be similar to the following:
Connected to Test Cluster at localhost:9042.
[cqlsh 5.0.1 | Cassandra 3.11.2 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
cqlsh>
For now, just type exit
and then press ENTER to quit the cqlsh shell.
If you want to stop Apache Cassandra, execute the following command:
sudo service cassandra stop