GNU/Linux >> Tutoriels Linux >  >> Linux

Comment installer Apache Kafka sur Rocky Linux 8

Apache Kafka est une application logicielle open source de traitement de flux et de courtage de messages qui vous permet de traiter des flux de données via une plateforme de streaming distribuée. Il agit comme un système de messagerie entre l'expéditeur et le destinataire. Apache Kafka est basé sur une architecture distribuée, il offre donc une tolérance élevée aux pannes et des capacités d'évolutivité. Il a été initialement développé par LinkedIn, mais maintenant c'est un projet d'Apache Software Foundation. Apache Kafka fournit une interface pour lire et écrire des données sur des clusters Kafka ou pour importer et exporter des données vers et depuis des systèmes tiers.

Dans cet article, nous expliquerons comment installer Apache Kafka sur Rocky Linux 8.

Prérequis

  • Un serveur exécutant RockyLinux 8 sur la plate-forme cloud Atlantic.Net
  • Un mot de passe root configuré sur votre serveur

Étape 1 - Créer un serveur cloud Atlantic.Net

Tout d'abord, connectez-vous à votre serveur Atlantic.Net Cloud. Créez un nouveau serveur en choisissant Rocky Linux 8 comme système d'exploitation avec au moins 2 Go de RAM. Connectez-vous à votre serveur cloud via SSH et connectez-vous à l'aide des informations d'identification mises en évidence en haut de la page.

Une fois connecté à votre serveur, exécutez la commande suivante pour mettre à jour votre système de base avec les derniers packages disponibles.

dnf mise à jour -y

Étape 2 - Installer Java

Apache Kafka est une application basée sur Java, donc Java doit être installé sur votre serveur. S'il n'est pas installé, vous pouvez l'installer à l'aide de la commande suivante :

installation dnf java-11-openjdk-devel -y

Une fois Java installé, vérifiez l'installation de Java à l'aide de la commande suivante :

java --version

Vous obtiendrez la version Java dans la sortie suivante :

openjdk 11.0.13 2021-10-19 LTSOpenJDK Runtime Environment 18.9 (build 11.0.13+8-LTS)OpenJDK 64-Bit Server VM 18.9 (build 11.0.13+8-LTS, mode mixte, partage) 

Étape 3 - Installer Apache Kafka sur Rocky Linux 8

Tout d'abord, rendez-vous sur le site officiel d'Apache et téléchargez la dernière version d'Apache Kafka à l'aide de la commande wget :

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

Une fois le téléchargement terminé, extrayez le fichier téléchargé à l'aide de la commande suivante :

tar -xvzf kafka_2.13-3.0.0.tgz

Une fois le fichier téléchargé extrait, déplacez le répertoire extrait vers le répertoire /usr/local :

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

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Étape 4 - Créer un fichier de service Systemd pour Zookeeper et Kafka

Pour l'environnement de production, il est recommandé de créer un fichier de service systemd pour exécuter à la fois Zookeeper et Kafka en arrière-plan.

Tout d'abord, créez un fichier de service systemd pour Zookeeper avec la commande suivante :

nano /etc/systemd/system/zookeeper.service

Ajoutez les lignes suivantes :

