Apache Cassandra ist ein hochleistungsfähiges Open-Source-NoSQL-Datenbankverwaltungssystem ohne Single Point of Failure. Apache Cassandra verwendet ein Cluster-Modell anstelle des Tabellenmodells von MySQL/PostgreSQL. Cassandra eignet sich für Anwendungen, die es sich nicht leisten können, Daten zu verlieren. Daten werden zur Fehlertoleranz automatisch auf mehrere Knoten repliziert. Ausgefallene Knoten können automatisch ohne Ausfallzeit ersetzt werden.
Apache Cassandra ist die beste Wahl für Sie, wenn Sie nach Skalierbarkeit, hoher Verfügbarkeit und hoher Leistung suchen.
In diesem Tutorial zeigen wir Ihnen, wie Sie Apache Cassandra unter CentOS 8 installieren.
Anforderungen
- Ein Server mit CentOS 8 und mindestens 2 GB RAM.
- Auf Ihrem System ist ein Root-Passwort eingerichtet.
Erste Schritte
Bevor Sie beginnen, wird empfohlen, Ihren Server auf die neueste stabile Version zu aktualisieren. Sie können Ihren Server mit dem folgenden Befehl aktualisieren:
dnf-Update
Sobald Ihr Server aktualisiert ist, starten Sie ihn neu, um die Änderungen zu übernehmen.
Installieren Sie Java
Für Apache Cassandra müssen OpenJDK 8 und Python2 auf dem System installiert sein. Sie können OpenJDK 8 und Python2 mit dem folgenden Befehl installieren:
dnf install java-1.8.0-openjdk-devel python2
Sobald beide Pakete installiert sind, können Sie die Java-Version mit dem folgenden Befehl überprüfen:
Java-Version
Sie sollten die folgende Ausgabe sehen:
openjdk Version „1.8.0_232“OpenJDK Runtime Environment (Build 1.8.0_232-b09)OpenJDK 64-Bit Server VM (Build 25.232-b09, Mixed Mode)
Installieren Sie Apache Cassandra
Standardmäßig ist Apache Cassandra nicht im Standard-Repository von CentOS 8 verfügbar. Dafür müssen Sie also ein Repo erstellen. Sie können eine neue Repo-Datei /etc/yum.repos.d/cassandra.repo wie unten gezeigt erstellen:
nano /etc/yum.repos.d/cassandra.repo
Fügen Sie die folgenden Zeilen hinzu:
[cassandra]name =DataStax Repo für Apache Cassandrabaseurl =http://rpm.datastax.com/communityenabled =1gpgcheck =0
Speichern und schließen Sie die Datei und installieren Sie dann Apache Cassandra mit dem folgenden Befehl:
dnf install dsc20
Sobald Sie mit der Installation fertig sind, können Sie mit dem nächsten Schritt fortfahren
Erstellen Sie eine Systemd-Unit-Datei für Cassandra
Standardmäßig ist das Apache Cassandra-Paket nicht in der Lage, eine Servicedatei für sich selbst zu generieren. Sie müssen also eine systemd-Dienstdatei erstellen, um den Cassandra-Dienst zu verwalten. Sie können es mit dem folgenden Befehl erstellen:
nano /etc/systemd/system/cassandra.service
Fügen Sie die folgenden Zeilen hinzu:
[Unit]Description=ApacheCassandra After=network.target[Service]PIDFile=/var/run/cassandra/cassandra.pidUser=cassandraGroup=cassandraExecStart=/usr/sbin/cassandra -f -p /var/run/cassandra /cassandra.pidRestart=always[Install]WantedBy=multi-user.target
Speichern und schließen Sie die Datei. Laden Sie dann den systemd-Daemon mit dem folgenden Befehl neu:
systemctl daemon-reload
Starten Sie als Nächstes den Cassandra-Dienst und aktivieren Sie ihn nach dem Systemneustart mit dem folgenden Befehl:
systemctl start cassandra
systemctl enable cassandra
Sie können den Status des Cassandra-Dienstes auch mit dem folgenden Befehl überprüfen:
systemctl status cassandra
Sie sollten die folgende Ausgabe sehen:
Apache Cassandra-Installation testen
Apache Cassandra ist jetzt installiert und wird auf Ihrem Server ausgeführt. Sie können mit dem folgenden Befehl überprüfen, ob es ausgeführt wird oder nicht:
Nodetool-Status
Sie sollten den folgenden Befehl sehen:
Rechenzentrum:Rechenzentrum1=======================Status=Up/Down|/ State=Normal/Leaving/Joining/Moving-- Address Load Tokens Besitzt (effektiv) Host-ID RackUN 127.0.0.1 46,11 KB 256 100,0 % 2a680007-8c30-4bde-9a3f-9fa212b96d11 rack1
Apache Cassandra konfigurieren
Standardmäßig ist Cassandra so konfiguriert, dass es nur die Verbindung vom localhost akzeptiert.
Sie können sich auch über die Cassandra-Abfragesprache bei Cassandra anmelden. Um auf die CQL-Shell zuzugreifen, führen Sie den folgenden Befehl aus:
cqlsh
Sie sollten die folgende Ausgabe sehen:
Verbunden mit Testcluster unter localhost:9160.[cqlsh 4.1.1 | Kassandra 2.0.17 | CQL-Spezifikation 3.1.1 | Sparprotokoll 19.39.0]Use HELP for help.cqlsh>
In der obigen Ausgabe sollten Sie sehen, dass der Cassandra-Cluster „Test Cluster“ heißt. Sie können diesen Standard-Clusternamen auch ändern.
Melden Sie sich dazu mit dem folgenden Befehl bei der CQL-Shell an:
cqlsh
Führen Sie als Nächstes den folgenden Befehl aus, um den Clusternamen wie unten gezeigt in „HowtoForge Cluster“ zu ändern:
cqlsh> UPDATE system.local SET cluster_name ='HowtoForge Cluster' WHERE KEY ='local';
Als nächstes verlassen Sie die Shell mit dem folgenden Befehl:
cqlsh>exit;
Als Nächstes müssen Sie auch die Konfigurationsdatei cassandra.yaml bearbeiten und Ihren neuen Clusternamen definieren:
nano /etc/cassandra/default.conf/cassandra.yaml
Ändern Sie die folgende Zeile:
cluster_name:'HowtoForge-Cluster'
Speichern und schließen Sie die Datei, wenn Sie fertig sind. Löschen Sie dann den Systemcache mit dem folgenden Befehl:
nodetool Spülsystem
Starten Sie abschließend den Apache Cassandra-Dienst neu, um die neue Konfiguration zu übernehmen:
systemctl cassandra neu starten
Melden Sie sich jetzt mit dem folgenden Befehl bei der CQL-Shell an:
cqlsh
Sie sollten sehen, dass der Clustername jetzt in „HowtoForge Cluster“ geändert wurde:
Verbunden mit HowtoForge-Cluster unter localhost:9160.[cqlsh 4.1.1 | Kassandra 2.0.17 | CQL-Spezifikation 3.1.1 | Sparprotokoll 19.39.0]Use HELP for help.cqlsh>
Schlussfolgerung
Herzliche Glückwünsche! Sie haben Apache Cassandra erfolgreich auf CentOS 8 installiert und konfiguriert. Wenn Sie Fragen haben, können Sie mich gerne fragen.