Passer au contenu
24 h

Informatique

5$/h – Introduction à Apache Kafka

Objectif 

Comprendre l’architecture et les composants d’Apache Kafka Installer et configurer un cluster Kafka Écrire des producteurs et consommateurs Kafka Gérer les topics, partitions et offsets Intégrer Kafka avec d’autres systèmes via Kafka Connect Utiliser Kafka Streams pour le traitement de données en temps réel Appliquer des pratiques de sécurité, de monitoring et d’optimisation

Contenu du cours 

  • Introduction à Apache Kafka
    Historique, architecture et cas d’usage
    Concepts : Broker, Topic, Partition, Offset
  • Installation et configuration
    Kafka et Zookeeper : installation, configuration et démarrage
    Cluster Kafka en environnement local ou cloud
  • Concepts fondamentaux de Kafka
    Producteurs, consommateurs et groupes de consommateurs
    Réplication, tolérance aux pannes, gestion des offsets
  • Développement avec Kafka
    API Java (ou Python) : Producer et Consumer
    Sérialisation/Désérialisation
    Traitement d’erreurs et reprise
  • Administration et monitoring
    Outils d’administration (Kafka Manager, Confluent Control Center)
    Monitoring avec JMX, Prometheus, Grafana
    Sécurité : SSL, SASL, ACL
  • Kafka Connect
    Architecture et fonctionnement
    Connecteurs sources et sinks
    Exemples d’intégration (MySQL, Elasticsearch, etc.)
  • Kafka Streams
    Traitement de flux : architecture et opérations
    Développement d’applications avec Kafka Streams API
    Cas d’usage : enrichissement, agrégation, windowing
  • Travaux pratiques
    Mise en place d’un cluster Kafka
    Création de producteurs et consommateurs Kafka
    Déploiement d’un connecteur avec Kafka Connect
    Développement d’une application Kafka Streams
  • Projet final
    Conception d’un pipeline complet de traitement de données en streaming
    Intégration, transformation et visualisation des données
    Implémentation des aspects de sécurité et monitoring

Préalables

  • Connaissances de base en programmation (Java ou Python)
  • Notions de systèmes distribués et de systèmes de messagerie