Driver FixRecommendedSound, Wi-Fi or graphics acting up? Check drivers firstFind missing or outdated drivers fast.Check DriversOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsPC HealthRecommendedCrashes, freezes, slowdowns? Check your PC nowSpot repairable issues before they interrupt work.Check PC×
Skip to content
World desk11 min

How to Install and Set Up Cassandra on Ubuntu

A complete Ubuntu walkthrough for installing Cassandra from Apache's APT repository, verifying Java and cqlsh, confirming readiness with nodetool, and configuring a safe single node or multi-node cluster.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

On Ubuntu, the most maintainable Cassandra installation is the Apache Cassandra Debian package from its versioned APT repository. Install a supported Java runtime first (Java 11 or 17), add the repository signing key and the series you intend to run, install the package, then wait for the startup log to report that CQL is listening on localhost port 9042. Verify the node with nodetool status (a ready node shows UN, or Up/Normal) and open cqlsh. Cassandra’s default configuration is adequate for an isolated single-node test; a cluster needs deliberate address, seed, storage, topology and security settings.

What you need before installing Cassandra

The commands below use Ubuntu’s APT package manager and the Apache Cassandra Debian repository. They assume an Ubuntu host on which you can run commands with sudo and reach the public package and key servers. Decide whether this is a disposable development node or the first machine in a real cluster before editing configuration: the safe defaults for a local test are not a production topology.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Requirement What to use How to check it
Java runtime Java 11 or Java 17, as listed by the current Apache Cassandra documentation java -version
Python (only if you will use cqlsh) Python 3.8 through 3.13, plus the cqlsh dependencies for your Cassandra release python --version
Privileges Root access through sudo for the key, repository and package steps Run a harmless command such as sudo -v
Network access Outbound HTTPS access to the Apache key and Debian repository Check that DNS and HTTPS work before troubleshooting APT
Installation decision A versioned Cassandra major series, not an unqualified “latest” value Confirm the supported series in the current Apache instructions

For a one-machine experiment, keep Cassandra bound to localhost and do not open its native transport or internode ports to the internet. For a cluster, reserve stable addresses and storage before you install; changing identity and network settings after data has been written can require a controlled rebuild.

Choose an installation method

Apache documents three practical approaches. Ubuntu’s Debian package is usually the clearest choice when you want an APT-managed service and conventional system paths. Docker is convenient when containers are already your operating environment. A tarball keeps the binaries and configuration together and can be installed without root, but you must arrange service management and upgrades yourself.

