Déploiement Kafka sur Kubernetes : Scalabilité, Haute Disponibilité et Monitoring

 Déployer Apache Kafka sur Kubernetes ne consiste pas simplement à lancer quelques conteneurs Kafka.

Une plateforme Kafka destinée à la production doit prendre en compte plusieurs éléments essentiels :

  • la disponibilité des brokers ;
  • la disponibilité des contrôleurs KRaft ;
  • le stockage persistant ;
  • les pannes de pods et de nœuds ;
  • la réplication des partitions ;
  • la scalabilité des brokers ;
  • l'allocation des ressources ;
  • la connectivité réseau ;
  • l'observabilité ;
  • le consumer lag ;
  • la sécurité ;
  • les mises à niveau ;
  • la reprise après sinistre.

Kafka est une plateforme distribuée et stateful, tandis que Kubernetes orchestre dynamiquement les workloads et leur infrastructure.

Une architecture robuste doit donc combiner les mécanismes de réplication et de quorum de Kafka avec les capacités d'orchestration de Kubernetes.

Dans ce tutoriel, nous allons étudier une architecture pratique de déploiement Kafka sur Kubernetes, avec un accent particulier sur la scalabilité, la haute disponibilité, KRaft, le stockage persistant et le monitoring.

English version: https://shikhanirankari.blogspot.com/2026/09/kafka-deployment-kubernetes-scaling-ha-monitoring.html


1. Pourquoi exécuter Kafka sur Kubernetes ?

Apache Kafka et Kubernetes répondent à des problématiques différentes.

Apache Kafka fournit une plateforme distribuée de streaming d'événements.

Kubernetes fournit une plateforme d'orchestration de conteneurs.

Ensemble, ils peuvent supporter une architecture comme celle-ci :

Microservices
      │
      ▼
Producteurs d'événements
      │
      ▼
Apache Kafka
      │
      ▼
Consommateurs d'événements
      │
      ▼
Applications métier

Kubernetes peut automatiser le déploiement, le scheduling et certaines opérations d'infrastructure.

Kafka reste responsable des :

Topics
Partitions
Réplicas
Leaders
Consumers
Durabilité des événements

Une architecture typique peut être représentée ainsi :

                Cluster Kubernetes
┌────────────────────────────────────────────┐
│                                            │
│              Plateforme Kafka              │
│                                            │
│   ┌────────┐ ┌────────┐ ┌────────┐        │
│   │Broker 1│ │Broker 2│ │Broker 3│        │
│   └────────┘ └────────┘ └────────┘        │
│       │          │          │              │
│      PVC        PVC        PVC             │
│                                            │
│         Quorum KRaft                       │
│                                            │
│      Monitoring + Metrics + Alertes        │
│                                            │
└────────────────────────────────────────────┘

Un point fondamental doit être retenu :

L'orchestration Kubernetes ne remplace pas les mécanismes de haute disponibilité propres à Kafka.

Architecture de déploiement Kafka sur Kubernetes avec brokers KRaft stockage persistant producteurs consommateurs et monitoring


2. Kafka est un workload stateful

Les brokers Kafka stockent les données des partitions sur disque.

Par exemple :

Broker 1
 ├── orders-0
 ├── payments-1
 └── customers-2

Broker 2
 ├── orders-1
 ├── payments-2
 └── customers-0

Kafka est donc très différent d'une simple API REST stateless.

Un pod applicatif stateless peut généralement être remplacé sans dépendre de données locales.

Pour Kafka, il faut gérer correctement :

Identité du broker
Stockage persistant
Réplicas des partitions
Identité réseau
Métadonnées du cluster

La persistance ne doit donc pas être considérée comme un simple détail d'infrastructure.


3. Architecture Kafka moderne avec KRaft

Les architectures Kafka modernes utilisent KRaft — Kafka Raft metadata mode pour la gestion des métadonnées du cluster.

Conceptuellement :

            Quorum de contrôleurs KRaft

           ┌─────┬─────┬─────┐
           │ C1  │ C2  │ C3  │
           └──┬──┴──┬──┴──┬──┘
              │     │     │
      ────────┴─────┴─────┴────────
                    │
              Brokers Kafka

         ┌──────────┼──────────┐
         ▼          ▼          ▼

      Broker 1   Broker 2   Broker 3

