Tous les produits
Search
Centre de documentation

ApsaraMQ for Kafka:Vérification de l'état de santé d'une instance ApsaraMQ for Kafka

Dernière mise à jour :Aug 11, 2026

Si un client utilisant un SDK ne parvient pas à envoyer ou recevoir des messages, ou à se connecter à une instance, utilisez l'outil de vérification de l'état de santé Kafka pour diagnostiquer le problème. Cet outil permet de détecter les problèmes de connectivité réseau et les anomalies au niveau de l'instance. Si l'instance est saine, vérifiez le code côté client et la configuration réseau afin d'exclure tout problème lié à votre application.

Prérequis

  • Le JDK 1.8 ou une version ultérieure doit être installé. Pour plus d'informations, consultez la page Java Downloads.

  • Téléchargez et extrayez l'outil de vérification de l'état de santé kafka-checker.zip.

  • Créez un topic et un groupe de consommateurs pour tester l'envoi et la consommation des messages. Pour plus d'informations, consultez la rubrique Création de ressources.

Tester la connectivité réseau

  1. Récupérez un endpoint.

    1. Connectez-vous à la console ApsaraMQ for Kafka.

    2. Dans la section Overview de la page Resource Distribution, sélectionnez une région.

    3. Sur la page Instances, cliquez sur le nom de l'instance cible.

    4. Sur la page Instance Details, localisez la section Endpoint Information et récupérez l'endpoint de votre instance.

      Cette section affiche trois types d'endpoints : VPC default endpoint (VPC, protocole PLAINTEXT), Internet SSL endpoint (Internet, protocole SASL_SSL) et VPC SSL endpoint (VPC, protocole SASL_PLAINTEXT). Copiez l'adresse de l'endpoint correspondant à votre environnement réseau.

      Remarque

      Pour plus d'informations sur les différences entre les endpoints, consultez la rubrique Comparaison des endpoints.

  2. Testez la connectivité réseau vers l'endpoint à l'aide de l'outil de vérification de l'état de santé. Les étapes suivantes illustrent la procédure sur un système Linux.

    1. Connectez-vous à votre système Linux et accédez au répertoire contenant l'outil KafkaChecker.jar.

      cd /usr/opt/kafka-checker

      Remplacez /usr/opt/kafka-checker par le chemin réel.

    2. Exécutez la commande suivante pour tester la connectivité à l'instance ApsaraMQ for Kafka.

      java -jar KafkaChecker.jar telnet -s <endpoint>

      Par exemple, si votre client se connecte à ApsaraMQ for Kafka via l'endpoint VPC par défaut, exécutez la commande suivante :java -jar KafkaChecker.jar telnet -s alikafka-pre-cn-zv**********-1-vpc.alikafka.aliyuncs.com:9092,alikafka-pre-cn-zv**********-2-vpc.alikafka.aliyuncs.com:9092,alikafka-pre-cn-zv**********-3-vpc.alikafka.aliyuncs.com:9092.

      Remarque

      Lorsque vous utilisez un endpoint VPC, assurez-vous que votre client et l'instance se trouvent dans le même VPC.

      Si la sortie ressemble à ce qui suit, la connexion réseau fonctionne correctement.

      telnet xxx 9092  success
      telnet xxx 9092  success
      telnet xxx 9092  success

      Si un message similaire au suivant s'affiche, cela indique que la liste d'autorisation (whitelist) pour l'accès à ApsaraMQ for Kafka n'est pas configurée. Pour plus d'informations, consultez la rubrique Configuration d'une liste d'autorisation.

      telnet xxx 9092 failure, please add ip to white list in Alikafka console
      telnet xxx 9092 failure, please add ip to white list in Alikafka console
      telnet xxx 9092 failure, please add ip to white list in Alikafka console

Tester l'envoi de messages

Remarque

L'envoi de messages génère des données de test. Pour éviter d'impacter vos données de production, créez un topic dédié aux vérifications de l'état de santé.

