Apache Kafka est un service de diffusion de messages qui permet à différentes applications d’un système distribué de communiquer et de partager des données via des messages.
Il fonctionne comme un pub/sous-système où les applications productrices publient des messages et les systèmes consommateurs y souscrivent.
Apache Kafka vous permet d’adopter une architecture faiblement couplée entre les parties de votre système qui produisent et consomment des données. Cela simplifie la conception et la gestion du système. Kafka s’appuie sur Zookeeper pour la gestion des métadonnées et la synchronisation des différents éléments du cluster.
Table des matières
Caractéristiques d’Apache Kafka
Apache Kafka est devenu populaire, entre autres raisons, pour être
- Évolutivité via des clusters et des partitions
- Rapide capable d’effectuer 2 millions d’écritures par seconde
- Maintient l’ordre dans lequel les messages sont envoyés
- Fiable grâce à son système de répliques
- Il peut être mis à niveau sans aucun temps d’arrêt
Explorons maintenant quelques-uns des cas d’utilisation courants de Kafka.
Cas d’utilisation courants d’Apache Kafka
Kafka est souvent utilisé dans le traitement du Big Data, l’enregistrement et l’agrégation d’événements tels que les clics de bouton pour l’analyse, et la combinaison de journaux de différentes parties d’un système dans un emplacement central.
Il aide à permettre la communication entre différentes applications dans un système et le traitement en temps réel des données des appareils IoT.
Voyons maintenant les étapes détaillées pour installer Kafka sur Windows et Linux.
Installer Kafka sous Windows
Tout d’abord, vérifiez si Java est installé sur votre machine pour installer Apache Kafka sous Windows. Ouvrez l’invite de commande en mode administrateur et saisissez la commande :
java --version
Si Java est installé, vous devriez obtenir le numéro de version du JDK actuellement installé.
Si vous obtenez un message d’erreur indiquant que la commande n’a pas été reconnue, Java n’a pas été installé et vous devez installer Java. Pour installer Java, rendez-vous sur Adoptium.net et cliquez sur le bouton de téléchargement.
Cela devrait télécharger le fichier d’installation Java. Une fois le téléchargement terminé, exécutez le programme d’installation. Cela devrait ouvrir l’invite d’installation.
Appuyez plusieurs fois sur Suivant pour choisir les options par défaut. L’installation devrait alors commencer. Vérifiez l’installation en fermant l’invite de commande, en rouvrant une autre invite de commande en mode administrateur et en saisissant la commande :
java --version
Cette fois, vous devriez obtenir la version JDK que vous venez d’installer. Une fois l’installation terminée, nous pouvons commencer à installer Kafka.
Pour installer Kafka, rendez-vous d’abord sur le site Web de Kafka.
Cliquez sur le lien, et cela devrait vous amener à la page Téléchargements. Téléchargez les derniers binaires disponibles.
Cela téléchargera les scripts et les binaires Kafka emballés dans le fichier .tgz. Après le téléchargement, vous devez extraire les fichiers de l’archive .tgz. Pour extraire, j’utiliserai WinZip, qui peut être téléchargé à partir du site Web de WinZip.
Après avoir extrait le fichier, déplacez-le vers C: de sorte que le chemin du fichier devienne C:kafka
Ouvrez ensuite l’invite de commande en mode administrateur et démarrez Zookeeper en naviguant d’abord dans le répertoire Kafka. Et en exécutant le fichier zookeeper-server-start.bat avec zookeeper.properties comme fichier de configuration
cd C:kafka binwindowszookeeper-server-start.bat configzookeeper.properties
Avec Zookeeper en cours d’exécution, nous devons ajouter le fichier exécutable wmic que Kafka utilise dans notre système PATH,
set PATH=C:WindowsSystem32wbem;%PATH%;
Après cela, démarrez le serveur Apache Kafka en ouvrant une autre session d’invite de commande en mode administrateur et en naviguant vers le dossier C:kafka
cd C:kafka
Puis lancez Kafka en courant
binwindowskafka-server-start.bat configserver.properties
Avec cela, Kafka devrait fonctionner. Vous pouvez personnaliser les propriétés du serveur, telles que l’emplacement d’écriture des journaux dans le fichier server.properties.
Installer Kafka sous Linux
Tout d’abord, assurez-vous que votre système est à jour en mettant à jour tous les packages
sudo apt update && sudo apt upgrade
Ensuite, vérifiez si Java est installé sur votre machine en exécutant
java --version
Si java est installé, vous verrez le numéro de version. Cependant, si ce n’est pas le cas, vous pouvez l’installer en utilisant apt.
sudo apt install default-jdk
Après cela, nous pouvons installer Apache Kafka en téléchargeant les binaires depuis le site Web.
Ouvrez votre terminal et accédez au dossier dans lequel le téléchargement a été enregistré. Dans mon cas, je dois accéder au dossier Téléchargements.
cd Downloads
Une fois dans le dossier des téléchargements, extrayez les fichiers téléchargés à l’aide de tar :
tar -xvzf kafka_2.13-3.3.1.tgz
Accédez au dossier extrait
cd kafka_2.13-3.3.1.tgz
Listez les répertoires et les fichiers.
Une fois dans le dossier, démarrez un serveur Zookeeper en exécutant le script zookeeper-server-start.sh situé dans le répertoire bin du dossier extrait.
Le script nécessitera un fichier de configuration Zookeeper. Le fichier par défaut s’appelle zookeeper.properties et se trouve dans le sous-répertoire config.
Donc pour démarrer le serveur, utilisez la commande :
bin/zookeeper-server-start.sh config/zookeeper.properties
Avec Zookeeper en cours d’exécution, nous pouvons démarrer le serveur Apache Kafka. Le script kafka-server-start.sh se trouve également dans le répertoire bin. La commande attend également un fichier de configuration. Celui par défaut est server.properties stocké dans le fichier de configuration.
bin/kafka-server-start.sh config/server.properties
Cela devrait faire fonctionner Apache Kafka. Dans le répertoire bin, vous trouverez de nombreux scripts pour faire des choses telles que créer des sujets, gérer des producteurs et gérer des consommateurs. Vous pouvez également personnaliser les propriétés du serveur dans le fichier server.properties.
Derniers mots
Dans ce guide, nous avons expliqué comment installer Java et Apache Kafka. Bien que vous puissiez installer et gérer manuellement les clusters Kafka, vous pouvez également utiliser des options gérées telles qu’Amazon Web Services et Confluent.
Ensuite, vous pouvez apprendre le traitement des données avec Kafka et Spark.