Les contrôleurs KRaft gèrent les métadonnées du cluster.

Les brokers Kafka gèrent principalement le trafic de données et le stockage des partitions.

Dans une architecture de production, cette séparation facilite également la planification des ressources et des responsabilités.


4. Distribuer les brokers sur plusieurs nœuds Kubernetes

Imaginons un cluster Kubernetes contenant trois worker nodes :

Cluster Kubernetes

Worker Node 1
└── Kafka Broker 1

Worker Node 2
└── Kafka Broker 2

Worker Node 3
└── Kafka Broker 3

Cette architecture offre une meilleure résilience que de placer tous les brokers sur le même nœud Kubernetes.

Une distribution souhaitable peut être :

Node 1
├── Broker 1
└── PVC 1

Node 2
├── Broker 2
└── PVC 2

Node 3
├── Broker 3
└── PVC 3

Si le Node 2 tombe en panne, les brokers situés sur les Nodes 1 et 3 peuvent continuer à fonctionner.

C'est pourquoi les concepts suivants sont importants :

Pod Anti-Affinity
Node Affinity
Topology Spread
Availability Zones
Dedicated Nodes

5. Stockage persistant pour Kafka

Les données Kafka doivent pouvoir survivre aux redémarrages et remplacements des pods.

Conceptuellement :

Kafka Broker Pod
       │
       ▼
PersistentVolumeClaim
       │
       ▼
Persistent Volume
       │
       ▼
Infrastructure de stockage

Sans stratégie de stockage appropriée, la reconstruction d'un broker peut nécessiter de récupérer à nouveau d'importantes quantités de données depuis les autres réplicas.

Pour la production, analysez :

  • la latence ;
  • le throughput ;
  • les IOPS ;
  • la capacité ;
  • la rétention ;
  • les failure domains ;
  • l'extension des volumes ;
  • les procédures de récupération.

Ne choisissez pas le stockage Kafka uniquement selon le nombre de gigaoctets disponibles.

Les performances du stockage ont un impact direct sur les performances de Kafka.


6. La réplication des partitions fournit la haute disponibilité Kafka

Supposons un topic :

Topic : orders

Partitions : 3
Replication Factor : 3

Kafka peut distribuer les réplicas de cette manière :

             Broker 1   Broker 2   Broker 3

orders-0        L          F          F
orders-1        F          L          F
orders-2        F          F          L

L = Leader
F = Follower

Si un broker devient indisponible, un réplica approprié et suffisamment à jour peut prendre le rôle de leader selon l'état du cluster et sa configuration.

C'est l'une des bases de la haute disponibilité Kafka.

Haute disponibilité Kafka sur Kubernetes avec leaders followers réplication des partitions et récupération après panne d'un broker


7. Replication Factor et min.insync.replicas

Une configuration courante orientée durabilité est :

replication.factor = 3
min.insync.replicas = 2
producer acks = all

Avec :

replication.factor = 3

Kafka conserve trois réplicas pour chaque partition concernée.

Avec :

min.insync.replicas = 2

et :

acks=all

Kafka impose des conditions de réplication avant qu'une écriture puisse être considérée comme réussie.

Apache Kafka documente explicitement le scénario replication factor 3 + min.insync.replicas 2 + acks=all comme exemple typique pour renforcer les garanties de durabilité.

Il existe toutefois un compromis important.

Si le nombre requis de réplicas synchronisés n'est plus disponible, Kafka peut refuser de nouvelles écritures plutôt que de réduire silencieusement le niveau de durabilité attendu.


8. Haute disponibilité Kubernetes ≠ Haute disponibilité Kafka

Cette distinction est essentielle.

Kubernetes peut afficher :

Pod = Running

alors que Kafka peut rencontrer :

Under-replicated partitions
Offline partitions
Replica lag
Storage pressure
Request latency
Controller problems
Consumer lag

Par conséquent :

Un pod Running ne signifie pas nécessairement que Kafka fonctionne correctement.

La supervision doit couvrir plusieurs niveaux :

