## Étape 1 :Prérequis
Avant d'installer Apache Kafka, assurez-vous de disposer des conditions préalables suivantes :
- Serveur Ubuntu 18.04 avec un utilisateur non root avec les privilèges « sudo ».
- Java Development Kit (JDK) 8 ou version ultérieure installé.
- Zookeeper installé et opérationnel. [Ici](/blog/how-to-install-zookeeper-on-ubuntu-1804) explique comment installer ZooKeeper sur Ubuntu 18.04.
Étape 2 :Téléchargez Apache Kafka
1. Visitez la page officielle [Téléchargement Apache Kafka](https://kafka.apache.org/download).
2. Dans la section « Versions », cliquez sur la dernière version stable (par exemple, « 2.8.0 »).
3. Sur la page de version, cliquez sur le lien pour télécharger le fichier tarball (par exemple, `kafka_2.12-2.8.0.tgz`).
4. Utilisez `wget` pour télécharger le fichier tarball :
```
wget https://www-us.apache.org/dist/kafka/2.8.0/kafka_2.12-2.8.0.tgz
```
Étape 3 :Extraire l'archive tar
Une fois le téléchargement terminé, extrayez le fichier tarball dans un répertoire de votre choix. Dans cet exemple, nous allons l'extraire dans `/opt` :
```
sudo tar -xzvf kafka_2.12-2.8.0.tgz -C /opt
```
Cela créera un répertoire appelé `/opt/kafka_2.12-2.8.0`.
Étape 4 :Définir les variables d'environnement
Pour faciliter le travail avec Kafka, vous pouvez définir certaines variables d'environnement. Ajoutez les lignes suivantes à votre fichier `/etc/profile` :
```
exporter KAFKA_HOME=/opt/kafka_2.12-2.8.0
export PATH=$KAFKA_HOME/bin:$PATH
```
Enregistrez le fichier et fermez-le. Ensuite, exécutez la commande suivante pour actualiser les variables d'environnement :
```
source /etc/profil
```
Étape 5 :Créer un utilisateur Kafka
Pour exécuter Kafka, il est recommandé de créer un utilisateur dédié. Cela permet d'isoler les processus Kafka des autres processus système et d'améliorer la sécurité.
```
sudo adduser --system --group kafka
```
Étape 6 :Configurer Zookeeper
Kafka s'appuie sur Zookeeper pour la coordination. Modifiez le fichier `config/zookeeper.properties` dans le répertoire d'installation de Kafka :
```
sudo vi /opt/kafka_2.12-2.8.0/config/zookeeper.properties
```
Assurez-vous que le paramètre « connect » pointe vers l'ensemble Zookeeper :
```
connexion =hôte local : 2181
```
Enregistrez le fichier et fermez-le.
Étape 7 :Configurer Kafka
Ensuite, configurons Kafka en éditant le fichier `config/server.properties` :
```
sudo vi /opt/kafka_2.12-2.8.0/config/server.properties
```
Voici les paramètres clés à modifier :
- Remplacez `broker.id` par un identifiant unique pour ce courtier (par exemple, `0` s'il s'agit du premier courtier de votre cluster).
- Définissez `zookeeper.connect` pour qu'il pointe vers l'ensemble Zookeeper (par exemple, `localhost:2181`).
- Pensez à régler le paramètre `log.dirs` pour spécifier le répertoire dans lequel Kafka stockera ses journaux.
- Vérifiez d'autres paramètres tels que « num.partitions » et « default.replication.factor » en fonction de vos besoins.
Enregistrez le fichier et fermez-le.
Étape 8 :Créer des sujets
Les sujets sont les unités fondamentales du stockage de données dans Kafka. Pour créer un sujet, exécutez la commande suivante, en remplaçant « mon-sujet » par le nom du sujet souhaité :
```
/opt/kafka_2.12-2.8.0/bin/kafka-topics.sh --create --topic mon-sujet --partitions 1 --replication-factor 1 --zookeeper localhost:2181
```
Étape 9 :Démarrez Kafka
Pour démarrer le courtier Kafka, exécutez la commande suivante :
```
/opt/kafka_2.12-2.8.0/bin/kafka-server-start.sh /opt/kafka_2.12-2.8.0/config/server.properties
```
Étape 10 :tester Kafka
Pour tester si Kafka fonctionne correctement, vous pouvez utiliser les outils « kafka-console-producer » et « kafka-console-consumer ».
Produire un message
Pour produire un message, exécutez la commande suivante, en remplaçant « my-topic » par le nom de votre sujet :
```
/opt/kafka_2.12-2.8.0/bin/kafka-console-producer.sh --topic mon-sujet --broker-list localhost:9092
```
Dans la console, tapez un message et appuyez sur « Entrée ».
Consommer un message
Pour consommer le message, exécutez la commande suivante, en remplaçant « my-topic » par le nom de votre sujet :
```
/opt/kafka_2.12-2.8.0/bin/kafka-console-consumer.sh --topic mon-sujet --bootstrap-server localhost:9092 --from-beginning
```
Dans la console, vous devriez voir le message que vous avez produit précédemment.
Étape 11 : Configurer le pare-feu (facultatif)
Si votre serveur Kafka n'est pas accessible en externe, vous devrez peut-être configurer votre pare-feu pour autoriser les connexions entrantes sur le port 9092 (ou sur tout port personnalisé que vous avez spécifié lors de la configuration).
Conclusion
Vous avez installé et configuré avec succès Apache Kafka sur votre serveur Ubuntu 18.04. Vous pouvez désormais explorer ses capacités et commencer à créer des applications en temps réel.
|