So installieren Sie Apache Kafka auf CentOS 8

So installieren Sie Apache Kafka auf CentOS 8

Apache Kafka ist eine verteilte Streaming -Plattform. Es ist nützlich, um Echtzeit-Streaming-Datenpipelines zu erstellen, um Daten zwischen den Systemen oder Anwendungen zu erhalten. Eine weitere nützliche Funktion sind Echtzeit-Streaming-Anwendungen, die Datenströme transformieren oder auf einem Datenstrom reagieren können.

In diesem Tutorial können Sie Apache Kafka Centos 8 oder RHEL 8 Linux Systems installieren.

Voraussetzungen

  • Das neu installierte System wird empfohlen, das erste Server -Setup zu befolgen.
  • Shell -Zugriff auf das CentOS 8 -System mit sudo privileges Konto.

Schritt 1 - Java installieren

Sie müssen Java auf Ihrem System installieren lassen, um Apache Kafka auszuführen. Sie können OpenJDK auf Ihrem Computer installieren, indem Sie den folgenden Befehl ausführen. Installieren Sie auch einige andere erforderliche Tools.

sudo dnf installieren java-11-openjdk wGet vim  

Schritt 2 - Laden Sie Apache Kafka herunter

Laden Sie die Apache Kafka -Binärdateien von der offiziellen Download -Website herunter. Sie können auch einen beliebigen Mirror in der Nähe auswählen, um herunterzuladen.

WGet https: // dlcdn.Apache.org/kafka/3.2.0/kafka_2.13-3.2.0.TGZ  

Dann extrahieren Sie die Archivdatei

TAR XZF KAFKA_2.13-3.2.0.TGZ  sudo mv kafka_2.13-3.2.0/usr/local/kafka  

Schritt 3 - Setup Kafka Systemd Unit -Dateien einrichten

CentOS 8 verwendet systemd, um seinen Dienstleistungsstaat zu verwalten. Daher müssen wir Systemd -Einheitsdateien für den Zookeeper- und Kafka -Dienst erstellen. Dies hilft uns, Kafka -Dienste zu verwalten, um zu starten/zu stoppen.

Erstellen Sie zunächst die Systemd -Einheit -Datei für Zookeeper mit dem folgenden Befehl:

vim/etc/systemd/system/zookeeper.Service 

Fügen Sie unten Contnet hinzu:

[Einheit] Beschreibung = Apache Zookeeper Server -Dokumentation = http: // zookeeper.Apache.org erfordert = Netzwerk.Ziel-Remote-FS.Ziel nach = Netzwerk.Ziel-Remote-FS.Ziel [Service] type = einfacher execstart =/usr/bin/bash/usr/local/kafka/bin/zookeeper-server-start.sh/usr/local/kafka/config/zookeeper.Eigenschaften execStop =/usr/bin/bash/usr/local/kafka/bin/zookeeper-server-stop.sh restart = on-abnormal [install] suchtby = multi-user.Ziel 

Speichern Sie die Datei und schließen Sie sie.

Um als Nächstes eine Kafka -Systemdatei mit dem folgenden Befehl zu erstellen:

vim/etc/systemd/system/kafka.Service 

Fügen Sie den folgenden Inhalt hinzu. Stellen Sie sicher, dass Sie den richtigen Stellen einstellen Java_Home Pfad gemäß den auf Ihrem System installierten Java.

[Einheit] Beschreibung = Apache Kafka Server -Dokumentation = http: // kafka.Apache.Org/Dokumentation.HTML erfordert = Zookeeper.Service [Service] type = einfache Umgebung = "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.Eigenschaften execStop =/usr/bin/bash/usr/local/kafka/bin/kafka-server-stop.sh [install] wantby by = multi-user.Ziel 

Speichern Sie die Datei und schließen Sie sie.

Laden Sie den Systemd -Daemon neu, um Änderungen anzuwenden.

Systemctl Daemon-Relada 

Schritt 4 - Kafka Server starten

