GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Installieren und konfigurieren Sie Apache Cassandra 4.0 in Centos 8

Apache Cassandra ist ein kostenloses und quelloffenes NoSQL-Datenbankverwaltungssystem, das für die Verarbeitung großer Datenmengen auf vielen Standardservern entwickelt wurde und eine hohe Verfügbarkeit ohne Single Point of Failure bietet. Apache Cassandra wurde ursprünglich von Facebook entwickelt und später von der Apache Foundation übernommen.

Apache Cassandra eignet sich für riesige, exponentiell wachsende Mengen sich ständig verändernder Daten.

Cassandra im Vergleich zu RDBMS

Cassandra hat enge Analogien zu Konzepten in relationalen Datenbanken:

  • Keyspace – Ähnlich einer Datenbank/einem Schema in einem RDBMS
  • Table – Ähnlich wie Tabelle in RDBMS
  • Row – Ähnlich wie Row in RDBMS
  • Column – Ähnlich wie Column in RDBMS
  • Primary key – Ähnlich wie Primärschlüssel in RDBMS

Voraussetzungen

Um dieser Anleitung zu folgen, benötigen Sie:

  • Centos 8-Server
  • Root-Zugriff auf den Server oder Benutzer mit sudo-Zugriff
  • Internetzugang zum Herunterladen der Pakete

Die folgenden Schritte werden wir befolgen, um Cassandra

zu installieren
  1. Stellen Sie sicher, dass unser System auf dem neuesten Stand ist
  2. Installieren Sie Java im System
  3. Installieren Sie Apache Cassandra im System
  4. Installieren und konfigurieren Sie den Apache Cassandra Client (cqlsh)
  5. Apache Cassandra konfigurieren

Schritt 1 Stellen Sie sicher, dass unser System auf dem neuesten Stand ist

Stellen wir sicher, dass die auf dem Server installierten Centos 8-Pakete auf dem neuesten Stand sind. Sie können dies tun, indem Sie die folgenden Befehle ausführen:

sudo dnf -y update

Schritt 2 Java im System installieren

Apache Cassandra erfordert, dass Sie Java 8 in Ihrem System haben, damit es ausgeführt werden kann. Bestätigen Sie, dass Java installiert ist, indem Sie diesen Befehl eingeben:

java -version

Wenn Sie diese Ausgabe sehen:

# java -version
-bash: java: command not found

Dann bedeutet es, dass Java nicht installiert ist. Installieren wir es mit diesem Befehl:

sudo dnf install -y java-1.8.0-openjdk

Sobald die Installation abgeschlossen ist, bestätigen Sie diese hiermit:

# java -version
openjdk version "1.8.0_302"
OpenJDK Runtime Environment (build 1.8.0_302-b08)
OpenJDK 64-Bit Server VM (build 25.302-b08, mixed mode)

Jetzt, da Java 8 in unserem System installiert ist, können wir Cassandra installieren.

Schritt 3. Apache Cassandra im System installieren

Apache Cassandra ist in den standardmäßigen Centos 8-Repositories nicht verfügbar. Lassen Sie uns ein Repo erstellen, das auf Cassandra Repos zeigt:

Erstellen Sie dieses /etc/yum.repos.d/cassandra.repo Datei mit dem erforderlichen Inhalt mit diesem Befehl:

cat > /etc/yum.repos.d/cassandra.repo <<EOF
[cassandra]
name=Apache Cassandra
baseurl=https://downloads.apache.org/cassandra/redhat/40x/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://downloads.apache.org/cassandra/KEYS
EOF

Nachdem wir das Repo hinzugefügt haben, können wir Cassandra installieren:

sudo dnf install -y cassandra

Bestätigen Sie mit diesem Befehl, dass Cassandra installiert wurde:

# rpm -qi cassandra
Name        : cassandra
Version     : 4.0.0
Release     : 1
Architecture: noarch
Install Date: Tue 31 Aug 2021 08:59:00 AM UTC
Group       : Development/Libraries
Size        : 54941890
License     : Apache Software License 2.0
Signature   : RSA/SHA512, Thu 22 Jul 2021 10:22:35 PM UTC, Key ID 5e85b9ae0b84c041
Source RPM  : cassandra-4.0.0-1.src.rpm
Build Date  : Thu 22 Jul 2021 10:22:10 PM UTC
Build Host  : 0b542adba94d
Relocations : (not relocatable)
URL         : http://cassandra.apache.org/
Summary     : Cassandra is a highly scalable, eventually consistent, distributed, structured key-value store.
Description :
Cassandra is a distributed (peer-to-peer) system for the management and storage of structured data.

