Résoudre les problèmes MSK de Replicator - Amazon Managed Streaming for Apache Kafka

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Résoudre les problèmes MSK de Replicator

Les informations suivantes peuvent vous aider à résoudre les problèmes que vous pourriez rencontrer avec MSK Replicator. Consultez Résoudre les problèmes liés à votre cluster Amazon MSK les informations relatives à la résolution des problèmes concernant les autres MSK fonctionnalités d'Amazon. Vous pouvez également publier votre problème sur AWS re:Post.

MSKL'état du réplicateur passe de à CREATING FAILED

Voici quelques causes courantes d'échec de création du MSK réplicateur.

  1. Vérifiez que les groupes de sécurité que vous avez fourni pour la création du réplicateur dans la section du cluster cible comportent des règles de sortie autorisant le trafic vers les groupes de sécurité de votre cluster cible. Vérifiez également que les groupes de sécurité de votre cluster cible comportent des règles entrantes qui autorisent le trafic des groupes de sécurité que vous avez fournis pour la création du réplicateur dans la section du cluster cible. Consultez Choisissez votre cluster cible.

  2. Si vous créez un réplicateur pour la réplication entre régions, vérifiez que la VPC multiconnectivité de votre cluster source est activée pour la méthode d'authentification par contrôle d'IAMaccès. Consultez Connectivité MSK VPC multi-privée Amazon dans une seule région. Vérifiez également que la politique de cluster est configurée sur le cluster source afin que le MSK réplicateur puisse se connecter au cluster source. Consultez Préparez le cluster MSK source Amazon.

  3. Vérifiez que le IAM rôle que vous avez fourni lors de la création du MSK réplicateur dispose des autorisations requises pour lire et écrire sur vos clusters source et cible. Vérifiez également que le IAM rôle est autorisé à écrire sur des sujets. Consultez Configurez les paramètres et les autorisations du réplicateur.

  4. Vérifiez que votre réseau ACLs ne bloque pas la connexion entre le MSK réplicateur et vos clusters source et cible.

  5. Il est possible que les clusters source ou cible ne soient pas entièrement disponibles lorsque le MSK réplicateur a essayé de s'y connecter. Cela peut être dû à une charge excessive, à une utilisation excessive du disque ou à une CPU utilisation excessive, empêchant le réplicateur de se connecter aux courtiers. Corrigez le problème avec les agents et réessayez de créer un réplicateur.

Après avoir effectué les validations ci-dessus, créez à nouveau le MSK réplicateur.

MSKLe réplicateur semble bloqué dans son état CREATING

La création d'MSKun réplicateur peut parfois prendre jusqu'à 30 minutes. Attendez 30 minutes et vérifiez à nouveau l'état du réplicateur.

MSKLe réplicateur ne réplique pas les données ou ne réplique que des données partielles

Suivez ces étapes pour résoudre les problèmes de réplication des données.

  1. Vérifiez que votre réplicateur ne rencontre aucune erreur d'authentification à l'aide de la AuthError métrique fournie par le MSK réplicateur sur Amazon. CloudWatch Si cette métrique est supérieure à 0, vérifiez si la politique du IAM rôle que vous avez fourni au réplicateur est valide et si aucune autorisation de refus n'est définie pour les autorisations du cluster. En fonction de clusterAlias la dimension, vous pouvez identifier si le cluster source ou cible rencontre des erreurs d'authentification.

  2. Vérifiez que vos clusters source et cible ne rencontrent aucun problème. Il est possible que le réplicateur ne soit pas en mesure de se connecter à votre cluster source ou cible. Cela peut être dû à un trop grand nombre de connexions, à une capacité maximale du disque ou à une CPU utilisation élevée.

  3. Vérifiez que vos clusters source et cible sont accessibles depuis MSK Replicator à l'aide de la KafkaClusterPingSuccessCount métrique d'Amazon CloudWatch. En fonction de clusterAlias la dimension, vous pouvez identifier si le cluster source ou cible rencontre des erreurs d'authentification. Si la valeur est égale à 0 ou aucun point de données, la connexion n'est pas saine. Vous devez vérifier les autorisations réseau et de IAM rôle utilisées par MSK Replicator pour se connecter à vos clusters.

  4. Vérifiez que votre réplicateur ne rencontre aucune défaillance en raison de l'absence d'autorisations thématiques à l'aide de la métrique d'Amazon ReplicatorFailure . CloudWatch Si cette métrique est supérieure à 0, vérifiez le IAM rôle que vous avez fourni pour les autorisations au niveau du sujet.

  5. Vérifiez que l'expression régulière que vous avez fournie dans la liste d'autorisation lors de la création du réplicateur correspond aux noms des rubriques que vous souhaitez répliquer. Vérifiez également que les rubriques ne sont pas exclues de la réplication en raison d'une expression régulière présente dans la liste de refus.

  6. Notez que le réplicateur peut prendre jusqu'à 30 secondes pour détecter et créer les nouveaux sujets ou partitions de sujets sur le cluster cible. Les messages envoyés au sujet source avant sa création sur le cluster cible ne seront pas répliqués si la position de départ du réplicateur est la plus récente (par défaut). Vous pouvez également démarrer la réplication à partir du premier décalage dans les partitions des rubriques du cluster source si vous souhaitez répliquer les messages existants relatifs à vos sujets sur le cluster cible. Consultez Configurez les paramètres et les autorisations du réplicateur.

Les décalages de messages dans le cluster cible sont différents de ceux du cluster source