Exécutez la commande correspondant à votre méthode de connexion.

  • Connexion via l'endpoint VPC par défaut sur le port 9092 :

    java -jar KafkaChecker.jar send -s <endpoint_domain:9092> --topic <topic_name>

    Exemple : java -jar KafkaChecker.jar send -s alikafka-pre-cn-zv**********-1-vpc.alikafka.aliyuncs.com:9092 --topic test

  • Connexion via l'endpoint Internet SSL sur le port 9093. Cette connexion nécessite une authentification SASL. Exécutez la commande correspondant au mécanisme d'authentification utilisé.

    Remarque
    • Pour les connexions via Internet, l'utilisateur SASL par défaut de l'instance utilise le mécanisme PLAIN pour l'authentification.

    • Vous pouvez créer des utilisateurs SASL pour un contrôle plus fin des permissions et configurer le mécanisme d'authentification sur PLAIN ou SCRAM-SHA-256. Pour plus d'informations, consultez la rubrique Attribution d'autorisations aux utilisateurs SASL. Vous devez exécuter la commande correspondant au mécanisme d'authentification utilisé.

    Mécanisme PLAIN

    java -jar KafkaChecker.jar send -sm PLAIN -ss true -u <username> -psw <password> -s <endpoint_domain:9093> --topic <topic_name>

    Exemple :java -jar KafkaChecker.jar send -sm PLAIN -ss true -u test -psw test**** -s alikafka-pre-cn-zv**********-1.alikafka.aliyuncs.com:9093 --topic test

    Mécanisme SCRAM-SHA-256

    java -jar KafkaChecker.jar send -sm SCRAM-SHA-256 -ss true -u <username> -psw <password> -s <endpoint_domain:9093> --topic <topic_name>

    Exemple :java -jar KafkaChecker.jar send -sm SCRAM-SHA-256 -ss true -u test -psw test**** -s alikafka-pre-cn-zv**********-1.alikafka.aliyuncs.com:9093 --topic test

  • Connexion via l'endpoint VPC SSL sur le port 9094. Cette connexion nécessite une authentification SASL. Exécutez la commande correspondant au mécanisme d'authentification utilisé.

    Mécanisme PLAIN

    java -jar KafkaChecker.jar send -sm PLAIN -sp true -u <username> -psw <password> -s <endpoint_domain:9094> --topic <topic_name>

    Exemple :java -jar KafkaChecker.jar send -sm PLAIN -sp true -u test -psw test**** -s alikafka-pre-cn-zv**********-1-vpc.alikafka.aliyuncs.com:9094 --topic test

    Mécanisme SCRAM-SHA-256

    java -jar KafkaChecker.jar send -sm SCRAM-SHA-256 -sp true -u <username> -psw <password> -s <endpoint_domain:9094> --topic <topic_name>

    Exemple :java -jar KafkaChecker.jar send -sm SCRAM-SHA-256 -sp true -u test -psw test**** -s alikafka-pre-cn-zv**********-1-vpc.alikafka.aliyuncs.com:9094 --topic test

Une sortie similaire à celle ci-dessous indique que les messages ont été envoyés avec succès :

[2021-08-27 11:29:18.838]Produce ok number:0 p:2 offset:21 response:test-2@21 cost:1342 ms
[2021-08-27 11:29:19.252]Produce ok number:1 p:2 offset:22 response:test-2@22 cost:410 ms
[2021-08-27 11:29:19.254]Produce ok number:1 p:6 offset:9 response:test-6@9 cost:412 ms
[2021-08-27 11:29:19.301]Produce ok number:2 p:5 offset:25 response:test-5@25 cost:47 ms
[2021-08-27 11:29:19.302]Produce ok number:2 p:4 offset:20 response:test-4@20 cost:48 ms
[2021-08-27 11:29:19.347]Produce ok number:3 p:1 offset:19 response:test-1@19 cost:45 ms
[2021-08-27 11:29:19.348]Produce ok number:3 p:8 offset:17 response:test-8@17 cost:46 ms

Tester la consommation de messages

