In this tutorial, we will show you how to install Apache Cassandra on AlmaLinux 8. For those of you who didn’t know, Apache Cassandra is a free and open-source distributed NoSQL database management system. Generally, it is used as a real-time data store for transactional applications and as a read-intensive database. It supports relational databases including MySQL, PostgreSQL, and Microsoft SQL.
This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo
‘ to the commands to get root privileges. I will show you the step-by-step installation of Apache Cassandra on an AlmaLinux 8. You can follow the same instructions for CentOS and Rocky Linux.
Prerequisites
- A server running one of the following operating systems: AlmaLinux 8.
- It’s recommended that you use a fresh OS install to prevent any potential issues.
- SSH access to the server (or just open Terminal if you’re on a desktop).
- A
non-root sudo user
or access to theroot user
. We recommend acting as anon-root sudo user
, however, as you can harm your system if you’re not careful when acting as the root.
Install Apache Cassandra on AlmaLinux 8
Step 1. First, let’s start by ensuring your system is up-to-date.
sudo dnf update sudo dnf install epel-release sudo install dnf-plugins-core
Step 2. Installing Java.
Apache Cassandra requires Java 8 to function. Run the following command below to install Java 8 to your AlmaLinux system:
sudo dnf install java-1.8.0-openjdk java-1.8.0-openjdk-devel
Confirm the installation of Java:
java -version
You will also need to install cqlsh
utility to your AlmaLinux system. You can install it using the following command:
pip2 install cqlsh
Confirm the installation of cqlsh
:
cqlsh --version
Step 3. Installing Apache Cassandra on AlmaLinux 8.
By default, Apache Cassandra is not available on AlmaLinux 8 base repository. Now run the following command to add the Apache Cassandra repository:
nano /etc/yum.repos.d/cassandra.repo
Add the following lines:
[cassandra] name=Apache Cassandra baseurl=https://www.apache.org/dist/cassandra/redhat/40x/ gpgcheck=1 repo_gpgcheck=1 gpgkey=https://www.apache.org/dist/cassandra/KEYS
Save and close the file then, install Apache Cassandra with the command below:
sudo dnf update sudo dnf install cassandra
Step 4. Create a Systemd Unit file for Cassandra.
Now we create a systemd
service file to manage the Apache Cassandra service:
nano /etc/systemd/system/cassandra.service
Add the following lines:
[Unit] Description=Apache Cassandra After=network.target [Service] PIDFile=/var/run/cassandra/cassandra.pid User=cassandra Group=cassandra ExecStart=/usr/sbin/cassandra -f -p /var/run/cassandra/cassandra.pid Restart=always [Install] WantedBy=multi-user.target
Save and close the file, then start and enable the service to start at boot:
sudo systemctl daemon-reload sudo systemctl start cassandra sudo systemctl enable cassandra
You can also verify that Cassandra is running with the command below:
nodetool status
Output:
Datacenter: datacenter1 ======================= Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN 127.0.0.1 46.36 KiB 16 100.0% 4fGDTe-2af9-4841-98hdp-bff03m0dc5 rack1
You can also connect to Cassandra with the following command:
cqlsh
Step 5. Change Cassandra Cluster Name.
Finally, in order to change the Cassandra cluster name, connect to Cassandra with the following command:
cqlsh
Replace the [clustername]
with your new cluster name in the command below:
cqlsh> UPDATE system.local SET cluster_name = 'idroot cluster' WHERE KEY = 'local';
Next, exit from the Cassandra shell:
cqlsh> exit
After that, edit the Apache Cassandra main configuration file:
sudo nano /etc/cassandra/conf/cassandra.yaml
Replace the value of the variable cluster_name
with the name of your choosing:
cluster_name: 'idroot cluster'
Save and close the file, then restart Apache Cassandra to apply the changes:
sudo systemctl restart cassandra
Congratulations! You have successfully installed Apache Cassandra. Thanks for using this tutorial for installing Apache Cassandra on your AlmaLinux 8 system. For additional help or useful information, we recommend you check the official Apache website.