Infrastructure Kubernetes
          +
Cluster Kafka
          +
Producteurs / Consommateurs
          +
Applications métier

9. Scheduling Kubernetes pour Kafka

Les brokers doivent être distribués intelligemment.

Des mécanismes Kubernetes peuvent contribuer à cette stratégie :

Pod Anti-Affinity
Node Affinity
Topology Spread
Taints and Tolerations
Dedicated Nodes
Availability Zones

Il faut éviter une situation telle que :

Worker Node 1
├── Broker 1
├── Broker 2
└── Broker 3

Une seule panne du worker pourrait alors avoir un impact disproportionné.

Préférez :

Worker Node 1 → Broker 1
Worker Node 2 → Broker 2
Worker Node 3 → Broker 3

Et dans une infrastructure multi-zone :

Zone A → Broker 1
Zone B → Broker 2
Zone C → Broker 3

La stratégie exacte dépend du cloud, du stockage et des failure domains disponibles.


10. Scalabilité de Kafka sur Kubernetes

La scalabilité de Kafka n'est pas identique à celle d'une application web stateless.

Pour une application stateless :

3 Pods → 6 Pods

peut immédiatement augmenter la capacité de calcul disponible.

Pour Kafka :

3 Brokers → 6 Brokers

ajoute de la capacité, mais les partitions existantes ne sont pas nécessairement redistribuées de manière optimale simplement parce que de nouveaux brokers existent.

Il faut donc considérer :

Capacité des brokers
        +
Distribution des partitions

Après l'ajout de nouveaux brokers, les partitions et leurs réplicas peuvent devoir être réassignés ou rééquilibrés afin d'utiliser efficacement la nouvelle capacité.


11. Scaling horizontal des brokers

Supposons un cluster initial :

Broker 1
Broker 2
Broker 3

Le trafic augmente :

Producer throughput ↑
Storage usage ↑
Partition count ↑
Consumer traffic ↑

Vous pouvez ajouter :

Broker 4
Broker 5
Broker 6

Mais cette décision doit être basée sur des métriques.

Analysez notamment :

Disk utilization
Disk throughput
Network throughput
Request latency
Partition count
Replica distribution
CPU
Memory
Page cache
Replication health

Le CPU seul ne suffit pas pour décider si Kafka doit être scalé.


12. Nombre de partitions et scalabilité

Le parallélisme Kafka dépend fortement du nombre de partitions.

Supposons :

Topic orders
Partitions = 12

Un consumer group peut répartir le traitement :

Consumer Group

Consumer 1 → P0, P1, P2
Consumer 2 → P3, P4, P5
Consumer 3 → P6, P7, P8
Consumer 4 → P9, P10, P11

Ajouter davantage de consumers que de partitions disponibles ne crée pas automatiquement davantage de parallélisme utile pour ce topic.

La planification des partitions doit prendre en compte :

  • le throughput attendu ;
  • le parallélisme des consumers ;
  • les exigences d'ordre ;
  • la croissance future ;
  • le nombre de brokers ;
  • le temps de récupération.

Évitez de créer un nombre excessif de partitions sans justification de capacité.


13. Scaling des contrôleurs KRaft

Le scaling des contrôleurs KRaft est différent du scaling des brokers.

Les contrôleurs forment un quorum de métadonnées.

Vous devez donc planifier explicitement :

Nombre de contrôleurs
Placement des contrôleurs
Failure domains
Stockage des métadonnées
Disponibilité du quorum

Ne traitez pas les contrôleurs comme de simples pods stateless pouvant être ajoutés et supprimés arbitrairement.


14. Utiliser Strimzi pour Kafka sur Kubernetes

Une approche populaire pour administrer Kafka sur Kubernetes est Strimzi.

Strimzi utilise le modèle Kubernetes Operator pour administrer les ressources Kafka.

Conceptuellement :

Kafka Custom Resource
        │
        ▼
Strimzi Cluster Operator
        │
        ▼
Infrastructure Kafka
        │
        ├── Controllers
        ├── Brokers
        ├── Services
        ├── Storage
        └── Supporting Resources

Cette approche fournit un modèle d'exploitation plus natif à Kubernetes.


