Technologieführer

Apache Cassandra auf CentOS 7 installieren

4 min read Datenbanken Aktualisiert 21 Oct 2025
Cassandra auf CentOS 7 installieren
Cassandra auf CentOS 7 installieren

Übersicht

Apache Cassandra ist ein freies, Open-Source, verteiltes NoSQL-Datenbanksystem. Es speichert große Datenmengen in dezentralen, hochverfügbaren Clustern. Daten werden über mehrere Server verteilt, wodurch ein Single Point of Failure vermieden wird. NoSQL-Datenbanken verwenden andere Speicher- und Abfragemodelle als relationale Systeme wie MySQL oder PostgreSQL.

Diese Anleitung zeigt die Installation von Apache Cassandra auf CentOS 7.

Voraussetzungen

  • Root-Zugriff (oder sudo) auf einem CentOS 7-Server
  • Internetzugang zum Herunterladen von Paketen
  • Mindestens 2–4 GB RAM empfohlen für Test-/Entwicklungsumgebungen

Wichtig: Produktions-Cluster benötigen detaillierte Kapazitätsplanung und Netzwerk-/Sicherheitskonfigurationen, die hier nur kurz erwähnt werden.

Schritt 1 - JAVA installieren

Aktualisieren Sie zuerst die Pakete und Repositories:

yum -y update

Laden Sie das Oracle Java RPM-Paket herunter (Beispiel):

wget --no-cookies --no-check-certificate --header "Cookie:oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm"

Falls wget fehlt, installieren Sie es:

yum -y install wget

Installieren Sie das heruntergeladene RPM:

yum -y localinstall jdk-8u131-linux-x64.rpm

Prüfen Sie die Java-Version:

java -version

Beispielausgabe:

[root@liptan-pc ~]# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

Prüfen Sie, ob die Umgebungsvariable JAVA_HOME gesetzt ist:

echo $JAVA_HOME

Wenn die Ausgabe leer ist, setzen Sie JAVA_HOME in Ihrer Shell-Konfigurationsdatei (~/.bash_profile). Beispiel mit nano:

nano ~/.bash_profile

Fügen Sie am Ende der Datei folgende Zeilen hinzu (passen Sie den Pfad ggf. an):

export JAVA_HOME=/usr/java/jdk1.8.0_131/
export JRE_HOME=/usr/java/jdk1.8.0_131/jre

Laden Sie die Datei neu:

source ~/.bash_profile

Prüfen Sie nochmals:

[root@liptan-pc ~]# echo $JAVA_HOME 
/usr/java/jdk1.8.0_131/

Hinweis: Verwenden Sie für neue Installationen alternativ OpenJDK, wenn Sie keine Oracle-Java-Binärdateien benötigen.

Schritt 2 - Cassandra installieren

Erstellen Sie eine neue Repo-Datei für Apache Cassandra:

nano /etc/yum.repos.d/cassandra.repo

Fügen Sie diese Inhalte ein:

[cassandra]
name=Apache Cassandra
baseurl=https://www.apache.org/dist/cassandra/redhat/311x/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://www.apache.org/dist/cassandra/KEYS

Installieren Sie Cassandra:

yum -y install cassandra

Aktualisieren Sie Systemd-Daemons und starten Sie Cassandra:

systemctl daemon-reload
systemctl start cassandra
systemctl enable cassandra

Überprüfen Sie den Cluster-Status:

nodetool status

Erwartete Ausgabe (Beispiel):

[root@ip-172-31-7-136 ~]# 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  136.29 KiB  256          100.0%            b3d26649-9e10-4bee-9b3c-8e81c4394b2e  rack1

Wenn nodetool keine Verbindung herstellt (Fehlermeldung wie unten), müssen Sie die JVM RMI-Hostkonfiguration anpassen:

nodetool: Failed to connect to '127.0.0.1:7199' - ConnectException: 'Connection refused (Connection refused)'.

Öffnen Sie die Cassandra-Umgebungskonfiguration:

nano /etc/cassandra/default.conf/cassandra-env.sh

Suchen Sie die folgende Zeile:

# JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname="

Entfernen Sie das Kommentarzeichen und setzen Sie die IP auf localhost (oder die passende Host-IP):

JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname=127.0.0.1"

Speichern und starten Sie Cassandra neu:

systemctl restart cassandra

Verwenden Sie danach erneut:

nodetool status

Cassandra enthält die Kommandozeile cqlsh für Abfragen in CQL (Cassandra Query Language):

cqlsh

Beispielausgabe:

[root@liptan-pc ~]# cqlsh
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.11.0 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.

Kurzanleitung: Mini-Methodik

  1. System aktualisieren (yum update).
  2. Java installieren und JAVA_HOME setzen.
  3. Cassandra-Repo hinzufügen.
  4. Cassandra installieren, starten, aktivieren.
  5. nodetool und cqlsh verwenden, um Status und Verfügbarkeit zu prüfen.