Sobald dieser Befehl installiert ist, wird die Cassandra-Binärdatei in /usr/sbin/cassandra erstellt . Da Centos 8 Dienste mit systemd verwaltet, erstellen wir eine systemd-Datei in /etc/systemd/system/cassandra.service mit den Inhalten, die für die Verwaltung des cassandra-Dienstes erforderlich sind

sudo cat > /etc/systemd/system/cassandra.service <<EOF
[Unit]
Description=Apache Cassandra 4.0
After=network.target

[Service]
Type=simple
PIDFile=/var/run/cassandra/cassandra.pid
User=cassandra
Group=cassandra

ExecStart=/usr/sbin/cassandra -f -p /var/run/cassandra/cassandra.pid
Restart=always

[Install]
WantedBy=multi-user.target
EOF

Sobald die Datei erstellt ist, können Sie systemd verwenden, um den Dienst zu verwalten:

Führen Sie diesen Befehl aus, um sicherzustellen, dass unser neuer systemd-Dienst registriert ist:

sudo systemctl daemon-reload 

So starten Sie den Dienst:

sudo systemctl start cassandra

Bestätigen Sie, dass der Dienst ausgeführt wird. Bitte stellen Sie sicher, dass es Active: active (running) ist im folgenden Statusbefehl:

# sudo systemctl status cassandra
● cassandra.service - Apache Cassandra
   Loaded: loaded (/etc/systemd/system/cassandra.service; disabled; vendor preset: disabled)
   Active: active (running) since Tue 2021-08-31 15:50:07 UTC; 8s ago
 Main PID: 100752 (java)
    Tasks: 54 (limit: 23800)
   Memory: 1.1G
   CGroup: /system.slice/cassandra.service
           └─100752 java -ea -da:net.openhft... -XX:+UseThreadPriorities -XX:+HeapDumpOnOutOfMemoryError -Xss256k -XX:+AlwaysPreTouch -XX:-UseBiasedLocking -XX:+UseTLAB -XX:+ResizeTLAB -XX:+UseNUMA -XX:+PerfD>