15. Architecture avec Kafka Node Pools

Une architecture de production peut séparer les rôles :

Kafka Cluster

Controller Node Pool
├── Controller 1
├── Controller 2
└── Controller 3

Broker Node Pool
├── Broker 1
├── Broker 2
└── Broker 3

Un exemple conceptuel simplifié peut ressembler à :

apiVersion: kafka.strimzi.io/v1
kind: KafkaNodePool
metadata:
  name: broker
spec:
  replicas: 3
  roles:
    - broker
  storage:
    type: persistent-claim
    size: 100Gi

Le manifeste réel doit toujours être vérifié avec la version exacte de l'opérateur utilisée.


16. Planification des ressources Kafka

Évitez d'attribuer arbitrairement CPU et mémoire aux brokers.

Prenez en compte :

CPU
Memory
Heap
Page Cache
Disk
Network
Partition Count
Message Size
Traffic Pattern
Retention
Replication

Kafka bénéficie fortement du cache du système d'exploitation.

Conceptuellement :

Mémoire du Pod
│
├── JVM Heap
│
└── OS / Page Cache

Il n'est donc pas nécessairement optimal d'allouer presque toute la mémoire disponible au heap JVM.

Les tests de capacité doivent reproduire aussi fidèlement que possible les charges de production.


17. Pourquoi le monitoring Kafka est indispensable

Un cluster peut sembler sain au niveau Kubernetes alors que les applications commencent déjà à rencontrer des problèmes.

Il faut surveiller plusieurs couches :

Couche 1 → Kubernetes
Couche 2 → Kafka Brokers
Couche 3 → Topics & Partitions
Couche 4 → Producers
Couche 5 → Consumers
Couche 6 → Business Events

Chaque niveau répond à une question différente.

Kubernetes : l'infrastructure est-elle disponible ?

Kafka : le cluster est-il sain ?

Consumers : les applications suivent-elles le rythme ?

Business : les événements attendus circulent-ils réellement ?


18. Métriques Kafka importantes

Santé des brokers

Broker availability
Request rate
Request latency
Network throughput
CPU
Memory
Disk usage

Réplication

Under-replicated partitions
Offline partitions
ISR changes
Replica lag
Leader distribution

Producers

Record send rate
Request latency
Error rate
Retries

Consumers

Consumer lag
Consumption rate
Commit rate
Rebalances
Errors

Stockage

Disk utilization
Log growth
Retention
Disk latency
Volume capacity

Ces métriques donnent une image beaucoup plus réaliste de l'état du cluster que le simple statut des pods.


19. Architecture de monitoring avec Prometheus et Grafana

Une architecture d'observabilité courante peut être :

Kafka Brokers
      │
      │ Metrics
      ▼
Metrics Exporters
      │
      ▼
Prometheus
      │
      ▼
Grafana
      │
      ▼
Dashboards
      +
Alerts

Elle peut fournir des tableaux de bord pour :

Broker Health
Partition Replication
Consumer Lag
Throughput
Latency
Storage
Resource Usage

Monitoring Kafka sur Kubernetes avec Prometheus Grafana métriques des brokers consumer lag réplication stockage et alertes


20. Consumer Lag : une métrique essentielle

Le consumer lag indique à quelle distance un consumer se trouve des derniers événements disponibles.

Exemple :

Dernier offset Kafka = 1 000 000

Offset du consumer   =   970 000

Consumer Lag         =    30 000

Un lag qui augmente peut indiquer :

Consumer trop lent
Nombre insuffisant de consumers
Latence de la base de données
Erreurs applicatives
Pic de trafic
Problèmes réseau
Déséquilibre des partitions

Le lag doit cependant toujours être interprété en fonction du débit.

30 000 événements de retard peuvent être rapidement absorbés par une application très rapide, mais représenter un incident sérieux pour une application traitant peu d'événements par seconde.


21. Surveiller les Under-Replicated Partitions

Supposons :

Replication Factor = 3

Si un follower prend du retard ou devient indisponible, le nombre de copies correctement synchronisées peut être inférieur à celui attendu.

Les causes possibles incluent :

