GNU/Linux >> LINUX-Kenntnisse >  >> AlmaLinux

So installieren Sie Apache Kafka auf Rocky Linux 8 oder AlmaLinux

Hier sind die Schritte zur Installation von Apache Kafka auf Rocky Linux- oder AlmaLinux 8-Servern, natürlich über das Befehlsterminal.

Apache Kafka ist eine Open-Source-Software, die die Speicherung und Verarbeitung von Datenströmen über eine verteilte Streaming-Plattform ermöglicht. In einfachen Worten, Apache Kafka ist eine Event-Streaming-Plattform, die als Messaging-System zwischen dem Sender und dem Empfänger mit hoher Fehlertoleranz und Skalierbarkeit fungiert, da sie auf einer verteilten Architektur basiert, die dafür optimiert ist.

Nun, dieses System wurde ursprünglich von LinkedIn als Nachrichtenwarteschlange entwickelt, ist jedoch als Projekt der Apache Software Foundation Open Source und eine leistungsstarke Streaming-Plattform mit einer Vielzahl von Funktionen. Es bietet Schnittstellen, um Daten in Kafka-Cluster zu schreiben, Daten zu lesen oder Daten in und aus Drittsystemen zu importieren und zu exportieren. Aufgrund der geringen Latenz und des hohen Durchsatzes kann es problemlos Echtzeit-Streams verarbeiten.

Die Schnittstellen ermöglichen es Anwendern auch, Datenströme aus Drittsystemen zu laden oder in diese Systeme zu exportieren. Damit eignet sich Apache Kafka für große Datenmengen und Anwendungen im Big-Data-Umfeld.

Es kann für eine Vielzahl von Anwendungen verwendet werden, z. B. das Verfolgen von Website-Aktivitäten in Echtzeit, das Überwachen verteilter Anwendungen, das Sammeln von Protokolldateien aus verschiedenen Quellen, das Synchronisieren von Daten in verteilten Systemen, das Trainieren von Modellen in Echtzeit hilft beim maschinellen Lernen. und mehr…

Apache Kafka bietet diese vier Hauptschnittstellen (APIs – Application Programming Interfaces). Erfahren Sie mehr über jede API auf der offiziellen Dokumentationsseite:

  • Admin-API
  • Ersteller-API
  • Verbraucher-API
  • Streams-API
  • Connect-API

Was benötigen Sie, um diesem Tutorial zu folgen:

  • Rocky oder AlmaLinux 8 oder irgendein anderer RHEL-basierter Server, wenn möglich, dann reinige einen.
  • Ein Benutzer mit sudo-Zugriff.

Schritte zur Installation von Apache Kafka auf Rocky Linux 8

Die angegebene Anleitung gilt für alle RHEL 8-basierten Linux-Systeme, einschließlich CentOS 8 und Oracle Linux 8, um Kafka bei Bedarf zu installieren.

1. System aktualisieren

Nun, bevor Sie weitermachen, führen Sie den Systemaktualisierungsbefehl aus, um sicherzustellen, dass alle installierten Pakete auf dem neuesten Stand sind. Führen Sie dazu den folgenden Befehl aus, dies wird auch den Repository-Cache aktualisieren.

sudo dnf update

2. Installieren Sie Java

Apache Kafka benötigt Java zum Ausführen, daher müssen wir es zuerst in unserer lokalen Umgebung installieren und es muss gleich oder größer als Java 8 sein. Nun, wir müssen kein drittes Repository hinzufügen, da das Paket zum Abrufen von JAVA bereits vorhanden ist auf dem systembasierten Repo, verwenden wir also den angegebenen Befehl.

Für Java 11

sudo dnf install java-11-openjdk

Nun, für die neueste Version wie 16 verwenden Sie die folgenden Befehle:

sudo dnf install epel-release
sudo dnf install java-latest-openjdk

3. Laden Sie das neueste Apache Kafka auf Rocky Linux 8 oder Almalinux herunter

Apache Kafka ist als Tarball-Datei auf der offiziellen Website verfügbar. Gehen Sie daher auf die offizielle Website und laden Sie die neueste Version herunter. Sie können auch jeden Mirror-Link kopieren und den wget verwenden Befehl zum Herunterladen über die Befehlszeile, wie wir es hier getan haben:

sudo dnf install wget nano
wget https://dlcdn.apache.org/kafka/3.0.0/kafka_2.13-3.0.0.tgz

Extrahieren Sie die heruntergeladene Datei 

tar -xf kafka_*tgz

So zeigen Sie die Datei an:

ls

Verschieben Sie es nach /usr/local/ nur um sicherzustellen, dass wir den Kafka-Ordner nicht versehentlich löschen.

sudo mv kafka_2.13-3.0.0/ /usr/local/kafka

4. Systemdienst für Zookeeper und Kafka erstellen

Obwohl Sie nur zu Testzwecken sowohl das Zookeeper- als auch das Kafka-Dienstskript direkt ausführen können, müssen wir es für den Produktionsserver manuell im Hintergrund ausführen. Erstellen Sie daher systemd-Units für beide Skripte.

Systemdatei Zookeeper erstellen

Laut der offiziellen Website wird Kafka Zookeeper in Zukunft nicht mehr benötigen, aber während wir diesen Artikel schreiben, brauchen wir es. Erstellen Sie also zuerst eine Dienstdatei für Zookeeper.

