So installieren Sie Apache Kafka unter Ubuntu 20.04


Anleitung zur Installation von Apache Kafka unter Ubuntu 20.04

Apache Kafka präsentiert sich als eine hochleistungsfähige, dezentrale Streaming-Plattform, die speziell für die Verarbeitung umfangreicher Datenströme in Echtzeit konzipiert wurde. Ihre Einsatzgebiete sind vielfältig und reichen von der Echtzeit-Datenanalyse und Ereignisverarbeitung bis hin zur Integration von Microservices und der Nachrichtenübermittlung.

Ubuntu 20.04 bietet eine solide und benutzerfreundliche Basis für die Installation und Konfiguration von Apache Kafka. Dieser Artikel führt Sie Schritt für Schritt durch den Installations- und Konfigurationsprozess von Apache Kafka auf einem Ubuntu 20.04 Server.

Einführung

Kafka, als verteilte Streaming-Plattform, ermöglicht die Echtzeitverarbeitung von Daten. Dies macht sie zu einer bevorzugten Wahl für Anwendungen, die große Datenmengen in Echtzeit handhaben müssen. Darüber hinaus zeichnet sich Kafka durch eine hohe Skalierbarkeit aus und kann eine große Anzahl von Produzenten und Konsumenten gleichzeitig verwalten.

Kernvorteile von Apache Kafka:

  • Hoher Durchsatz: Kafka ist in der Lage, Millionen von Nachrichten pro Sekunde zu verarbeiten.
  • Skalierbarkeit: Kafka lässt sich horizontal skalieren, um mit wachsenden Datenverarbeitungsanforderungen Schritt zu halten.
  • Zuverlässigkeit: Kafka sichert die dauerhafte Speicherung von Nachrichten, selbst bei Systemausfällen.
  • Echtzeitfähigkeit: Kafka ermöglicht die Datenverarbeitung nahezu in Echtzeit.
  • Flexibilität: Kafka ist vielseitig einsetzbar, unter anderem für Echtzeit-Datenverarbeitung, Ereignismanagement und die Vernetzung von Microservices.

Vorbereitung für die Installation

Bevor Sie mit der Installation von Apache Kafka beginnen, sollten Sie folgende Voraussetzungen sicherstellen:

  • Ubuntu 20.04 Server: Ein Ubuntu 20.04 Server mit Root-Zugriff ist erforderlich.
  • Java 11 oder höher: Für Kafka ist eine Java Runtime Environment (JRE) ab Version 11 notwendig. Sie können die Java-Installation mit folgendem Befehl prüfen:

    java -version

  • Falls Java nicht installiert ist, können Sie es mit diesen Befehlen installieren:

    sudo apt update

    sudo apt install default-jre

Installation von Apache Kafka

Nachdem die Voraussetzungen erfüllt sind, können Sie mit der Installation von Apache Kafka beginnen. Folgen Sie diesen Schritten:

  1. Kafka-Binärdateien herunterladen: Laden Sie die aktuellen Kafka-Binärdateien von der offiziellen Website herunter: https://kafka.apache.org/downloads. Wählen Sie die für Ihr System passende Version.
  2. Dateien entpacken: Entpacken Sie die heruntergeladenen Dateien in ein Verzeichnis Ihrer Wahl. In diesem Beispiel verwenden wir das Verzeichnis /opt/kafka.

    sudo tar -xzvf kafka_2.12-3.3.1.tgz -C /opt/kafka

  3. Umgebungsvariablen konfigurieren: Um Kafka nutzen zu können, müssen die Umgebungsvariablen KAFKA_HOME und PATH angepasst werden. Fügen Sie folgende Zeilen in die Datei /etc/environment ein:

    KAFKA_HOME=/opt/kafka/kafka_2.12-3.3.1

    PATH=$PATH:$KAFKA_HOME/bin

  4. Server neu starten: Starten Sie den Server neu, damit die Änderungen wirksam werden.

    sudo reboot

Konfiguration von ZooKeeper

ZooKeeper ist ein zentralisierter Koordinator, der von Kafka für Konsistenz und Fehlertoleranz genutzt wird. Vor dem Start von Kafka müssen Sie ZooKeeper einrichten.

  1. ZooKeeper installieren: Nutzen Sie diesen Befehl zur Installation:

    sudo apt install zookeeperd

  2. ZooKeeper konfigurieren: Bearbeiten Sie die Konfigurationsdatei /etc/zookeeper/conf/zoo.cfg und passen Sie den Wert von dataDir an einen passenden Speicherort an:

    dataDir=/var/lib/zookeeper

  3. ZooKeeper starten: Starten Sie ZooKeeper mit:

    sudo systemctl start zookeeperd

  4. ZooKeeper beim Systemstart aktivieren: Um einen automatischen Start von ZooKeeper bei jedem Systemneustart zu gewährleisten:

    sudo systemctl enable zookeeperd

