Apache Cassandra ist eine kostenlose Open-Source-NoSQL-Datenbank ohne Single Point of Failure. Es bietet lineare Skalierbarkeit und Hochverfügbarkeit ohne Leistungseinbußen. Apache Cassandra wird von vielen Unternehmen mit großen, aktiven Datensätzen verwendet, darunter Reddit, NetFlix, Instagram und Github.
In diesem Artikel wird erläutert, wie Sie Apache Cassandra unter CentOS 8 installieren.
Installieren von Apache Cassandra #
Der einfachste Weg, Apache Cassandra unter CentOS 8 zu installieren, ist die Installation des RPM-Pakets aus dem offiziellen Apache Cassandra-Repository.
Die neueste Version von Apache Cassandra ist 3.11
und erfordert die Installation von OpenJDK 8 auf dem System.
Führen Sie den folgenden Befehl als Root oder Benutzer mit sudo-Berechtigungen aus, um OpenJDK zu installieren:
sudo dnf install java-1.8.0-openjdk-devel
Überprüfen Sie nach Abschluss die Installation, indem Sie die Java-Version drucken:
java -version
Die Ausgabe sollte in etwa so aussehen:
openjdk version "1.8.0_262"
OpenJDK Runtime Environment (build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)
Nachdem Java installiert ist, besteht der nächste Schritt darin, das Apache Cassandra-Repository hinzuzufügen.
Öffnen Sie Ihren Texteditor und erstellen Sie die folgende Repository-Datei:
sudo nano /etc/yum.repos.d/cassandra.repo
Fügen Sie den folgenden Inhalt in die Datei ein:
/etc/yum.repos.d/cassandra.repo[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
Speichern Sie die Datei und installieren Sie die neueste Version von Apache Cassandra, indem Sie Folgendes eingeben:
sudo dnf install cassandra
Geben Sie bei Aufforderung y
ein um die GPG-Schlüssel zu importieren.
Sobald die Installation abgeschlossen ist, starten und aktivieren Sie den Cassandra-Dienst:
sudo systemctl start cassandra
sudo systemctl enable cassandra
Vergewissern Sie sich, dass Cassandra ausgeführt wird, indem Sie Folgendes eingeben:
nodetool status
Sie sollten etwas Ähnliches sehen:
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns (effective) Host ID Rack
UN 127.0.0.1 69.99 KiB 256 100.0% ce0389a3-b48c-4cc9-b594-abe23e677d33 rack1
Das ist es. Zu diesem Zeitpunkt haben Sie Apache Cassandra auf Ihrem CentOS-Server installiert.
Apache Cassandra konfigurieren #
Apache Cassandra-Daten werden in /var/lib/cassandra
gespeichert Verzeichnis, Konfigurationsdateien befinden sich in /etc/cassandra
und Java-Startoptionen können in /etc/default/cassandra
konfiguriert werden Datei.
Standardmäßig ist Cassandra so konfiguriert, dass es nur auf localhost lauscht. Wenn der Client, der sich mit der Datenbank verbindet, auch auf demselben Host ausgeführt wird, müssen Sie die Standardkonfigurationsdatei nicht ändern.
Um mit Cassandra über CQL (die Cassandra-Abfragesprache) zu interagieren, können Sie ein Befehlszeilenprogramm namens cqlsh
verwenden das mit dem Cassandra-Paket ausgeliefert wird.
cqlsh
erfordert, dass sich Python 2 im PATH des Systems befindet. Wenn Sie Python 2 nicht auf dem Server installiert haben, können Sie dies mit den folgenden Befehlen tun:
sudo dnf install python2
sudo alternatives --set python /usr/bin/python2
Sobald Python eingerichtet ist, führen Sie cqlsh
aus um auf die CQL-Shell zuzugreifen:
cqlsh
[cqlsh 5.0.1 | Cassandra 3.11.7 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
cqlsh>
Apache Cassandra Cluster # umbenennen
Standardmäßig heißt der Cassandra-Cluster „Test-Cluster“. Wenn Sie den Clusternamen ändern möchten, führen Sie die folgenden Schritte aus:
-
Melden Sie sich mit
cqlsh
beim Cassandra CQL-Terminal an :cqlsh
Der folgende Befehl ändert den Clusternamen in „Linuxize Cluster“:
UPDATE system.local SET cluster_name = 'Linuxize Cluster' WHERE KEY = 'local';
Ersetzen Sie „Linuxize Cluster“ durch Ihren gewünschten Namen. Wenn Sie fertig sind, geben Sie
exit
ein um die Konsole zu verlassen. -
Öffnen Sie die
cassandra.yaml
Konfigurationsdatei, suchen Sie nach „cluster_name“ und geben Sie Ihren neuen Clusternamen ein:
/etc/cassandra/default.conf/cassandra.yamlsudo nano /etc/cassandra/default.conf/cassandra.yaml
cluster_name: 'Linuxize Cluster'
-
Löschen Sie den Systemcache:
nodetool flush system
-
Starten Sie abschließend den Cassandra-Dienst neu:
sudo systemctl restart cassandra