#1 Best Overall
Sale
TOZO A1 Wireless Earbuds Bluetooth 5.3 Light Weight in Ear Headphones | IPX5 Waterproof,2 Mics for AI Calls,Immersive Premium Sound Bass Headset with Charging Case,32 EQ via App Black
  • [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
  • [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
  • [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
  • [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
  • [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.
Method Best fit Important trade-off
Debian package through APT Ubuntu servers and development machines that should receive package-managed files and service integration Requires a repository key, a selected version series and root privileges
Docker Teams already standardising on containers Networking, persistent volumes, logging and upgrades are managed in the container platform rather than by Ubuntu’s service manager
Tarball Rootless installs, side-by-side experiments or a self-contained directory You must create your own startup, users, permissions, log rotation and upgrade process

The remainder of this guide follows the APT route because it provides the normal Ubuntu package layout and service integration.

Install and verify Java

Cassandra’s current documentation lists Java 11 and Java 17. Do not assume that the newest JDK in an Ubuntu release is supported: check the Cassandra release documentation and install one of those major versions.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Install an OpenJDK package

Use Ubuntu’s package archive or another distribution that supplies a supported build. For example, after updating Ubuntu’s existing package indexes, choose one supported major version:

sudo apt-get update
sudo apt-get install openjdk-17-jdk

If your selected Cassandra series calls for Java 11 instead, install the corresponding OpenJDK 11 package rather than installing both versions and leaving the active runtime ambiguous.

Confirm the runtime Cassandra will see

java -version

Read the major version in the output. If it is not 11 or 17, correct the system’s default Java selection before installing Cassandra. When several JDKs are present, Ubuntu’s alternatives system can select the active java executable; verify again in the same shell in which you will start the service.

Install Python for cqlsh when needed

The Cassandra server does not require Python for its database process, but the cqlsh command-line shell requires Python 3.8–3.13 and the dependencies specified by the Cassandra release documentation. Install a supported Python version if you plan to use the shell, then check it:

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
python --version

If python is not available or reports an unsupported major/minor version, install or select a supported interpreter before diagnosing a cqlsh failure.

Rank #2
Sale
Smart Watch for Men Women Compatible with iPhone Samsung Android Phone 1.69 inch Full Touch Screen IP68 Waterproof Bluetooh Fitness Tracker Heart Rate/Sleep Monitor (Black)
  • 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
  • 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
  • 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
  • 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
  • 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.

Select the Cassandra APT repository series

Cassandra’s Debian repository is versioned by major series. The series token is not a generic placeholder that APT can infer: replace it with the supported series you have chosen. The Apache example for the 5.0 series uses 50x. Repository availability can change as releases move through support, so confirm the current series in Apache’s installation documentation immediately before copying the command.

Install the Apache signing key

Create the modern APT keyring directory and download Apache’s KEYS file to the path used by the signed repository entry:

sudo mkdir -p /etc/apt/keyrings
sudo curl -o /etc/apt/keyrings/apache-cassandra.asc https://downloads.apache.org/cassandra/KEYS

The file should be readable by APT. If curl is missing, install it from Ubuntu’s package archive or use another HTTPS-capable downloader, keeping the destination and the downloaded Apache KEYS content intact.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Add the signed repository

Write a dedicated source-list file. In this example, 50x selects the Cassandra 5.0 series; substitute the series confirmed in the current documentation:

echo "deb [signed-by=/etc/apt/keyrings/apache-cassandra.asc] https://debian.cassandra.apache.org 50x main" | sudo tee /etc/apt/sources.list.d/cassandra.sources.list

The signed-by option limits this repository to the key you downloaded instead of trusting a key globally. Check the resulting file if APT reports that a source is malformed:

cat /etc/apt/sources.list.d/cassandra.sources.list

Install the Cassandra package

Refresh package indexes and install Cassandra:

sudo apt-get update
sudo apt-get install cassandra

The packaged installation places Cassandra’s binaries and configuration in the system package layout and runs the service as the cassandra operating-system user. Exact configuration and log paths differ from a tarball installation, so use the paths installed on this host rather than copying a path from an unrelated setup.

Check the system service

On an Ubuntu system using systemd, inspect the unit after installation:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
New Bee Guitar Cable 10ft Electric Instrument Bass AMP Cord
  • [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
  • [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
  • [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
  • [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
  • [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by
sudo systemctl status cassandra --no-pager

If the package did not leave the service running, start it explicitly:

sudo systemctl start cassandra

Do not repeatedly restart a node that is still bootstrapping. First read the startup log and determine whether it is progressing or exiting because of Java, permissions, address or storage errors.

Wait for readiness and verify the node

Follow the startup log

Cassandra is not ready the instant the process appears. Follow the system log used by your installation:

tail -f logs/system.log

The relative path above is the form shown in Apache’s documentation. A Debian package can place the file in a system log directory instead, so locate the package’s actual system.log if that relative path does not exist. The readiness message indicates that the node is listening for CQL clients on localhost port 9042. Wait for that message before testing clients or changing settings.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Read the node status

nodetool status

In the status table, the node should eventually show UN. Apache defines that status as “Up/Normal”: the process is up and the node is in its normal ring state. A blank, DN or other status means the node is not ready or is not healthy yet; use the log to find the cause instead of treating a command that returned output as proof of readiness.

Open cqlsh

cqlsh

A successful connection opens the CQL prompt. With the default local development binding, no hostname is needed. If you intentionally changed the native transport address or port, pass those values to cqlsh according to your release’s command-line options.

Check Healthy result If it is different
Startup log Message that CQL is listening on localhost:9042 Continue reading the log for Java, address, permissions or disk errors
nodetool status UN (Up/Normal) Wait for startup completion, then inspect the log and service status
cqlsh CQL prompt appears Check Python support, cqlsh dependencies, the listening address and port

Run a small CQL smoke test

Once the prompt appears, you can verify that the server accepts schema and data operations without exposing it to another machine. The following example creates a disposable keyspace and table, writes one row and reads it back:

Rank #4
BSIMB 15.6" Digital Family Calendar & Chore Chart, No Subscription Fees
  • Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
  • Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
  • All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
  • Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
  • Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.
CREATE KEYSPACE demo
WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1};

USE demo;

CREATE TABLE messages (
    id uuid PRIMARY KEY,
    body text
);

INSERT INTO messages (id, body)
VALUES (uuid(), 'Cassandra is ready');

SELECT * FROM messages;

SimpleStrategy with a replication factor of 1 is suitable only for a one-node exercise. A multi-node production design needs a replication strategy and factor that match its topology, and those choices should be made with the cluster’s snitch and failure domains in mind.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Understand cassandra.yaml before changing it

The main Cassandra configuration file is cassandra.yaml. Apache’s configuration guidance says its defaults are sufficient for exploring a simple single-node cluster. That does not make the defaults a production configuration, and it does not make them safe to copy unchanged to a multi-node deployment.

Find the file for your installation type

  • APT package: use the configuration directory created by the Ubuntu package. Package-managed paths can differ by distribution and release; inspect the installed unit or package file list rather than assuming a tarball path.
  • Tarball: configuration normally remains under the extracted installation’s conf directory.

Back up the file before editing it, keep one change per maintenance window, and preserve the indentation and YAML syntax. A malformed value can prevent the service from starting.

Single-node development

For a local test on one Ubuntu machine, leave the defaults in place unless you have a specific reason to change them. Keep the node reachable only from localhost, use the default local CQL endpoint, and avoid advertising an address that other machines cannot route to. This lets you validate Java, the service, nodetool and cqlsh without creating a misleading cluster configuration.

Multi-node settings that require a deliberate design

Area What to decide Why it matters
Cluster identity Set one intentional cluster_name and use it consistently on every node Nodes with different identities must not be joined as though they were one cluster
Listen and broadcast addresses Choose the interface on which a node listens and the address it advertises to peers; review listen_address, broadcast_address and related interface settings in the release’s sample file Peers must be able to reach the advertised address, and it must remain stable
Seeds Define the seed list in the seed-provider section with reachable, stable seed addresses Seeds help new nodes discover the existing gossip ring; they are not a substitute for a complete topology plan
Storage Choose data, commit-log, hints and saved-cache directories on suitable persistent volumes Capacity, latency, ownership and failure recovery depend on these paths
Client/RPC binding Set the native transport or RPC bind and broadcast values required by your clients Binding to localhost prevents remote clients; binding broadly without firewall and authentication controls exposes the service
Endpoint snitch Select a snitch that represents your racks, zones or regions Topology-aware routing and replica placement depend on accurate failure-domain information
Authentication and authorization Choose and configure authentication before exposing CQL outside a trusted host Unauthenticated access can allow any reachable client to read or change data
Encryption Plan client and internode encryption, certificates and trust relationships Traffic otherwise crosses the network without the protection your deployment may require

A safe order for building a cluster

  1. Assign each machine a stable, routable address and verify name resolution or direct connectivity between intended peers.
  2. Install the same supported Cassandra major series and a supported Java major version on every node.
  3. Set the same cluster name, consistent seed definitions and node-specific listen/broadcast addresses in each node’s cassandra.yaml.
  4. Choose storage directories on persistent disks and make sure the cassandra user can read and write them.
  5. Configure the endpoint snitch and security controls before allowing application traffic from outside the private network.
  6. Start one node, confirm its log and nodetool status, then add nodes one at a time while watching the ring and logs.

Do not use a single-node test’s localhost addresses, one-node replication settings or default security posture as a template for production.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Common installation and startup problems

APT cannot update the repository

  • Confirm that the series token in /etc/apt/sources.list.d/cassandra.sources.list is currently supported; a retired or mistyped series will not resolve.
  • Check that the source uses the exact keyring path /etc/apt/keyrings/apache-cassandra.asc named by signed-by.
  • Verify that the KEYS download completed and that the host can resolve and reach debian.cassandra.apache.org and downloads.apache.org over HTTPS.
  • Run sudo apt-get update again and read the first repository error. A later warning is often only a consequence of the first failure.

Cassandra exits immediately

Check the active Java runtime with java -version, then inspect the system log and service journal:

sudo journalctl -u cassandra --no-pager -n 100

Look for an unsupported Java major version, a malformed cassandra.yaml, an address already in use, an unwritable storage directory or a filesystem that is full. Correct one cause at a time and restart only after the log identifies the failure.

The node does not show UN

Allow the initial startup to finish and continue following system.log. If the process is running but the status is not normal, check that the node’s advertised address is reachable and that its storage directories are writable. On a new single-node test, do not add seed or cluster settings copied from another environment simply because the status is slow to change.

cqlsh is missing or will not start

Verify that Python reports a supported version between 3.8 and 3.13. Install the cqlsh dependencies specified for your Cassandra release, then invoke cqlsh again after Cassandra reports that CQL is listening. If the shell connects to the wrong endpoint, provide the intended host and port explicitly rather than changing server configuration blindly.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Remote clients cannot connect

A default single-node installation commonly listens only on localhost. Confirm the native transport bind and broadcast settings in cassandra.yaml, then check host firewall rules and network routing. For a cluster, expose only the interfaces and ports required by trusted clients and peers, and enable the authentication and encryption controls you selected.

Docker and tarball alternatives

Docker

Use the Docker method when container lifecycle, persistent volumes, networking and logging are already managed by your environment. Pin a Cassandra image to the major series you have selected, persist the data directories, and publish only the client and internode interfaces your design requires. Container defaults do not remove the need to choose a cluster name, seeds, addresses, topology and security settings.

Tarball

A tarball keeps Cassandra’s binaries and its conf directory together and can be unpacked without root. You must supply the operational pieces that the Debian package normally integrates: a dedicated operating-system user, file ownership, a service definition, log handling, upgrades and startup ordering. The same Java support matrix and cassandra.yaml decisions apply.

After the first successful start

  • Record the Cassandra major series, Java version and installation method so future upgrades use a compatible combination.
  • Save a known-good copy of cassandra.yaml and document every intentional deviation from the defaults.
  • For a development node, keep test data disposable and the service bound to localhost.
  • For a cluster, validate node status, replication, storage capacity, firewall rules and security before sending application traffic.
  • Use the startup log, nodetool status and a real cqlsh connection as three separate checks; passing one does not prove the others.

Once Java is supported, the versioned APT source is correctly signed, the service log reports CQL readiness, and nodetool status shows UN, the Ubuntu installation itself is complete. The remaining work is deployment design: turning the deliberately simple defaults into a topology and security configuration appropriate for the data and network you intend to run.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
PC Slower Than It Used to Be?Free scan - under a minute
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.