Die nachfolgend dargestellten Informationen bieten eine Unterstützung für die Behebung von Problemen mit Elasticsearch und RabbitMQ in einer Cluster-Umgebung. Elasticsearch, eine Such- und Analyse-Engine, die für die Überprüfung, für Berichte und für Protokolle der Verzeichnissynchronisierung verwendet wird, und RabbitMQ, ein Messaging-Broker, sind in die virtuelle Appliance eingebettet.

Fehlerbehebung bei Elasticsearch

Sie können den Status von Elasticsearch mit dem nachfolgend dargestellten Befehl in der VMware Identity Manager-Appliance überprüfen.

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

Der Befehl sollte ein Ergebnis ähnlich dem nachfolgend dargestellten zurückgeben.

         {
  "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
}

Wenn Elasticsearch nicht korrekt startet oder der Status „rot“ angezeigt wird, führen Sie die im Folgenden dargestellten Schritte zur Fehlerbehebung durch.

  1. Stellen Sie sicher, dass der Port 9300 geöffnet ist.

    1. Aktualisieren Sie die Knotendetails durch Hinzufügen der IP-Adressen aller Knoten im Cluster zur Datei /usr/local/horizon/scripts/updateiptables.hzn:

      ALL_IPS="node1IPadd node2IPadd node3IPadd"

    2. Führen Sie das nachfolgend dargestellte Skript auf allen Knoten im Cluster aus.

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

  2. Starten Sie Elasticsearch auf allen Knoten im Cluster erneut.

    service elasticsearch restart

  3. In den Protokollen finden Sie zusätzliche Details.

    cd /opt/vmware/elasticsearch/logs

    tail -f horizon.log

Fehlerbehebung bei RabbitMQ

Sie können den Status von RabbitMQ mit dem nachfolgend dargestellten Befehl in der VMware Identity Manager-Appliance überprüfen.

rabbitmqctl cluster_status

Der Befehl sollte ein Ergebnis ähnlich dem nachfolgend dargestellten zurückgeben.

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',[]}]}]

Wenn RabbitMQ nicht startet oder die Status-URL https://hostname/SAAS/API/1.0/REST/system/health/ "MessagingConnectionOk":"false" anzeigt, führen Sie die im Folgenden dargestellten Schritte zur Fehlerbehebung durch.

  1. Stellen Sie sicher, dass die Ports 4369, 5700 und 25672 geöffnet sind. Zum Öffnen von Ports gehen Sie folgendermaßen vor:

    1. Erstellen Sie die Datei mithilfe des folgenden Befehls:

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

    2. Führen Sie das folgende Skript aus:

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

  2. Starten Sie RabbitMQ erneut.

    1. Beenden Sie alle vorhandenen rabbitmq-Prozesse.

    2. rabbitmqctl stop

    3. rabbitmq-server -detached

  3. Sie müssen den VMware Identity Manager-Dienst eventuell erneut starten, wenn RabbitMQ nicht problemfrei startet.

    service horizon-workspace restart