V tomto tutoriálu vám ukážeme, jak nainstalovat Apache Kafka na CentOS 8. Pro ty z vás, kteří nevěděli, Apache Kafka je distribuovaný agent zpráv navržený pro práci s obrovskými objemy informace v reálném čase efektivně. Na rozdíl od tradičních agentů, jako jsou ActiveMQ a RabbitMQ, Kafka funguje jako skupina jednoho nebo více serverů, díky čemuž je vysoce škálovatelný a díky distribuované povaze má zabudovanou odolnost proti chybám a zároveň poskytuje větší propustnost ve srovnání s jeho protějšky.
Tento článek předpokládá, že máte alespoň základní znalosti Linuxu, víte, jak používat shell, a co je nejdůležitější, hostujete svůj web na svém vlastním VPS. Instalace je poměrně jednoduchá a předpokládá, že běží v účtu root, pokud ne, možná budete muset přidat 'sudo
‘ k příkazům pro získání oprávnění root. Ukážu vám krok za krokem instalaci Apache Kafka na server CentOS 8.
Předpoklady
- Server s jedním z následujících operačních systémů:CentOS 8.
- Abyste předešli případným problémům, doporučujeme použít novou instalaci operačního systému.
non-root sudo user
nebo přístup kroot user
. Doporučujeme jednat jakonon-root sudo user
, protože však můžete poškodit svůj systém, pokud nebudete při jednání jako root opatrní.
Nainstalujte Apache Kafka na CentOS 8
Krok 1. Nejprve začněme tím, že zajistíme, aby byl váš systém aktuální.
sudo dnf update
Krok 2. Instalace Java.
Apache Kafka vyžaduje, aby byla na vašem serveru nainstalována Java. OpenJDK můžete nainstalovat na svůj počítač spuštěním následujícího příkazu:
sudo dnf install java-11-openjdk
Ověřte verzi Java spuštěním následujícího příkazu:
java -version
Krok 3. Instalace Apache Kafka na CentOS 8.
Nejprve si stáhněte a extrahujte Kafku z webu Apache. Můžete použít wget
ke stažení Kafky:
wget http://www-us.apache.org/dist/kafka/2.4.0/kafka_2.13-2.4.0.tgz
Potom rozbalte archivní soubor:
tar xzf kafka_2.13-2.4.0.tgz mv kafka_2.13-2.4.0 /usr/local/kafka
Krok 4. Nastavte Kafka Systemd Unit Files.
Nejprve vytvořte systemd
unit file pro Zookeeper pomocí níže uvedeného příkazu:
nano /etc/systemd/system/zookeeper.service
Přidat níže obsah:
[Unit] Description=Apache Zookeeper server Documentation=http://zookeeper.apache.org Requires=network.target remote-fs.target After=network.target remote-fs.target [Service] Type=simple ExecStart=/usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties ExecStop=/usr/local/kafka/bin/zookeeper-server-stop.sh Restart=on-abnormal [Install] WantedBy=multi-user.target
Potom vytvořte Kafka systemd
soubor jednotky pomocí následujícího příkazu:
nano /etc/systemd/system/kafka.service
Přidejte níže uvedený obsah:
[Unit] Description=Apache Kafka Server Documentation=http://kafka.apache.org/documentation.html Requires=zookeeper.service [Service] Type=simple Environment="JAVA_HOME=/usr/lib/jvm/jre-11-openjdk" ExecStart=/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties ExecStop=/usr/local/kafka/bin/kafka-server-stop.sh [Install] WantedBy=multi-user.target
Znovu načtěte systemd
démon pro použití změn:
systemctl daemon-reload
Krok 5. Spusťte Kafka Server.
Kafka vyžadoval ZooKeeper, takže nejprve na svém systému spusťte server ZooKeeper:
sudo systemctl start zookeeper
Dále spusťte server Kafka a zobrazte aktuální stav:
sudo systemctl start kafka sudo systemctl status kafka
Krok 6. Vytváření témat v Apache Kafka.
„Producent“ je proces zodpovědný za vkládání dat do našeho Kafka. Kafka přichází s klientem příkazového řádku, který přijímá vstup ze souboru nebo ze standardního zadejte a odešlete je jako zprávy do clusteru Kafka:
cd /usr/local/kafka bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic testTopic Created topic NewTopic.
Můžete vytvořit více témat spuštěním stejného příkazu jako výše. Poté můžete vytvořená témata na Kafkovi zobrazit spuštěním níže uvedeného příkazu:
bin/kafka-topics.sh --list --zookeeper localhost:2181 NewTopic KafkaonCentOS8 KafkaonCentOS8
Krok 7. Producent a spotřebitel Apache Kafka.
Spusťte producenta a poté zadejte několik zpráv do konzole, které chcete odeslat na server:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic NewTopic >Welcome to kafka >This is my new topic >
Kafka má také spotřebitele příkazového řádku pro čtení dat z Kafka clusteru a zobrazování zpráv na standardní výstup:
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic NewTopic --from-beginning Welcome to kafka This is my new topic
Blahopřejeme! Úspěšně jste nainstalovali Apache Kafka. Děkujeme, že jste použili tento návod k instalaci Apache Kafka v systému CentOS 8. Pro další pomoc nebo užitečné informace vám doporučujeme navštívit oficiální web Apache Kafka .