Problèmes liés aux données Zookeeper

Vous consultez la documentation d'Apigee Edge.
Consultez la documentation Apigee X.
en savoir plus

Problème constaté

Les problèmes liés aux données, communément appelés problèmes de câblage, peuvent se manifester par l'un des symptômes suivants:

  • Échecs au démarrage des serveurs de gestion
  • Échecs de déploiement
  • Erreurs du datastore dans l'interface utilisateur
  • Problèmes de connectivité entre les centres de données entre les processeurs de messages et les serveurs de gestion
  • Aucune donnée affichée dans Analytics

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

Causes possibles

Causes courantes de ce problème:

  1. Nœuds connecté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 reprises. Dans ce cas, un nettoyage est nécessaire pour supprimer l'enregistrement avec les mauvais UUID.

Diagnostic

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

  1. Diagramme de topologie, avec le nom d'hôte et les adresses IP de chaque nœud, et le composant Apigee qui existe sur le nœud Un mappage comme celui-ci à l'aide du profil de l'installation Apigee serait le plus 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 une sortie d'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 afin d'obtenir la liste des UUID des serveurs 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 d'analyse

    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. À l'aide des données UUID, recherchez le résultat de l'arborescence ZooKeeper généré à l'étape 2 afin de valider le câblage des composants et de supprimer les enregistrements en double du composant comportant des UUID incorrects.
  6. Utilisez les appels d'API de gestion répertoriés ici pour corriger l'enregistrement dans le datastore. Les composants tels que les routeurs, les processeurs de messages, Postgres et Qpid s'enregistrent automatiquement auprès de ZooKeeper au moment du démarrage.

Résolution

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