Kafka benötigte Zookeeper. Starten Sie also zuerst einen Zookeeper -Server auf Ihrem System. Sie können das mit Kafka verfügbare Skript verwenden, um eine Zookeeper-Instanz mit einem einzelnen Knoten zu erhalten.

sudo systemctl starten zookeeper 

Starten Sie nun den Kafka -Server und sehen Sie sich den laufenden Status an:

sudo systemctl start kafka sudo systemctl Status kafka 

Alles erledigt. Sie haben Kafka in Ihrem CentOS 8 erfolgreich installiert. Der nächste Teil dieses Tutorials hilft Ihnen dabei, Themen im Kafka -Cluster zu erstellen und mit dem Kafka -Produzenten und dem Verbraucherdienst zusammenzuarbeiten.

Schritt 5 - Erstellen von Themen in Apache Kafka

Apache Kafka bietet mehrere Shell -Skript, um daran zu arbeiten. Erstellen Sie zunächst ein Thema namens “Testtop”Mit einer einzelnen Partition mit einer einzigen Replik:

CD/USR/LOCAL/KAFKA BIN/KAFKA-Topics.sh-create-Bootstrap-server localhost: 9092-Replikationsfaktor 1-Partitionen 1--Topic Testtopic erstellt Topic Testtopic. 

Der Replikationsfaktor beschreibt, wie viele Kopien von Daten erstellt werden. Wenn wir mit einer einzigen Instanz laufen, behalten Sie diesen Wert 1.

Legen Sie die Partitionsoptionen als Anzahl der Makler fest, die Ihre Daten zwischen aufgeteilt werden sollen. Da wir mit einem einzigen Broker laufen, behalten Sie diesen Wert 1.

Sie können mehrere Themen erstellen, indem Sie denselben Befehl wie oben ausgeführt haben. Danach sehen Sie die erstellten Themen auf Kafka, indem Sie den Befehl unter unten lief:

Bin/Kafka-Topics.SH -List -Zookeeper Localhost: 9092 Testtopic Kafkaoncentos8 Tutorialkafkainstallcentos8 

Alternativ können Sie Ihre Makler auch manuell manuell erstellen, um Themen automatisch zu erstellen, wenn ein nicht existierendes Thema veröffentlicht wird.

Schritt 6 - Apache Kafka Produzent und Verbraucher

Der „Produzent“ ist der Prozess, der dafür verantwortlich ist, Daten in unsere Kafka zu setzen. Der Kafka wird mit einem Befehlslinienclient geliefert, der Eingaben aus einer Datei oder aus Standardeingaben übernimmt und als Nachrichten an den Kafka-Cluster versendet. Der Standard -Kafka sendet jede Zeile als separate Nachricht.

Lassen Sie uns den Produzenten ausführen und dann ein paar Nachrichten in die Konsole eingeben, um sie an den Server zu senden.

Bin/Kafka-Console-Produzent.SH-BROKER-LIST LOCALHOST: 9092--Topic Testtopic> Willkommen bei Kafka> Dies ist mein erstes Thema> 

Öffnen Sie nun ein neues Terminal, um den Apache Kafka -Verbraucherprozess auszuführen. Kafka bietet auch den Befehlszeilenkonsumenten zum Lesen von Daten aus dem Kafka-Cluster und zeigt Nachrichten auf die Standardausgabe an.

Bin/Kafka-Console-Consumer.SH-Bootstrap-Server localhost: 9092--topic Testtopic-From-Beinginning Willkommen bei Kafka Dies ist mein erstes Thema 

Die Option -from -Beinging wird verwendet, um Nachrichten vom Anfang des ausgewählten Themas zu lesen. Sie können diese Option überspringen, um nur die neuesten Nachrichten zu lesen.

Führen Sie beispielsweise den Kafka -Produzenten und -verbraucher in den separaten Terminals durch. Geben Sie einfach einen Text in dieses Erzeugerterminal ein. Es wird sofort am Verbraucherterminal sichtbar. Siehe den folgenden Screenshot des Kafka -Produzenten und -verbrauchers in der Arbeit:

Abschluss

Sie haben den KAFKA -Service auf dem CentOS 8 Linux -Computer erfolgreich installiert und konfiguriert.