Aug 31 15:50:13 ipa-server.citizix.light cassandra[100752]: INFO  [main] 2021-08-31 15:50:13,284 NativeTransportService.java:68 - Netty using native Epoll event loop
Aug 31 15:50:13 ipa-server.citizix.light cassandra[100752]: INFO  [CompactionExecutor:1] 2021-08-31 15:50:13,326 CompactionTask.java:150 - Compacting (20ffe200-0a73-11ec-a273-f980f7c7aa0a) [/var/lib/cassandra>
Aug 31 15:50:13 ipa-server.citizix.light cassandra[100752]: INFO  [main] 2021-08-31 15:50:13,329 PipelineConfigurator.java:124 - Using Netty Version: [netty-buffer=netty-buffer-4.1.58.Final.10b03e6, netty-cod>
Aug 31 15:50:13 ipa-server.citizix.light cassandra[100752]: INFO  [main] 2021-08-31 15:50:13,329 PipelineConfigurator.java:125 - Starting listening for CQL clients on localhost/127.0.0.1:9042 (unencrypted)...
Aug 31 15:50:13 ipa-server.citizix.light cassandra[100752]: INFO  [main] 2021-08-31 15:50:13,334 CassandraDaemon.java:780 - Startup complete

Aktivieren Sie den cassandra-Dienst so, dass er immer beim Booten ausgeführt wird:

sudo systemctl enable cassandra

Verwenden Sie den nodetool status Befehl, um den Status des aktuellen Knotenstatus zu bestätigen:

# 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  166.07 KiB  16      100.0%            2b8341f0-2638-46bb-a0e0-e20b86f96d0a  rack1

Nachdem der Dienst nun eingerichtet ist und ausgeführt wird, können Sie den Client installieren:

Schritt 4. Apache Cassandra Client (cqlsh) installieren und konfigurieren

Nachdem der Apache Cassandra-Dienst installiert und konfiguriert wurde, müssen wir uns nun mit ihm verbinden.

Das Client-Tool für den Zugriff auf Cassandra (cqlsh ) ist ein Python-Client. Also müssen wir vor der Installation die Umgebung für Python einrichten:

Installieren Sie python3 und python pip

sudo dnf install -y python39 python39-pip

Bestätigen Sie die Installation und Python und Pip:

# python3 -V
Python 3.9.2

# pip3 -V
pip 20.2.4 from /usr/lib/python3.9/site-packages/pip (python 3.9)

Installieren Sie mit pip cqlsh:

sudo pip3 install cqlsh

Jetzt können wir cqlsh verwenden, um eine Verbindung zu cassandra herzustellen. Da Cassandra lokal installiert ist, müssen wir keinen Host angeben:

# cqlsh
Connected to Test Cluster at 127.0.0.1:9042
[cqlsh 6.0.0 | Cassandra 4.0.0 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cqlsh>

Jetzt, da der Client eingerichtet ist, konfigurieren wir Cassandra

Schritt 4. Apache Cassandra konfigurieren

Lassen Sie uns Apache Cassandra konfigurieren. Die Hauptkonfigurationsdatei befindet sich hier /etc/cassandra/default.conf/cassandra.yaml

Bemerkenswerte zu ändernde Konfigurationen:

  • cluster_name – der Name Ihres Clusters
  • seeds enthält die Liste der IP-Adressen Ihres Cluster-Seeds, kommagetrennt
  • listen_address enthält die IP-Adresse Ihres Knotens, die es anderen Knoten ermöglicht, mit diesem Knoten zu kommunizieren

Darüber hinaus können Sie auch die Umgebungsvariable JVM_OPTS hinzufügen Hinzufügen zusätzlicher JVM-Befehlszeilenargumente. Diese wird beim Start an den cassandra-Dienst übergeben.

Der Clustername von Cassandra lautet standardmäßig „Testcluster“. Sie können dies in Ihren bevorzugten Clusternamen ändern, indem Sie sich mit cqlsh anmelden und führen Sie den folgenden Befehl aus.

UPDATE system.local 
SET cluster_name = 'Citizix Cluster' 
WHERE KEY = 'local';

Danach aktualisieren Sie die Konfigurationsdatei /etc/cassandra/default.conf/cassandra.yaml mit dem neuen Namen:

sudo vim /etc/cassandra/default.conf/cassandra.yaml

Dann aktualisieren Sie diese Zeile:

cluster_name: 'Citizix Cluster'

Speichern und beenden.

Lassen Sie uns den System-Cache löschen, indem Sie Folgendes verwenden:

nodetool flush system

Starten Sie dann den cassandra-Dienst neu

sudo systemctl restart cassandra

Melden Sie sich erneut an, um den angezeigten Clusternamen zu bestätigen.

Schlussfolgerung

Wir haben es geschafft, cassanda in der obigen Anleitung zu installieren und zu konfigurieren. Bitte beachten Sie Folgendes:

  • Cassandra speichert sein Protokoll in diesem Verzeichnis /var/log/cassandra/ mit der Hauptprotokolldatei, die sich in /var/log/cassandra/system.log befindet
  • Da wir einen systemd-Dienst erstellt haben, können Sie auch stdout überprüfen und stderr Protokolle mit diesem Befehl:
    sudo journalctl -fu cassandra
  • Dieser /var/lib/cassandra ist als Standarddatenverzeichnis eingestellt. Sie können das in der Konfigurationsdatei aktualisieren
  • Cassandra-Konfigurationsdateien werden in diesem Verzeichnis /etc/cassandra/ gespeichert einschließlich der Standardkonfigurationsdatei /etc/cassandra/default.conf/cassandra.yaml
  • So verwalten Sie den cassandra-Dienst, den wir erstellt haben:
    # Start the service
    sudo systemctl start cassandra
    # Check the service status
    sudo systemctl status cassandra
    # Stop the service
    sudo systemctl stop cassandra
    # Enable the service
    sudo systemctl enable cassandra
    # Restart the service
    sudo systemctl restart cassandra

Weitere Informationen finden Sie auch auf der Cassandra-Dokumentationsseite hier.


Cent OS
  1. So installieren und konfigurieren Sie Nginx unter CentOS 7

  2. So installieren Sie Apache Cassandra unter CentOS 8

  3. So installieren und konfigurieren Sie Redis unter CentOS 7

  4. So installieren Sie Apache Cassandra unter CentOS 7

  5. Installieren Sie Apache und PHP unter CentOS 7

So installieren und konfigurieren Sie GitLab CE unter CentOS 8

So installieren und konfigurieren Sie Nagios 4.0.7 unter CentOS 7

So installieren und konfigurieren Sie ISPConfig CP unter CentOS 7

So installieren Sie Apache Cassandra in CentOS

Installieren Sie Apache Cassandra in CentOS 8

So installieren Sie Apache Cassandra unter CentOS 6