Problèmes liés aux données Zookeeper

Vous consultez la documentation Apigee Edge.
Accédez à la documentation**Apigee X**.
info

Problème constaté

Les problèmes liés aux données, généralement appelés problèmes de câblage, peuvent se manifester de l'une des manières suivantes :

  • Échecs lors du démarrage des serveurs de gestion
  • Échecs de déploiement
  • Erreurs de datastore dans l'UI
  • Problèmes de connectivité entre les centres de données parmi les processeurs de messages et les serveurs de gestion
  • Analytics n'affiche aucune donnée

Ces problèmes ne sont pas liés à l'infrastructure ZooKeeper, mais à des données non valides qui sont disponibles dans l'arborescence ZooKeeper.

Causes possibles

Voici les causes typiques de ce problème :

  1. Nœuds câblés à la mauvaise région ou au mauvais nom de pod lors de l'installation en raison d'erreurs dans le fichier d'installation silencieuse.
  2. L'échec de l'installation d'un composant crée des enregistrements en double lorsque vous réinstallez le composant plusieurs fois. Dans ce cas, un nettoyage est nécessaire pour supprimer l'enregistrement avec les UUID incorrects.

Diagnostic

Pour effectuer un diagnostic, collectez les données suivantes :

  1. Diagramme de topologie, avec le nom d'hôte et les adresses IP de chaque nœud, ainsi que le composant Apigee présent sur le nœud. Un mappage comme celui-ci, utilisant le profil de l'installation Apigee, serait très utile :
    DC-1
    DS: ip1 hostname
    DS: ip2 hostname
    DS: ip3 hostname
    MS: ip4 hostname
    RMP: ip5 hostname
    RMP: ip6 hostname
    SAX: ip7 hostname
    
    DC-2
    DS: ip8 hostname
    DS: ip9 hostname
    DS: ip10 hostname
    MS: ip11 hostname
    RMP: ip12 hostname
    RMP: ip13 hostname
    SAX: ip14 hostname
  2. Générez la sortie de l'arborescence ZooKeeper pour vérifier le câblage :
    /opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zk-tree-output.txt
  3. Pour faciliter la vérification des données dans l'arborescence ZooKeeper, exécutez les appels d'API de gestion suivants pour obtenir la liste des UUID de serveur dans chacun des centres de données :

    Serveurs de passerelle

    curl -u sysadmin@email.com "http://management-server-host:8080/v1/servers?pod=gateway&region=region-name"

    Serveurs centraux

    curl -u sysadmin@email.com "http://management-server-host:8080/v1/servers?pod=central&region=region-name"

    Serveurs Analytics

    curl -u sysadmin@email.com "http://management-server-host:8080/v1/servers?pod=analytics&region=region-name"
  4. Vérifiez les UUID de chaque composant et assurez-vous qu'ils correspondent à ce que vous voyez dans l'arborescence ZooKeeper :

    Routeur

    curl 0:8081/v1/servers/self/uuid

    Processeur de messages

    curl 0:8082/v1/servers/self/uuid

    Agent Qpid

    curl 0:8083/v1/servers/self/uuid

    Agent Postgres

    curl 0:8084/v1/servers/self/uuid
  5. Utilisez les données UUID pour rechercher la sortie de l'arborescence ZooKeeper générée à l'étape 2 afin de valider le câblage des composants et de supprimer tous les enregistrements en double pour le composant qui comporte les UUID incorrects.
  6. Utilisez les appels d'API de gestion listés ici pour corriger l'enregistrement du datastore. Les composants tels que les routeurs, les processeurs de messages , Postgres et Qpid s'enregistrent automatiquement auprès de ZooKeeper au démarrage.

Solution

Les problèmes liés aux données ZooKeeper doivent être résolus au cas par cas. Les données de ZooKeeper sont basées sur les topologies Apigee Edge et varient en fonction de chaque cas d'utilisation. Si vous rencontrez l'un des symptômes du problème, collectez les données comme expliqué dans la section précédente et contactez l'assistance Apigee Edge.