Starten von Apache Kafka

Nachdem ZooKeeper installiert und konfiguriert ist, können Sie Apache Kafka starten.

  1. Kafka-Server starten: Verwenden Sie diesen Befehl zum Starten des Kafka-Servers:

    sudo $KAFKA_HOME/bin/kafka-server-start.sh $KAFKA_HOME/config/server.properties

  2. Kafka-Status prüfen: Überprüfen Sie mit diesem Befehl, ob Kafka korrekt läuft:

    sudo $KAFKA_HOME/bin/kafka-server-start.sh $KAFKA_HOME/config/server.properties

Erstellen eines Kafka-Themas

Ein Thema in Kafka ist eine logische Struktur zur Speicherung von Nachrichten. Sie können ein neues Thema mit folgendem Befehl erstellen:

sudo $KAFKA_HOME/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic my_topic

Dieser Befehl erstellt ein Thema mit dem Namen my_topic, einem Replikationsfaktor von 1 und einer Partition.

Nachrichten in Kafka veröffentlichen

Um Nachrichten in einem Kafka-Thema zu publizieren, verwenden Sie folgenden Befehl:

sudo $KAFKA_HOME/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic my_topic

Geben Sie die Nachrichten ein und bestätigen Sie mit der Eingabetaste.

Nachrichten aus Kafka konsumieren

Um Nachrichten aus einem Kafka-Thema zu empfangen, nutzen Sie diesen Befehl:

sudo $KAFKA_HOME/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic my_topic --from-beginning

Dieser Befehl liest alle Nachrichten des Themas my_topic ab Beginn.

Stoppen von Apache Kafka

Verwenden Sie folgenden Befehl, um Apache Kafka zu stoppen:

sudo $KAFKA_HOME/bin/kafka-server-stop.sh

Fazit

Die Installation und Konfiguration von Apache Kafka unter Ubuntu 20.04 ist unkompliziert. Mit dieser Anleitung können Sie Kafka effektiv starten und für die Verarbeitung von Echtzeit-Datenströmen einsetzen.

Häufig gestellte Fragen (FAQs)

1. Was ist Apache Kafka?

Apache Kafka ist eine verteilte Streaming-Plattform, die für die Verarbeitung großer Datenmengen in Echtzeit entwickelt wurde. Sie eignet sich besonders für Anwendungen, die Echtzeit-Datenverarbeitung, Ereignisverarbeitung und Microservice-Kommunikation benötigen.

2. Warum sollte man Apache Kafka nutzen?

Kafka ist eine leistungsstarke und skalierbare Plattform, die durch hohen Durchsatz, Skalierbarkeit, Zuverlässigkeit, Echtzeitfähigkeit und Vielseitigkeit überzeugt.

3. Wie installiere ich Apache Kafka unter Ubuntu 20.04?

Zur Installation laden Sie Kafka von der offiziellen Website herunter, entpacken es und konfigurieren die Umgebungsvariablen. Zudem ist die Installation und Konfiguration von ZooKeeper erforderlich.

4. Wie starte und stoppe ich Apache Kafka?

Der Kafka-Server wird mit sudo $KAFKA_HOME/bin/kafka-server-start.sh $KAFKA_HOME/config/server.properties gestartet und mit sudo $KAFKA_HOME/bin/kafka-server-stop.sh gestoppt.

5. Was ist ein Kafka-Thema?

Ein Kafka-Thema ist eine logische Struktur für die Speicherung von Nachrichten. Es dient zur Kategorisierung und Organisation von Nachrichten.

6. Wie erstelle ich ein Kafka-Thema?

Ein Thema wird mit folgendem Befehl erstellt: sudo $KAFKA_HOME/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic my_topic.

7. Wie veröffentliche ich Nachrichten in Kafka?

Nachrichten werden mit sudo $KAFKA_HOME/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic my_topic veröffentlicht.

8. Wie konsumiere ich Nachrichten aus Kafka?

Nachrichten werden mit sudo $KAFKA_HOME/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic my_topic --from-beginning empfangen.

9. Welche Rolle spielt ZooKeeper in Apache Kafka?

ZooKeeper dient als verteiltes Koordinationssystem zur Sicherstellung von Konsistenz und Fehlertoleranz in Kafka. Es verwaltet Metadaten wie Themen und Partitionen.

10. Welche weiteren Funktionen bietet Apache Kafka?

Apache Kafka bietet eine Vielzahl von Funktionen, darunter Stream-Verarbeitung, Message Queuing, Event Sourcing, Microservice-Kommunikation und vieles mehr.

Tags: Apache Kafka, Ubuntu 20.04, Installation, Konfiguration, Streaming-Plattform, Echtzeitverarbeitung, ZooKeeper, Themen, Nachrichten, Konsumenten, Produzenten