Installing Apache Cassandra on SUSE Linux needs a clear package source because Cassandra is not normally installed from the default openSUSE or SUSE Linux Enterprise Server repositories. The Apache project publishes RPM packages, and zypper can use that repository when the host has a supported Java runtime and Python runtime for cqlsh.
The Apache RPM repository uses a release-series path rather than a SUSE-native repository name. The package installs the Cassandra service and command-line tools in the standard RPM layout, so the same host can be checked through systemd, nodetool, and cqlsh after installation.
Use these steps for a local single-node install or a package-ready host before cluster configuration. Production nodes still need seed, listen address, rack, datacenter, security, and storage planning before client traffic is pointed at the node.
$ sudo zypper install java-17-openjdk-headless python311
The Cassandra 5.0 RPM accepts Java 11 or Java 17. python311 keeps cqlsh inside Apache's documented Python 3.8-3.11 support range; on registered SLES hosts, use the equivalent enabled Python 3 package if the exact package name differs.
$ java -version openjdk version "17.0.17" 2025-10-21 OpenJDK Runtime Environment (build 17.0.17+10-suse) OpenJDK 64-Bit Server VM (build 17.0.17+10-suse, mixed mode)
$ sudo tee /etc/zypp/repos.d/apache-cassandra.repo >/dev/null <<'EOF' [apache-cassandra] name=Apache Cassandra baseurl=https://redhat.cassandra.apache.org/50x/ enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://downloads.apache.org/cassandra/KEYS EOF
The 50x path tracks the Cassandra 5.0 RPM line. Use another Apache release-series path only when the host must stay on that Cassandra series.
$ sudo zypper --gpg-auto-import-keys refresh apache-cassandra Retrieving repository 'Apache Cassandra' metadata [done] Building repository 'Apache Cassandra' cache [done] Specified repositories have been refreshed.
$ sudo zypper install cassandra Loading repository data... Reading installed packages... Resolving package dependencies... The following NEW package is going to be installed: cassandra ##### snipped ##### Installing: cassandra-5.0.8-1.noarch [done]
The RPM layout keeps Cassandra configuration under /etc/cassandra, logs under /var/log/cassandra, and data under /var/lib/cassandra.
$ rpm -q cassandra cassandra-5.0.8-1.noarch
$ sudo systemctl daemon-reload
Apache's RPM notes that systemd-based distributions may need a daemon reload before the cassandra unit is visible.
$ sudo systemctl enable --now cassandra Created symlink /etc/systemd/system/multi-user.target.wants/cassandra.service -> /usr/lib/systemd/system/cassandra.service.
First startup can take time while Cassandra creates its local system keyspaces.
Related: How to check Apache Cassandra service status
$ sudo systemctl is-active cassandra active
If the service does not become active, check /var/log/cassandra/system.log and the service journal before retrying.
Related: How to check Apache Cassandra service status
$ nodetool status Datacenter: datacenter1 ======================= Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN 127.0.0.1 126.44 KiB 16 100.0% 4d79f2db-21a5-41d5-a8fd-76d25560c8ac rack1
UN means the local node is up and normal from Cassandra's ring view.
Related: How to check Apache Cassandra cluster status with nodetool
$ cqlsh 127.0.0.1 9042 -e "SHOW HOST" Connected to Test Cluster at 127.0.0.1:9042
The default package listens for local CQL clients on 127.0.0.1:9042 until Cassandra networking is configured for the intended node or cluster.
Related: How to connect to Apache Cassandra with cqlsh