How to Install Cassandra on Ubuntu 16.04 LTS
Apache Cassandra is a free open-source database system that is NoSQL based; This means that Cassandra does not use the table model seen in MySQL, MSSQL or PostgreSQL, but instead uses a cluster model. It's designed to handle large amounts of data and is highly scalable. In this tutorial, we will be installing Cassandra and its prerequisites, Oracle Java, and if necessary the Cassandra drivers.
Pre-Flight Check
- We are logged in as root on an Ubuntu 16.04 VPS server powered by Liquid Web!
- Apache Cassandra and this article assume that you are using Oracle Java Standard Edition 8, as opposed to OpenJDK. Please verify your version of Java by typing the command below into your terminal:
java --version
- At the time of this article, Python 2.7.11 and later versions will need to install updated Cassandra drivers to fix a known bug with the cqlsh command. You can check your Python version similar to checking your Java version:
python --version
- If you have Python 2.7.11+ or later, download the required driver by running the pip command. You will need pip installed. Within this tutorial, we will show you how to install pip. However, pip is usually pre-installed with Python by default.
Installation of Apache Cassandra
Step 1: Install Oracle Java (JRE)
Cassandra requires your using Oracle Java SE (JRE) installed on your server. First, you will have to add Java from the Oracle website. Once downloaded, run the installer and when complete, verify the default version of Java by typing:
java -version
You'll receive the following or something very similar :
Step 2: Installing Apache Cassandra
First, we have to install the Cassandra repository to /etc/apt/sources.list.d/cassandra.sources.list directory by running following command (When we made this article Cassandra 3.6 was the current version. You may need to edit this line to reflect the latest release by updating the 36x value. For example, use 37x if Cassandra 3.7 is the newest version.):echo "deb http://www.apache.org/dist/cassandra/debian 36x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
Next, run the cURL command to add the repository keys :
curl https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -
We can now update the repositories:
sudo apt-get update
Add the public key by running the following command:
sudo apt-key adv --keyserver pool.sks-keyservers.net --recv-key A278B781FE4B2BDA
Repeat the update to the repositories:sudo apt-get update
Finally, finish installing by entering the following:sudo apt-get install cassandra
Verify the installation of Cassandra by running:nodetool status
The desired output will show UN meaning everything is up and running normally.
Step 3: Connect with cqlsh
If you have an older version of Python before 2.7.11, you'll skip this step and start using Cassandra with the cqlsh command. Good for you! You have successfully installed Cassandra!cqlsh
You should see something similar to this:Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.6 | CQL spec 3.4.2 | Native protocol v4]
Use HELP for help.
- /etc/cassandra is the default file configuration location.
- /var/log cassandra and /var/lib cassandra are the default log and data directories location.
However, if you get the following error,
Connection error: ('Unable to connect to any servers', {'127.0.0.1': TypeError('ref() does not take keyword arguments',)}),
you'll update the Cassandra drivers. These drivers have a known bug with Cassandra and later versions of Python. Check your Python version by typing:python --version
Luckily, I am going to show you how you can fix this error in 3 easy steps by downloading the drivers.
Step 3a:First we will need pip installed. If you don't have it already, you can get it with the following command.
sudo apt-get install python-pip
Step 3b
Once pip is installed, run the following to install the new Cassandra driver. Please note this command may take a while to execute. Grab a snack and wait for it to complete. It can take 5-10 minutes to install fully.
pip install cassandra-driver
Step 3c
Finally disable the embedded driver by entering :
export CQLSH_NO_BUNDLED=true
You should now be able to run the cqlsh command.
cqlsh
You should see this if successful :
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.6 | CQL spec 3.4.2 | Native protocol v4]
Use HELP for help.
To exit cqlsh type exit:cqlsh> exit
Congrats! You have successfully installed Cassandra!
Cassandra should start automatically, but you’ll want to stop Cassandra to make any additional configuration changes. Start and stop it with the following:
sudo service cassandra start
sudo service cassandra stop
The Most Helpful Humans In Hosting™
We pride ourselves on being The Most Helpful Humans In Hosting™! Our support staff is always available to assist with any Dedicated, Cloud, or VPS server issues 24 hours a day, 7 days a week 365 days a year.
We are available, via our ticketing systems at support@liquidweb.com, by phone (at 800-580-4986) or via a LiveChat for whatever method you prefer. We work hard for you so you can relax.
Related Articles:
About the Author: Michelle Almendarez
Michelle Almendarez started her love for technology at the University of Texas at San Antonio where she pursued a degree in Computer Science. She has written several Knowledge Base articles for Liquid Web starting in 2018. She has experience with video editing, web design, and server management and in her free time likes to post cute pictures of her dog “Ghost” on Facebook. She sustains her healthy lifestyle by eating only organic farm-raised tacos with her coffee daily.
Our Sales and Support teams are available 24 hours by phone or e-mail to assist.
Latest Articles
How to Clone a Drupal Site to Another Domain
Read ArticleTop Eight Virtualization Security Issues and Risks
Read ArticleAccessing Man Pages on Ubuntu 16.04 LTS
Read ArticlePremium Business Email Pricing FAQ
Read ArticleMicrosoft Exchange Server Security Update
Read Article