AnalytiqueService régional
MSK
Managed Streaming for Apache Kafka
Permet de déployer et gérer des clusters Apache Kafka de manière managée sur AWS
Présentation
- MSK est un service managé permettant d’utiliser Apache Kafka sans gérer l’infrastructure associée
- AWS gère :
- Les brokers
- La haute disponibilité
- Les mises à jour
- Le remplacement des nœuds défaillants
Cas d’utilisation
- Architecture événementielle
- Streaming temps réel
- Communication entre microservices
- Collecte de logs
- Pipelines Big Data et analytics
Concepts Kafka
- Producer : Application qui publie des messages
- Consumer : Application qui lit les messages
- Topic : Canal logique contenant les messages
- Broker : Serveur Kafka stockant et distribuant les messages
- Partition : Découpage d’un topic pour paralléliser les traitements
Fonctionnement
- Les producteurs publient des messages dans des topics
- Les brokers stockent les messages
- Les consommateurs lisent les messages à leur rythme
Kafka fonctionne de manière découplée et asynchrone
Haute disponibilité
- Réplication automatique des partitions
- Répartition sur plusieurs AZ
- Remplacement automatique des brokers défaillants
MSK Serverless
Version serverless de MSK pour des charges variables :
- Pas de cluster à gérer
- Scaling automatique
- Facturation à l’usage
Tarification
- Basée sur :
- Nombre et taille des brokers
- Stockage utilisé
- Transfert de données
- Utilisation du mode serverless
Bonnes pratiques
- Répartir les partitions correctement
- Surveiller le lag des consommateurs
- Utiliser plusieurs AZ
- Choisir Serverless pour les charges variables