sudo nano /etc/systemd/system/zookeeper.service

Kopieren und fügen Sie die unten angegebenen Zeilen ein:

[Unit]Description=Apache Zookeeper serverDocumentation=http://zookeeper.apache.orgRequires=network.target remote-fs.targetAfter=network.target remote-fs.target[Service]Type=simpleExecStart=/usr/bin /bash /usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.propertiesExecStop=/usr/bin/bash /usr/local/kafka/bin/zookeeper-server- stop.shRestart=on-abnormal[Install]WantedBy=multi-user.target

Speichern und schließen Sie die Datei, indem Sie Strg+O drücken , drücken Sie die Eingabetaste drücken und dann mit Strg+X beenden .

Erstellen Sie jetzt die Kafka-Systemd-Datei

sudo nano /etc/systemd/system/kafka.service

Fügen Sie die folgenden Zeilen ein. Hinweis – Ändere das Java_Home , falls Sie eine andere Version verwenden. Um es zu finden, können Sie den Befehl verwenden –  sudo find /usr/ -name *jdk

[Unit]Description=Apache Kafka ServerDocumentation=http://kafka.apache.org/documentation.htmlRequires=zookeeper.service[Service]Type=simpleEnvironment="JAVA_HOME=/usr/lib/jvm/jre-11- openjdk"ExecStart=/usr/bin/bash /usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.propertiesExecStop=/usr/bin/bash /usr/local/ kafka/bin/kafka-server-stop.sh[Install]WantedBy=multi-user.target

Speichern Sie die Datei mit Strg+O, drücken Sie Enter drücken, und verwenden Sie dann Strg+X um dasselbe zu verlassen.

Daemon neu laden

Um die oben vorgenommenen Änderungen in das System zu übernehmen und die Dienstdateien zu verwenden, laden Sie den Systemdämon einmal neu.

sudo systemctl daemon-reload

5. Starten Sie Zookeeper und Kafka Server auf Rocky Linux

Lassen Sie uns nun beide Serverdienste starten und aktivieren, um sicherzustellen, dass sie auch nach dem Systemneustart aktiv sind.

sudo systemctl start zookeepersudo systemctl start kafka
sudo systemctl enable zookeepersudo systemctl enable kafka

Servicestatus prüfen:

sudo systemctl status zookeeper
sudo systemctl status kafka

6. Erstellen Sie Testthemen auf Kafka – Rocky oder AlmaLinux

Kafka ermöglicht es uns, Ereignisse auf den verschiedenen Computern zu lesen, zu schreiben, zu speichern und zu verarbeiten. Um diese Ereignisse jedoch an einem Ort oder in einem Ordner zu speichern, der als „Themen“ bezeichnet wird “. Erstellen Sie also auf Ihrem Server-Terminal mindestens ein Thema mit dem folgenden Befehl. Mit demselben können Sie später so viele Themen erstellen, wie Sie möchten.

Nehmen wir an, unser erster Themenname ist – testevent . Um also den gleichen Lauf zu erstellen:

Gehen Sie zu Ihrem Kafka-Verzeichnis.

cd /usr/local/kafka/

Und verwenden Sie das Topics-Skript:

bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic testevent

Nachdem Sie so viele Themen erstellt haben, wie Sie möchten, können Sie den folgenden Befehl verwenden, um sie alle aufzulisten:

bin/kafka-topics.sh --list --bootstrap-server localhost:9092

7. Schreiben Sie ein Ereignis mit Kafka Producer und lesen Sie es mit dem Verbraucher

Kafka bietet zwei APIs an:Producer und Verbraucher ,  für beide bietet es einen Befehlszeilen-Client. Der Producer ist für die Erstellung von Ereignissen verantwortlich und der Consumer verwendet sie, um die vom Producer generierten Daten anzuzeigen oder zu lesen.

Öffnen Sie zwei Terminal-Tabs oder -Sitzungen, um die Einrichtung des Ereignisgenerators und des Lesegeräts in Echtzeit zu verstehen.

#Auf einem ersten Terminal:

Erstellen wir zum Testen einige Ereignisse mit dem Producer-Skript:

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic testevent 

Geben Sie einen Text ein, den Sie streamen und auf der Verbraucherseite anzeigen möchten.

#Auf dem anderen Terminal

Lauf den unten angegebenen Befehl zusammen mit dem Themennamen, um die Nachrichten oder generierten Ereignisdaten in Echtzeit zu überprüfen:

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic testevent --von-anfang


AlmaLinux
  1. So installieren Sie Apache auf AlmaLinux

  2. So installieren Sie Apache Cassandra auf AlmaLinux / Rocky Linux 8

  3. So installieren Sie Docker unter AlmaLinux / Rocky Linux

  4. So installieren Sie Jenkins unter Rocky Linux 8 / AlmaLinux 8

  5. So installieren Sie Apache Kafka unter Rocky Linux 8

So installieren Sie Git auf Almalinux oder Rocky Linux 8

So installieren Sie den Vivaldi-Browser unter AlmaLinux | Rocky-Linux 8

So installieren Sie den Filezilla-Client unter Rocky Linux 8 | AlmaLinux

So installieren Sie Apache Tomcat unter Rocky Linux 8

So installieren Sie Jenkins auf AlmaLinux 8 oder Rocky Linux

So installieren Sie ClamAV unter Rocky Linux 8 | AlmaLinux