Kafka MirrorMaker - Comment répliquer des topics entre deux services Kafka
Découvrez comment répliquer des topics Kafka d'un service Kafka vers un autre avec Kafka MirrorMaker et l'API OVHcloud
Objectif
Kafka MirrorMaker copie en continu les messages de topics Kafka d'un service Kafka source vers un service Kafka cible. Vous pouvez l'utiliser pour migrer vers un nouveau service ou une nouvelle version de Kafka, ou pour conserver une copie de vos topics dans un autre service.
Ce guide explique comment répliquer un topic entre deux services Kafka du même projet Public Cloud avec l'API OVHcloud.
Prérequis
- Disposer d'un projet Public Cloud dans votre compte OVHcloud
- Disposer de deux services Kafka dans ce projet : une source et une cible. Ils peuvent utiliser des versions de Kafka différentes ; ce guide a été testé de Kafka 3.9 vers Kafka 4.3.
- Disposer d'un topic à répliquer sur le service source, ici
inventory - Disposer d'un service Kafka MirrorMaker dans le même projet
- Disposer d'un accès à l'API OVHcloud
En pratique
Étape 1 - Relier les deux services Kafka à MirrorMaker
Sur votre service MirrorMaker, créez une intégration pour le service source et une autre pour le service cible :
Dans les deux cas, sourceServiceId est le service Kafka et destinationServiceId le service MirrorMaker. Conservez l'id renvoyé pour chaque intégration.
Étape 2 - Créer le flux de réplication
Créez un flux de réplication de l'intégration source vers l'intégration cible :
L'API renvoie le flux de réplication avec sa politique de réplication par défaut :
Dans ce flux de réplication :
topicsliste les topics à répliquer, ettopicExcludeListles topics à exclure ;syncGroupOffsetscopie les offsets des groupes de consommateurs vers le service cible, toutes lessyncIntervalsecondes ;emitHeartbeatsdemande à MirrorMaker d'écrire des messages de heartbeat sur le service cible.
Étape 3 - Vérifier le topic répliqué
Avec la politique de réplication par défaut, le topic répliqué est créé sur le service cible avec l'alias du service source en préfixe. Pour le topic inventory, le service cible contient un topic nommé sur le modèle xxxxxxxxx.kafka-xxxxxxxx.inventory, avec les mêmes messages que le topic source.
MirrorMaker crée également ses propres topics sur le service cible : heartbeats, xxxxxxxxx.kafka-xxxxxxxx.checkpoints.internal, ainsi que des topics commençant par mm2-.
Pour lire les messages répliqués, accordez à vos utilisateurs une ACL read sur le topic répliqué du service cible. Consultez le guide « Kafka - Comment utiliser les listes de contrôle d'accès (ACL) ».
Étape 4 - Gérer le flux de réplication
Consultez ou supprimez un flux de réplication :
Aller plus loin
Capacités et limitations pour Analytics avec Kafka MirrorMaker
Votre avis nous intéresse !
Nous serions ravis de répondre à vos questions et apprécions tout retour que vous pourriez nous faire.
Pour une formation ou une assistance technique sur la mise en œuvre de nos solutions, contactez votre commercial ou consultez la page Professional Services pour obtenir un devis et faire analyser votre projet par nos experts.
Vous êtes sur Discord ? Rejoignez notre chaîne via https://discord.gg/ovhcloud et interagissez directement avec l'équipe qui développe notre service Analytics !
Échangez avec notre communauté d'utilisateurs.