How to Install Apache Cassandra 3.11.x on Debian 9

Using a Different System?

  • How to Install Apache Cassandra 3.11.x on CentOS 7

  • How to Install Apache Cassandra 3.11.x on Ubuntu 16.04 LTS

Are we missing a guide for your target system? Request one, or submit your own!

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.

Step 1: Install OpenJDK JRE 8

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/profilesource /etc/profileecho $JAVA_HOME

Step 2: Install Python 2.7, if it’s missing on your system

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

Step 3: Install the latest stable release of Apache Cassandra

Create the Apache Cassandra 3.11.x apt repo:

echo "deb 311x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.listcurl | 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 --recv-key A278B781FE4B2BDAsudo apt-get update

Use the newly added apt repo to install Apache Cassandra:

sudo apt-get install cassandra

Step 4: Test the installation of Apache 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                               RackUN  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

Want to contribute?

You could earn up to $300 by adding new articles

Submit your article
Suggest an update
Request an article

No comments

Powered by Blogger.