Broker failure
Slow disk
Network issue
Overloaded broker
Replica recovery
Resource pressure

Des partitions durablement sous-répliquées doivent être analysées rapidement.


22. Surveiller les Offline Partitions

Une partition offline représente une situation plus critique.

Si Kafka ne dispose pas d'un réplica éligible pour devenir leader, la partition concernée peut devenir indisponible.

Cela peut affecter :

Producer writes
Consumer reads
Application availability

Il est donc utile de distinguer les alertes :

WARNING
Under-Replicated Partitions

CRITICAL
Offline Partitions

23. Surveiller le stockage avant l'incident

Kafka utilise intensivement le stockage.

Surveillez :

PVC utilization
Filesystem utilization
Disk latency
Disk throughput
Retention growth
Log segment growth

N'attendez pas :

Disk Usage = 99%

pour intervenir.

Une estimation simplifiée de la capacité peut commencer par :

Ingestion quotidienne
        ×
Durée de rétention
        ×
Facteur de réplication
        +
Marge opérationnelle

La compression, la taille réelle des messages et les caractéristiques du workload influencent également le résultat.


24. Scénario de panne Kafka sur Kubernetes

Considérons :

Node A → Broker 1
Node B → Broker 2
Node C → Broker 3

Le Node B tombe en panne :

Node B ❌
Broker 2 ❌

En fonction de l'état des réplicas et de la configuration du cluster, Kafka peut continuer à servir les partitions concernées via d'autres réplicas synchronisés et des élections de leader.

Kubernetes peut parallèlement travailler au rétablissement du workload.

Nous avons donc deux mécanismes complémentaires :

Kafka
→ Maintient la disponibilité des partitions

Kubernetes
→ Restaure le workload d'infrastructure

C'est pourquoi Kafka HA et Kubernetes HA doivent être conçus ensemble.


25. PodDisruptionBudget et maintenance

Les opérations de maintenance Kubernetes peuvent entraîner des évictions volontaires de pods.

Pour Kafka, il est généralement préférable d'éviter que plusieurs brokers critiques soient interrompus simultanément lors d'une opération planifiée.

Un PodDisruptionBudget peut contribuer à contrôler ces interruptions volontaires.

Mais :

Un PodDisruptionBudget ne remplace jamais la réplication Kafka.

Il complète la stratégie de disponibilité.


26. Architecture Kafka Multi-Zone

Pour améliorer la résilience, les brokers peuvent être répartis sur plusieurs zones lorsque l'infrastructure le permet.

Région Kubernetes
│
├── Zone A
│    └── Broker 1
│
├── Zone B
│    └── Broker 2
│
└── Zone C
     └── Broker 3

L'objectif est de répartir les réplicas afin qu'une panne d'infrastructure n'élimine pas toutes les copies d'une partition.

Mais une architecture multi-zone peut également introduire :

Cross-zone latency
Cross-zone traffic cost
Storage constraints
Network dependencies

Il faut donc équilibrer résilience, performances et coûts.


27. Networking Kafka sur Kubernetes

Le réseau Kafka est plus complexe que l'exposition d'une simple API HTTP.

Les clients peuvent inclure :

Applications internes
Applications externes
Clients cross-cluster
Outils d'administration
Systèmes de monitoring

Vous pouvez avoir :

Microservices internes
        │
        ▼
Internal Kafka Listener
        │
        ▼
Kafka Brokers

et, si nécessaire :

Client externe
        │
        ▼
External Listener
        │
        ▼
Kafka Brokers

N'exposez pas Kafka publiquement si l'architecture métier ne l'exige pas.


28. Sécurité Kafka sur Kubernetes

Une architecture de production doit également considérer :

TLS Encryption
Authentication
Authorization
Secrets Management
Network Policies
Certificate Management
Least Privilege
Audit & Governance

La sécurité doit couvrir :

Client → Kafka

Broker → Broker

Operations → Kafka

Kubernetes → Workloads

Pour approfondir ce sujet, ajoutez ici un lien interne vers votre article Kafka Security Best Practices: SSL, SASL, ACLs & Enterprise Governance.


29. Architecture Kafka de production