[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

Enregistrez et fermez le fichier, puis créez un fichier de service systemd pour Kafka à l'aide de la commande suivante :

nano /etc/systemd/system/kafka.service

Ajoutez les lignes suivantes :

[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

Enregistrez et fermez le fichier, puis rechargez le démon systemd avec la commande suivante :

rechargement du démon systemctl

Ensuite, démarrez les services Zookeeper et Kafka et activez-les au redémarrage du système :

systemctl start zookeepersystemctl start kafkasystemctl enable zookeepersystemctl enable kafka

Vous pouvez également vérifier les deux services à l'aide de la commande suivante :

statut systemctl zookeeper kafka

Vous obtiendrez le résultat suivant :

● zookeeper.service - Serveur Apache Zookeeper Chargé :chargé (/etc/systemd/system/zookeeper.service ; désactivé ; préréglage fournisseur :désactivé) Actif :actif (en cours d'exécution) depuis le ven. 2021-10-22 07h51 :56 UTC ; Il y a 42 s Docs :http://zookeeper.apache.org PID principal :33802 (java) Tâches :28 (limite :11 411) Mémoire :91,4 Mo CGroup :/system.slice/zookeeper.service └─33802 java -Xmx512M -Xms512M -server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:+ExplicitGCIn>Oct 22 07:51:58 RockyLinux8 bash[33802] :[2021-10-22 07:51:58,676] 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 Snapshotting :0x0 à /tmp /zookeeper/version-2/snapshot.0 (org.apache.z>Oct 22 07:51:58 RockyLinux8 bash[33802] :[2021-10-22 07:51:58,679] INFO Instantané chargé en 22 ms, maximum zxid est 0x0, le résumé est 1371985504 (o>Oct 22 07:51:58 RockyLinux8 bash[33802] :[2021-10-22 07:51:58,679] INFO Instantané :0x0 vers /tmp/zookeeper/version-2/snapshot .0 (org.apache.z>Oct 22 07:51:58 RockyLinux8 bash[33802] :[2021-10-22 07:51:58,683] INFO Instantané pris en 3 ms (org.apache.zookeeper.server.ZooKeep erServer) 22 octobre 07:51:58 RockyLinux8 bash [33802] :[2021-10-22 07:51:58,703] INFO zookeeper.request_throttler.shutdownTimeout =10000 (org.apache.zookee> 22 octobre 07:51:58 RockyLinux8 bash[33802] :[2021-10-22 07:51:58,741] INFO PrepRequestProcessor (sid:0) démarré, reconfigEnabled=false (org.apach>Oct 22 07:51:58 RockyLinux8 bash[33802] :[2021- 10-22 07:51:58,764] INFO Using checkIntervalMs=60000 maxPerMinute=10000 maxNeverUsedIntervalMs=>Oct 22 07:51:58 RockyLinux8 bash[33802] :[2021-10-22 07:51:58,765] INFO L'audit de ZooKeeper est désactivé . (org.apache.zookeeper.audit.ZKAuditProvid>Oct 22 07:52:12 RockyLinux8 bash[33802] :[2021-10-22 07:52:12,102] INFO Création d'un nouveau fichier journal :log.1 (org.apache. zookeeper.server.persistence.>● kafka.service - Serveur Apache Kafka chargé :chargé (/etc/systemd/system/kafka.service ; désactivé ; préréglage fournisseur :désactivé) Actif :actif (en cours d'exécution) depuis le ven. 2021-10-22 07:52:09 UTC ; il y a 29 s Docs :http://kafka.apache.org/documentation.html PID principal :34147 (java) Tâches :69 (limite :11411) Mémoire :331,6 M CGroup :/system.slice/ kafka.service └─34147 /usr/lib/jvm/jre-11-openjdk/bin/java -Xmx1G -Xms1G -server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancy>Oct 22 07:52 :14 RockyLinux8 bash[34147] :[2021-10-22 07:52:14,881] INFO [/config/changes-event-process-thread] :Démarrage (kafka.common.ZkNodeC>Oct 22 07:52:14 RockyLinux8 bash [34147] :[2021-10-22 07:52:14,899] INFO [SocketServer listenerType=ZK_BROKER, nodeId=0] Démarrage du serveur de socket> 22 octobre 07:52:14 RockyLinux8 bash [34147] :[2021-10-22 07:52:14,981] INFO [SocketServer listenerType=ZK_BROKER, nodeId=0] Démarrage du plan de données acc>Oct 22 07:52:14 RockyLinux8 bash[34147] :[2021-10 -22 07:52:14,988] INFO [SocketServer listenerType=ZK_BROKER, nodeId=0] Serveur de socket démarré> 22 octobre 07:52:15 RockyLinux8 bash[34147] :[2021-10-22 07:52:15,069] INFO Kafka version :3.0.0 (org.apache.kafka.common.utils.AppInfoParser)22 octobre 07:52:15 RockyLinux8 bash[34147] :[2021-10-22 07:52:15,069] INFO Kafka commitId :8cb0a5e9d3441962 (org .apache.kafka.common.utils.AppInf>22 octobre 07:52:15 RockyLinux8 bash[34147] :[2021-10-22 07:52:15,069] INFO Kafka startTimeMs :1634889134988 (org.apache.kafka. 

Étape 5 - Créer un sujet sur Kafka

Pour tester Apache Kafka, vous devrez créer au moins un sujet sur le serveur.

Changez le répertoire pour Apache Kafka et créez un sujet de test nommé topic1 avec la commande suivante :

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

Vous pouvez maintenant vérifier votre sujet créé à l'aide de la commande suivante :

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

Vous obtiendrez le résultat suivant :

sujet1

Kafka fournit deux API :Producteur et Consommateur. Le Producteur se charge de créer les événements et le Consommateur les affiche à l'écran :

Tout d'abord, exécutez la commande suivante pour créer un événement nommé événement1 à l'aide de la commande suivante :

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

Tapez du texte que vous souhaitez diffuser et afficher sur le consommateur.

>Bonjour, c'est mon premier événement

Exemple de sortie :

[2021-10-22 07:58:05,318] WARN [Producer clientId=console-producer] Erreur lors de la récupération des métadonnées avec l'ID de corrélation 3 :{event1=LEADER_NOT_AVAILABLE} (org.apache.kafka.clients.NetworkClient) 

Ouvrez un autre terminal et exécutez la commande suivante pour afficher les données d'événement générées en temps réel :

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

Vous obtiendrez le résultat suivant :

Bonjour, c'est mon premier événement

Conclusion

Dans le guide ci-dessus, vous avez appris comment installer Apache Kafka sur Rocky Linux 8. Pour plus d'informations, vous pouvez visiter la page de documentation d'Apache Kafka. Démarrez avec Apache Kafka sur l'hébergement VPS d'Atlantic.Net !


Linux
  1. Comment installer RockyLinux 8.4

  2. Comment installer Apache Cassandra sur AlmaLinux / Rocky Linux 8

  3. Comment installer Apache Kafka sur CentOS 8

  4. Comment installer Apache Maven sur Rocky Linux/Alma Linux 8

  5. Comment installer Python 3.10 sur Rocky Linux 8

Comment installer Apache sur Almalinux 8 / Rocky Linux 8

Comment installer Apache Kafka sur Rocky Linux 8 ou AlmaLinux

Comment installer Docker CE sur Rocky Linux 8

Comment installer Anydesk sur Rocky Linux 8

Comment installer Apache Tomcat sur Rocky Linux 8

Installer WonderCMS sur Rocky Linux 8