GNU/Linux >> Znalost Linux >  >> Linux

Jak nainstalovat Apache Kafka na Rocky Linux 8

Apache Kafka je softwarová aplikace pro zpracování datových proudů a zprostředkovatele zpráv s otevřeným zdrojovým kódem, která vám umožňuje zpracovávat datové proudy prostřednictvím distribuované streamovací platformy. Funguje jako systém zpráv mezi odesílatelem a příjemcem. Apache Kafka je založen na distribuované architektuře, takže poskytuje vysokou odolnost proti chybám a možnosti škálovatelnosti. Původně byl vyvinut LinkedIn, ale nyní je to projekt Apache Software Foundation. Apache Kafka poskytuje rozhraní pro čtení a zápis dat do clusterů Kafka nebo pro import a export dat do a ze systémů třetích stran.

V tomto příspěvku vysvětlíme, jak nainstalovat Apache Kafka na Rocky Linux 8.

Předpoklady

  • Server se systémem RockyLinux 8 na cloudové platformě Atlantic.Net
  • Heslo uživatele root nakonfigurované na vašem serveru

Krok 1 – Vytvořte cloudový server Atlantic.Net

Nejprve se přihlaste ke svému cloudovému serveru Atlantic.Net. Vytvořte nový server a jako operační systém vyberte Rocky Linux 8 s alespoň 2 GB RAM. Připojte se ke svému cloudovému serveru přes SSH a přihlaste se pomocí přihlašovacích údajů zvýrazněných v horní části stránky.

Jakmile se přihlásíte na svůj server, spusťte následující příkaz a aktualizujte svůj základní systém nejnovějšími dostupnými balíčky.

aktualizace dnf -y

Krok 2 – Instalace Java

Apache Kafka je aplikace založená na Javě, takže Java musí být nainstalována na vašem serveru. Pokud není nainstalován, můžete jej nainstalovat pomocí následujícího příkazu:

dnf install java-11-openjdk-devel -y

Jakmile je Java nainstalována, ověřte instalaci Java pomocí následujícího příkazu:

java --version

Verzi Java získáte v následujícím výstupu:

openjdk 11.0.13 2021-10-19 LTSOpenJDK Runtime Environment 18.9 (sestavení 11.0.13+8-LTS)OpenJDK 64bitový server VM 18.9 (sestavení 11.0.13+8-LTS), smíšený režim pre> 

Krok 3 – Nainstalujte Apache Kafka na Rocky Linux 8

Nejprve přejděte na oficiální web Apache a stáhněte si nejnovější verzi Apache Kafka pomocí příkazu wget:

wget https://dlcdn.apache.org/kafka/3.0.0/kafka_2.13-3.0.0.tgz

Po dokončení stahování rozbalte stažený soubor pomocí následujícího příkazu:

tar -xvzf kafka_2.13-3.0.0.tgz

Jakmile je stažený soubor rozbalen, přesuňte extrahovaný adresář do adresáře /usr/local:

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

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Krok 4 – Vytvořte soubor Systemd Service pro Zookeeper a Kafka

Pro produkční prostředí se doporučuje vytvořit soubor služby systemd, aby bylo možné na pozadí spouštět Zookeeper i Kafka.

Nejprve vytvořte soubor služby systemd pro Zookeeper pomocí následujícího příkazu:

nano /etc/systemd/system/zookeeper.service

Přidejte následující řádky:

[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

Uložte a zavřete soubor a poté vytvořte soubor systemd service pro Kafka pomocí následujícího příkazu:

nano /etc/systemd/system/kafka.service

Přidejte následující řádky:

[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

Uložte a zavřete soubor a poté znovu načtěte démona systemd pomocí následujícího příkazu:

systemctl daemon-reload

Dále spusťte služby Zookeeper i Kafka a povolte jim spuštění při restartu systému:

systemctl spustit zookeepersystemctl spustit kafkasystemctl povolit zookeepersystemctl povolit kafka

Obě služby můžete také zkontrolovat pomocí následujícího příkazu:

stav systemctl zookeeper kafka

Získáte následující výstup:

● zookeeper.service – server Apache Zookeeper Načteno:načteno (/etc/systemd/system/zookeeper.service; zakázáno; přednastaveno dodavatelem:zakázáno) Aktivní:aktivní (běží) od pá 2021-10-22 07:51:56 UTC; Před 42 s Dokumenty:http://zookeeper.apache.org Hlavní PID:33802 (java) Úkoly:28 (limit:11411) Paměť:91,4M CGroup:/system.slice/zookeeper.service └─33802 java -Xmx512M -Xmx512M -server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:+ExplicitGCIn>Oct 22 07:51:58 RockyLinux8 bash[33802]:[2021-070:51-262 2021-170:51-262 INFO zookeeper.snapshot.compression.method =CHECKED (org.apache.zookeeper.>Oct 22 07:51:58 RockyLinux8 bash[33802]:[2021-10-22 07:51:58,676] INFO Snaphotting /tmp0 /zookeeper/version-2/snapshot.0 (org.apache.z>22. října 07:51:58 RockyLinux8 bash[33802]:[2021-10-22 07:51:58,679] INFO Snímek načten za 22 ms, nejvyšší zxid je 0x0, výtah je 1371985504 (o> 22. října 07:51:58 RockyLinux8 bash[33802]:[2021-10-22 07:51:58,679] INFO Snapshoting:0x0/tp-keeper/tmp/shot .0 (org.apache.z>Oct 22 07:51:58 RockyLinux8 bash[33802]:[2021-10-22 07:51:58,683] INFO Snímek pořízen za 3 ms (org.apache.zookeeper.server.ZooKe erServer) Oct 22 07:51:58 RockyLinux8 bash[33802]:[2021-10-22 07:51:58,703] INFO zookeeper.request_throttler.shutdownTimeout =10000 (org.apache.zookee:5555inux:88 bash[33802]:[2021-10-22 07:51:58,741] INFO PrepRequestProcessor (sid:0) spuštěn, reconfigEnabled=false (org.apach>Oct 22 07:51:58 RockyLinux8 bash[33802]:[230202]:10-22 07:51:58,764] INFO Použití checkIntervalMs=60000 maxPerMinute=10000 maxNeverUsedIntervalMs=>Oct 22 07:51:58 RockyLinux8 bash[33802]:[2021-5eper:51INFO:[2021-5eper:51INFO] . (org.apache.zookeeper.audit.ZKAuditProvid>22. října 07:52:12 RockyLinux8 bash[33802]:[2021-10-22 07:52:12,102] INFO Vytváření nového souboru protokolu:log.1 (org.apache. zookeeper.server.persistence.>● kafka.service - Apache Kafka Server Načteno:načteno (/etc/systemd/system/kafka.service; zakázáno; přednastaveno dodavatelem:zakázáno) Aktivní:aktivní (běží) od pá 2021-10-22 07:52:09 UTC; před 29s Dokumenty:http://kafka.apache.org/documentation.html Hlavní PID:34147 (java) Úkoly:69 (limit:11411) Paměť:331,6M CGroup:/system.slice/ kafka.service └─34147 /usr/lib/jvm/jre-11-openjdk/bin/java -Xmx1G -Xms1G -server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeap2225:Oct 14 RockyLinux8 bash[34147]:[2021-10-22 07:52:14,881] INFO [/config/changes-event-process-thread]:Spuštění (kafka.common.ZkNodeC>Oct 22 07:52:14 bash [34147]:[2021-10-22 07:52:14,899] INFO [SocketServer listenerType=ZK_BROKER, nodeId=0] Spouštění soketového serveru>22. října 07:52:14 RockyLinux8 bash [34147]:[2021-10-22 07:52:14,981] INFO [SocketServer listenerType=ZK_BROKER, nodeId=0] Spuštěn datové roviny acc>22. října 07:52:14 RockyLinux8 bash]:324147 [310147 -22 07:52:14,988] INFO [SocketServer listenerType=ZK_BROKER, nodeId=0] Spuštěn soketový server>22. října 07:52:15 RockyLinux8 bash[34147]:[2021-10-22 0021-10-22 0021-10-22 0021-10-22 0021-10-22 0021-10-22 0021-10-22 0021-10-22 0157:56:Kafka verze:3.0.0 (org.apache.kafka.common.utils.AppInfoParser) 22. října 07:52:15 RockyLinux8 bash[34147]:[2021-10-22 07:52:15,069] INFO Kafka commitId:53418c .apache.kafka.common.utils.AppInf>Oct 22 07:52:15 RockyLinux8 bash[34147]:[2021-10-22 07:52:15,069] INFO Kafka startTimeMs:1634889134.98 (orgfkaache.8 pre> 

Krok 5 – Vytvořte téma na Kafkovi

Chcete-li otestovat Apache Kafka, budete muset na serveru vytvořit alespoň jedno téma.

Změňte adresář na Apache Kafka a vytvořte testovací téma s názvem topic1 pomocí následujícího příkazu:

cd /usr/local/kafka/bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic topic1

Vytvořené téma nyní můžete ověřit pomocí následujícího příkazu:

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

Získáte následující výstup:

topic1

Kafka poskytuje dvě API:Producer a Consumer. Výrobce je zodpovědný za vytváření událostí a spotřebitel je zobrazuje na obrazovce:

Nejprve spusťte následující příkaz k vytvoření události s názvem event1 pomocí následujícího příkazu:

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

Zadejte nějaký text, který chcete streamovat a zobrazovat na spotřebiteli.

>Ahoj, toto je moje první událost

Ukázkový výstup:

[2021-10-22 07:58:05,318] WARN [Producer clientId=console-producer] Chyba při načítání metadat s ID korelace 3 :{event1=LEADER_NOT_AVAILABLE} (org.apache.NetworkClient)<. /před> 

Otevřete jiný terminál a spusťte následující příkaz pro zobrazení vygenerovaných dat událostí v reálném čase:

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic event1 --from-beginning

Získáte následující výstup:

Ahoj, toto je moje první událost

Závěr

Ve výše uvedené příručce jste se naučili, jak nainstalovat Apache Kafka na Rocky Linux 8. Další informace najdete na stránce dokumentace Apache Kafka. Začněte s Apache Kafka na VPS hostingu od Atlantic.Net!


Linux
  1. Jak nainstalovat Apache Cassandra na AlmaLinux / Rocky Linux 8

  2. Jak nainstalovat Apache Kafka na CentOS 8

  3. Jak nainstalovat Apache Maven na Rocky Linux/Alma Linux 8

  1. Jak nainstalovat RockyLinux 8.4

  2. Jak nainstalovat Python 3.9 na Rocky Linux 8

  3. Jak nainstalovat Python 3.10 na Rocky Linux 8

  1. Jak nainstalovat Apache Solr na Rocky Linux

  2. Jak nainstalovat Rocky Linux 8.4

  3. Jak nainstalovat Apache Maven na Rocky Linux / CentOS 8