Une architecture plus complète peut être représentée ainsi :

                       PRODUCERS
                           │
                           ▼
                    Kafka Listeners
                           │
            ┌──────────────┴──────────────┐
            │     Kubernetes Cluster      │
            │                             │
            │   KRaft Controller Quorum   │
            │      C1     C2     C3       │
            │                             │
            │   Kafka Broker Node Pool    │
            │                             │
            │   B1      B2      B3        │
            │   │       │       │         │
            │  PVC     PVC     PVC        │
            │                             │
            │   Partition Replication     │
            │                             │
            └──────────────┬──────────────┘
                           │
                           ▼
                       CONSUMERS


                    OBSERVABILITY
                          │
               ┌──────────┴──────────┐
               │                     │
            Metrics              Logs/Events
               │
               ▼
           Prometheus
               │
               ▼
            Grafana
               │
               ▼
          Alerts / SRE

Cette architecture sépare clairement :

Compute
Storage
Metadata Quorum
Data Replication
Networking
Monitoring
Applications
Security

Architecture Kafka de production sur Kubernetes avec KRaft brokers stockage persistant haute disponibilité sécurité monitoring et scalabilité


30. Stratégie de scalabilité Kafka

Ne prenez pas une décision de scaling à partir d'une seule métrique.

SignalAction possible
CPU élevéAnalyser le workload et la capacité des brokers
Disque élevéAjouter de la capacité ou ajuster la rétention
Réseau élevéVérifier la distribution et la capacité
Partitions déséquilibréesRééquilibrer les réplicas
Consumer lag croissantScaler ou optimiser les consumers
Latence élevéeVérifier brokers, stockage et réseau
Trop de partitions par brokerAjouter de la capacité ou revoir le design
Latence disque élevéeAméliorer l'architecture de stockage

Les goulots d'étranglement Kafka peuvent se déplacer entre :

CPU
Disk
Network
Partitions
Replication
Consumers

31. Checklist Haute Disponibilité Kafka

Avant de considérer un déploiement comme prêt pour la production, vérifiez :

DomaineVérification
BrokersPlusieurs brokers sont déployés
KRaftLe quorum est résilient
PlacementLes brokers sont répartis entre failure domains
StorageLe stockage persistant est configuré
ReplicationLes topics critiques disposent d'une réplication adaptée
ISRmin.insync.replicas est configuré intentionnellement
ProducersLes acknowledgements sont adaptés
MonitoringLes métriques des brokers sont disponibles
Consumer LagLes consumer groups sont supervisés
DiskCapacité et latence sont surveillées
AlertsLes incidents Kafka critiques déclenchent des alertes
SecurityTLS, authentification et autorisation sont prévus
ResourcesCPU, mémoire et stockage sont dimensionnés
ScalingUne procédure de scaling existe
MaintenanceLes disruptions planifiées sont contrôlées
RecoveryLes pannes de brokers/nœuds sont testées
DRLa stratégie de reprise est documentée

32. Erreurs fréquentes avec Kafka sur Kubernetes

Erreur 1 — Traiter Kafka comme une application stateless

Kafka stocke un état distribué.

Erreur 2 — Placer tous les brokers sur le même worker

Une panne unique peut affecter tout le cluster.

Erreur 3 — Utiliser un stockage éphémère pour les données de production

Une stratégie de persistance explicite est nécessaire.

Erreur 4 — Ajouter des brokers sans penser aux partitions

Ajouter des brokers ne résout pas automatiquement les déséquilibres.

Erreur 5 — Surveiller uniquement les pods Kubernetes

Running ne signifie pas nécessairement que Kafka est sain.

Erreur 6 — Ignorer le consumer lag

Kafka peut être sain alors que les applications prennent du retard.

Erreur 7 — Ignorer la latence du stockage

Les performances disque sont essentielles.

Erreur 8 — Utiliser une réplication insuffisante

La réplication et l'ISR influencent directement la durabilité et la disponibilité.

Erreur 9 — Ne jamais tester les pannes

La haute disponibilité doit être testée, pas simplement supposée.

Erreur 10 — Ne pas planifier la capacité

Rétention, réplication et croissance du trafic peuvent rapidement augmenter les besoins de stockage.