Troubleshooting - Häufige Probleme und Lösungen

  • Problem: nodetool ConnectException (Connection refused)

    • Ursache: RMI-Hostname nicht gesetzt oder Firewall blockiert Port 7199.
    • Lösung: In cassandra-env.sh JVM_OPTS -Djava.rmi.server.hostname setzen; Ports prüfen (7199, 9042) und Firewall/iptables anpassen.
  • Problem: cqlsh verbindet nicht (Timeout oder Refused)

    • Ursache: Cassandra nicht gestartet, native transport deaktiviert, oder Port 9042 blockiert.
    • Lösung: systemctl status cassandra prüfen, cassandra.yaml auf native_transport_port prüfen, Firewall öffnen.
  • Problem: Knoten finden sich nicht im Cluster

    • Ursache: seed-Hosts falsch konfiguriert, falsche listen_address oder rpc_address.
    • Lösung: cassandra.yaml prüfen, seed-Hosts korrekt angeben, restart.

Wichtig: Für produktive Umgebungen prüfen Sie Logs unter /var/log/cassandra/ auf detaillierte Fehlermeldungen.

Checklisten nach Rolle

Administrator

  • JAVA_HOME korrekt gesetzt
  • Systemd-Unit aktiv und aktiviert
  • Ports 7199, 7000/7001 (intern), 9042 offen (nur intern oder über VPN)
  • Backups planen (SSTablebackup/Tools)

DevOps / Betreiber

  • Automatisierte Installation (Ansible/Chef/Puppet) vorbereiten
  • Überwachung (nodetool, JMX-Metriken, SLR/Alerts)
  • Rolling-Restart-Strategie definieren

Entwickler

  • cqlsh verwenden, einfache Keyspaces testen
  • Konsistenzlevel (ONE, QUORUM, ALL) verstehen und testen
  • Schema-Design nach Partitionierung und Reihenfolge prüfen

Wann Cassandra nicht die richtige Wahl ist

  • Starke ACID-Transaktionen über mehrere Tabellen sind nötig (RDBMS besser)
  • Sehr kleine, relationale Datensätze mit komplexen Joins
  • Wenn Team-Erfahrung mit NoSQL/Partitionierung fehlt und schnelle Inbetriebnahme gefordert ist

Alternative Ansätze

  • Für transaktionale, relationale Workloads: PostgreSQL oder MySQL
  • Für einfache Key-Value-Store-Anforderungen: Redis oder RocksDB
  • Für Dokumentendaten mit flexiblem Schema: MongoDB

Sicherheit und Datenschutz

  • Beschränken Sie Zugriff auf Verwaltungs-Ports per Firewall oder VPN.
  • Aktivieren Sie Authentifizierung und TLS in Cassandra für produktive Umgebungen.
  • Klären Sie Datenschutzanforderungen (z. B. personenbezogene Daten) und implementieren Sie geeignete Verschlüsselung und Retention-Policies.

Kurzes Cheat-Sheet (Wichtige Befehle)

  • System aktualisieren: yum -y update
  • Java prüfen: java -version
  • Repo anlegen: nano /etc/yum.repos.d/cassandra.repo
  • Cassandra installieren: yum -y install cassandra
  • Dienst starten: systemctl start cassandra
  • Dienst aktivieren: systemctl enable cassandra
  • Status prüfen: nodetool status
  • CQL-Konsole: cqlsh

1-Zeiler Glossar

  • CQL: Cassandra Query Language, Abfragesprache ähnlich SQL für Cassandra.
  • nodetool: Verwaltungswerkzeug für Cassandra-Knoten (Cluster-Status, Repair, etc.).

Zusammenfassung

  • Sie haben Java installiert, JAVA_HOME gesetzt und Cassandra über ein Yum-Repo installiert.
  • Starten Sie den Dienst, aktivieren Sie ihn und prüfen Sie mit nodetool und cqlsh.
  • Achten Sie in Produktionsumgebungen auf Netzwerk, Sicherheit, Monitoring und Backup-Strategien.

Wichtig: Diese Anleitung deckt eine Basis-Installation ab. Für Produktionsbetrieb sind zusätzliche Schritte in den Bereichen Netzwerk, Sicherheit, Kapazitätsplanung und automatisches Deployment erforderlich.

Autor
Redaktion

Ähnliche Materialien

Open‑Source‑Apps: Windows/macOS auf Linux ersetzen
Open Source

Open‑Source‑Apps: Windows/macOS auf Linux ersetzen

CyanogenMod auf Lenovo P780 installieren
Android Anleitung

CyanogenMod auf Lenovo P780 installieren

Snow Leopard USB-Installer erstellen
Mac

Snow Leopard USB-Installer erstellen

Yubby: Videokanal aus 30 Plattformen erstellen
Webdienste

Yubby: Videokanal aus 30 Plattformen erstellen

Speicherbalken in Windows 10 anzeigen
Anleitung

Speicherbalken in Windows 10 anzeigen

Ordnerfarben in Windows: Anleitung
Windows Tipps

Ordnerfarben in Windows: Anleitung