Utilisez ces informations pour résoudre les problèmes liés à Elasticsearch et RabbitMQ dans un environnement de cluster. Elasticsearch, un moteur de recherche et d'analyse pour l'audit, les rapports et les journaux de synchronisation de répertoire, et RabbitMQ, un broker de messagerie, sont intégrés dans le dispositif virtuel VMware Identity Manager.

Résolution des problèmes d'Elasticsearch

Vous pouvez vérifier la santé d'Elasticsearch en utilisant la commande suivante dans le dispositif VMware Identity Manager.

curl 'http://localhost:9200/_cluster/health?pretty'

La commande doit renvoyer un résultat semblable à ce qui suit.

         {
  "cluster_name" : "horizon",
  "status" : "green",
  "timed_out" : false,
  "number_of_nodes" : 3,
  "number_of_data_nodes" : 3,
  "active_primary_shards" : 20,
  "active_shards" : 40,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 0,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0
}

Si Elasticsearch ne démarre pas correctement ou si son état est rouge, suivez ces étapes pour résoudre les problèmes.

  1. Vérifiez que le port 9300 est ouvert.

    1. Mettez à jour les détails du nœud en ajoutant les adresses IP de tous les nœuds du cluster au fichier /usr/local/horizon/scripts/updateiptables.hzn :

      ALL_IPS="node1IPadd node2IPadd node3IPadd"

    2. Exécutez le script suivant sur tous les nœuds du cluster.

      /usr/local/horizon/scripts/updateiptables.hzn

  2. Redémarrez Elasticsearch sur tous les nœuds du cluster.

    service elasticsearch restart

  3. Consultez les fichiers journaux pour tout complément d'information.

    cd /opt/vmware/elasticsearch/logs

    tail -f horizon.log

Résolution des problèmes de RabbitMQ

Vous pouvez vérifier la santé de RabbitMQ en utilisant la commande suivante dans le dispositif VMware Identity Manager.

rabbitmqctl cluster_status

La commande doit renvoyer un résultat semblable à ce qui suit.

Cluster status of node 'rabbitmq@node3' ...
[{nodes,[{disc,['rabbitmq@node2','rabbitmq@node3']}]},
 {running_nodes,['rabbitmq@node3']},
 {cluster_name,<<"rabbitmq@node2.example.com">>},
 {partitions,[]},
 {alarms,[{'rabbitmq@node3',[]}]}]

Si RabbitMQ ne démarre pas ou si l'URL de santé https://hostname/SAAS/API/1.0/REST/system/health/ indique "MessagingConnectionOk":"false", suivez ces étapes pour résoudre les problèmes.

  1. Vérifiez que les ports 4369, 5700, 25672 sont ouverts. Pour ouvrir les ports :

    1. Créez le fichier en utilisant cette commande :

      touch /usr/local/horizon/conf/flags/enable.rabbitmq

    2. Exécutez le script suivant :

      /usr/local/horizon/scripts/updateiptables.hzn

  2. Redémarrez RabbitMQ.

    1. Terminez tous les processus rabbitmq existants.

    2. rabbitmqctl stop

    3. rabbitmq-server -detached

  3. Vous devrez peut-être redémarrer le service VMware Identity Manager si RabbitMQ ne démarre pas normalement.

    service horizon-workspace restart