33. Principes recommandés pour la production

Retenez :

Kafka HA
   ≠
Kubernetes HA uniquement

Une architecture fiable combine plutôt :

Fiabilité Kafka en Production

           =
Kafka Replication
           +
KRaft Quorum
           +
Persistent Storage
           +
Failure-Domain Distribution
           +
Resource Planning
           +
Monitoring
           +
Security
           +
Operational Automation

Un opérateur Kubernetes peut simplifier l'exploitation, mais il ne remplace pas les décisions d'architecture.


Conclusion

Déployer Apache Kafka sur Kubernetes permet de construire une plateforme puissante pour les architectures événementielles et les microservices.

Mais Kafka reste un système distribué stateful qui nécessite une architecture adaptée.

Le modèle général peut être résumé ainsi :

Applications
     ↓
Producers
     ↓
Kafka Listeners
     ↓
Kafka Brokers
     ↕
Partition Replication
     ↕
Persistent Storage
     ↑
KRaft Controllers
     ↓
Consumers

     +

Monitoring
Prometheus
Grafana
Alerts

Pour la haute disponibilité, pensez :

Réplication + Quorum + Distribution entre failure domains

Pour la scalabilité, pensez :

Brokers + Partitions + Stockage + Distribution du workload

Pour le monitoring, pensez :

Santé Kafka + Santé Kubernetes + Santé des Consumers

Et surtout :

Kubernetes peut restaurer un workload Kafka, mais la réplication Kafka protège la disponibilité et la durabilité des partitions.

Une architecture de production réussie combine donc les forces des deux plateformes au lieu de demander à Kubernetes de remplacer les mécanismes distribués de Kafka.


Articles recommandés

Je vous recommande de placer cette section juste après la conclusion.

1. Kafka Security Best Practices: SSL, SASL, ACLs & Enterprise Governance

Lire le guide Kafka Security

2. Kafka Consumer Groups Explained: Partitions, Offsets & Rebalancing

Lire le guide Kafka Consumer Groups

3. Event-Driven Microservices with Kafka & Spring Boot

Ajoutez ici l'URL Blogger déjà publiée de votre article.

4. Kafka Architecture: Producers, Consumers, Brokers, Topics & Partitions

Ajoutez ici l'URL publiée correspondante.

5. Kafka Performance Tuning: Producers, Consumers & Brokers

Ajoutez ici l'URL publiée correspondante.

Ce maillage interne crée un cluster thématique cohérent :

Kafka Architecture
       ↓
Kafka Consumer Groups
       ↓
Kafka sur Kubernetes
       ↓
Kafka Security
       ↓
Kafka Performance

🎥 Learn IT with Shikha sur YouTube

Vous préférez apprendre en vidéo ?

Découvrez des tutoriels pratiques sur Apache Kafka, Spring Boot, Microservices, Camunda, Alfresco, Java et l'architecture d'entreprise.

S'abonner à Learn IT with Shikha sur YouTube

📢 Besoin d’aide pour Java, workflows ou backend?

J’aide les équipes à concevoir des applications scalables, performantes et prêtes pour la production.

Services:

  • Développement Java & Spring Boot
  • Implémentation workflows (Camunda, Flowable – BPMN, DMN)
  • Intégrations API & microservices
  • ECM & gestion documentaire (Alfresco)
  • Optimisation performance & résolution incidents

🔗 https://shikhanirankari.blogspot.com/p/professional-services.html

📩 Email: ishikhanirankari@gmail.com | info@realtechnologiesindia.com
🌐 https://realtechnologiesindia.com

✔ Disponible pour consultation rapide
✔ Réponse sous 24 heures


🎥 Learn IT with Shikha on YouTube

Prefer learning through videos? Watch practical tutorials on Kafka, Camunda, Alfresco, Java, Spring Boot, Microservices and Enterprise Architecture.

▶ Subscribe to Learn IT with Shikha on YouTube

Comments

Popular posts from this blog

Top 50 Camunda BPM Interview Questions and Answers for Developers (2026 Guide)

10 BPMN Best Practices Every Camunda Developer Should Know

OOPs Concepts in Java | English | Object Oriented Programming Explained