Dans le cadre de la réplication des données, MSK Replicator consomme les messages du cluster source et les transmet au cluster cible. Cela peut entraîner des messages présentant des décalages différents sur vos clusters source et cible. Toutefois, si vous avez activé la synchronisation des offsets des groupes de consommateurs lors de la création de Replicator, MSK Replicator traduira automatiquement les décalages lors de la copie des métadonnées afin qu'après avoir basculé vers le cluster cible, vos clients puissent reprendre le traitement à l'endroit où ils s'étaient arrêtés dans le cluster source.

MSKLe réplicateur ne synchronise pas les groupes de consommateurs, les offsets ou le groupe de consommateurs n'existe pas sur le cluster cible

Suivez ces étapes pour résoudre les problèmes de réplication des métadonnées.

  1. Vérifiez que la réplication de vos données fonctionne comme prévu. Si ce n’est pas le cas, voyez MSKLe réplicateur ne réplique pas les données ou ne réplique que des données partielles.

  2. Vérifiez que l'expression régulière que vous avez fournie dans la liste d'autorisation lors de la création du réplicateur correspond aux noms des groupes de consommateurs que vous souhaitez répliquer. Vérifiez également que les groupes de consommateurs ne sont pas exclus de la réplication en raison d'une expression régulière dans la liste de refus.

  3. Vérifiez que MSK Replicator a créé le sujet sur le cluster cible. Le réplicateur peut prendre jusqu'à 30 secondes pour détecter et créer les nouveaux sujets ou partitions de sujets sur le cluster cible. Les messages envoyés au sujet source avant sa création sur le cluster cible ne seront pas répliqués si la position de départ du réplicateur est la plus récente (par défaut). Si votre groupe de consommateurs sur le cluster source n'a consommé que les messages qui n'ont pas été répliqués par MSK Replicator, le groupe de consommateurs ne sera pas répliqué vers le cluster cible. Une fois le sujet créé avec succès sur le cluster cible, MSK Replicator commence à répliquer les messages récemment écrits sur le cluster source vers la cible. Une fois que votre groupe de consommateurs commence à lire ces messages depuis la source, MSK Replicator répliquera automatiquement le groupe de consommateurs sur le cluster cible. Vous pouvez également démarrer la réplication à partir du premier décalage dans les partitions des rubriques du cluster source si vous souhaitez répliquer les messages existants relatifs à vos sujets sur le cluster cible. Consultez Configurez les paramètres et les autorisations du réplicateur.

Note

MSKReplicator optimise la synchronisation des décalages des groupes de consommateurs pour vos clients du cluster source qui lisent à une position plus proche de la fin de la partition thématique. Si vos groupes de consommateurs sont en retard sur le cluster source, vous constaterez peut-être un retard plus important pour ces groupes de consommateurs sur le cluster cible par rapport à la source. Cela signifie qu'après le basculement vers le cluster cible, vos clients retraiteront un plus grand nombre de messages dupliqués. Pour réduire ce décalage, vos clients du cluster source devraient rattraper leur retard et commencer à consommer dès le début du stream (fin de la partition thématique). Au fur et à mesure que vos clients rattrapent leur retard, MSK Replicator réduira automatiquement le décalage.

La latence de réplication est élevée ou continue d'augmenter

Les raisons courantes suivantes expliquent une latence de réplication élevée.

  1. Vérifiez que vous disposez du bon nombre de partitions sur vos MSK clusters source et cible. Le fait d'avoir trop peu ou trop de partitions peut avoir un impact sur les performances. Pour obtenir des conseils sur le choix du nombre de partitions, reportez-vous à la section Bonnes pratiques d'utilisation de MSK Replicator. Le tableau suivant indique le nombre minimum de partitions recommandé pour obtenir le débit souhaité avec MSK Replicator.

    Débit et nombre minimal de partitions recommandé
    Débit (Mo/s) Nombre minimal de partitions requis
    50 167
    100 334
    250 833
    500 1666
    1 000 3333
  2. Vérifiez que vous disposez d'une capacité de lecture et d'écriture suffisante dans vos MSK clusters source et cible pour prendre en charge le trafic de réplication. MSKReplicator agit en tant que consommateur pour votre cluster source (sortie) et en tant que producteur pour votre cluster cible (entrée). Par conséquent, vous devez prévoir une capacité de cluster pour prendre en charge le trafic de réplication en plus du reste du trafic sur vos clusters. Consultez Bonnes pratiques d'utilisation de MSK Replicator pour obtenir des conseils sur le dimensionnement de vos MSK clusters.

  3. La latence de réplication peut varier pour les MSK clusters appartenant à différentes paires de AWS régions source et de destination, en fonction de la distance géographique entre les clusters. Par exemple, la latence de réplication est généralement inférieure lors de la réplication entre clusters des régions Europe (Irlande) et Europe (Londres) par rapport à la réplication entre clusters des régions Europe (Irlande) et Asie-Pacifique (Sydney).

  4. Vérifiez que votre réplicateur n'est pas limité en raison de quotas trop agressifs définis sur vos clusters source ou cible. Vous pouvez utiliser la ThrottleTime métrique fournie par MSK Replicator sur Amazon CloudWatch pour connaître le temps moyen en millisecondes pendant lequel une demande a été limitée par les courtiers de votre cluster source/cible. Si cette métrique est supérieure à 0, vous devez ajuster les quotas de Kafka pour réduire la limitation afin que le réplicateur puisse rattraper son retard. Consultez Gestion du débit du MSK réplicateur à l'aide des quotas Kafka pour plus d'informations sur la gestion des quotas de Kafka pour le réplicateur.

  5. ReplicationLatency et MessageLag peut augmenter lorsqu'une AWS région se dégrade. Utilisez le AWS Service Health Dashboard pour vérifier la présence d'un événement de MSK service dans la région où se trouve votre MSK cluster principal. En cas d'événement de service, vous pouvez rediriger temporairement les opérations de lecture et d'écriture de votre application dans l'autre région.