Exécutez la commande correspondant à votre méthode de connexion.

  • Connexion via l'endpoint VPC par défaut sur le port 9092 :

    java -jar KafkaChecker.jar pull -s <endpoint_domain:9092> --topic <topic_name> --group <consumer_group_name> --partition 0 --offset 0 --count 10

    Exemple :java -jar KafkaChecker.jar pull -s alikafka-pre-cn-zv**********-1-vpc.alikafka.aliyuncs.com:9092 --topic test --group test --partition 0 --offset 0 --count 10

  • Connexion via l'endpoint Internet SSL sur le port 9093. Cette connexion nécessite une authentification SASL. Exécutez la commande correspondant au mécanisme d'authentification utilisé pour consommer les messages.

    Remarque
    • Pour les connexions via Internet, l'utilisateur SASL par défaut de l'instance utilise le mécanisme PLAIN pour l'authentification.

    • Vous pouvez créer des utilisateurs SASL pour un contrôle plus fin des permissions et configurer le mécanisme d'authentification sur PLAIN ou SCRAM-SHA-256. Pour plus d'informations, consultez la rubrique Attribution d'autorisations aux utilisateurs SASL. Vous devez exécuter la commande correspondant au mécanisme d'authentification utilisé.

    Mécanisme PLAIN

    java -jar KafkaChecker.jar pull -sm PLAIN -ss true -u <username> -psw <password> -s <endpoint_domain:9093> --topic <topic_name> --group <consumer_group_name> --partition 0 --offset 0 --count 10

    Exemple : java -jar KafkaChecker.jar pull -sm PLAIN -ss true -u test -psw test**** -s alikafka-pre-cn-zv**********-1.alikafka.aliyuncs.com:9093 --topic test --group test --partition 0 --offset 0 --count 10

    Mécanisme SCRAM-SHA-256

     java -jar KafkaChecker.jar pull -sm SCRAM-SHA-256 -ss true -u <username> -psw <password> -s <endpoint_domain:9093> --topic <topic_name> --group <consumer_group_name> --partition 0 --offset 0 --count 10

    Exemple : java -jar KafkaChecker.jar pull -sm SCRAM-SHA-256 -ss true -u test -psw test**** -s alikafka-pre-cn-zv**********-1.alikafka.aliyuncs.com:9093 --topic test --group test --partition 0 --offset 0 --count 10

  • Connexion via l'endpoint VPC SSL sur le port 9094. Cette connexion nécessite une authentification SASL. Exécutez la commande correspondant au mécanisme d'authentification utilisé pour consommer les messages.

    Mécanisme PLAIN

    java -jar KafkaChecker.jar pull -sm PLAIN -sp true -u <username> -psw <password> -s <endpoint_domain:9094> --topic <topic_name> --group <consumer_group_name> --partition 0 --offset 0 --count 10

    Exemple : java -jar KafkaChecker.jar pull -sm PLAIN -sp true -u test -psw test**** -s alikafka-pre-cn-zv**********-1-vpc.alikafka.aliyuncs.com:9094 --topic test --group test --partition 0 --offset 0 --count 10

    Mécanisme SCRAM-SHA-256

     java -jar KafkaChecker.jar pull -sm SCRAM-SHA-256 -sp true -u <username> -psw <password> -s <endpoint_domain:9094> --topic <topic_name> --group <consumer_group_name> --partition 0 --offset 0 --count 10

    Exemple : java -jar KafkaChecker.jar pull -sm SCRAM-SHA-256 -sp true -u test -psw test**** -s alikafka-pre-cn-zv**********-1-vpc.alikafka.aliyuncs.com:9094 --topic test --group test --partition 0 --offset 0 --count 10

Une sortie similaire à celle ci-dessous indique que les messages ont été consommés avec succès :

[2021-08-27 11:32:37.917]Pull Succ topic:test partition:0 offset:0 key:demo value: time:2021-08-10 15:08:10.629 cha:1455867288
[2021-08-27 11:32:37.918]Pull Succ topic:test partition:0 offset:1 key:demo value: time:2021-08-10 15:16:08.386 cha:1455389532
[2021-08-27 11:32:37.918]Pull Succ topic:test partition:0 offset:2 key:demo value: time:2021-08-10 15:16:50.374 cha:1455347544
[2021-08-27 11:32:37.918]Pull Succ topic:test partition:0 offset:3 key:null value: time:2021-08-18 21:08:23.532 cha:743054386
[2021-08-27 11:32:37.918]Pull Succ topic:test partition:0 offset:4 key:null value: time:2021-08-18 21:08:23.778 cha:743054140
[2021-08-27 11:32:37.918]Pull Succ topic:test partition:0 offset:5 key:null value: time:2021-08-18 21:08:23.892 cha:743054026
[2021-08-27 11:32:37.918]Pull Succ topic:test partition:0 offset:6 key:null value: time:2021-08-18 21:08:24.352 cha:743053566
[2021-08-27 11:32:37.919]Pull Succ topic:test partition:0 offset:7 key:null value: time:2021-08-18 21:08:24.452 cha:743053467

Références

Pour obtenir des informations sur les SDK pertinents, consultez la rubrique Présentation des SDK.