Utilice esta información para solucionar problemas de Elasticsearch y RabbitMQ en un entorno de clúster. Elasticsearch, un motor de búsqueda y análisis usado para registros de sincronización de directorios, informes y auditorías, y RabbitMQ, un agente de mensajería, se encuentran incrustados en el dispositivo virtual VMware Identity Manager.

Solucionar problemas de Elasticsearch

Puede comprobar el estado de Elasticsearch utilizando el siguiente comando en el dispositivo VMware Identity Manager.

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

El comando debe devolver un resultado similar al siguiente.

         {
  "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 no se inicia correctamente o su estado aparece en color rojo, siga estos pasos para solucionar los problemas.

  1. Asegúrese de que el puerto 9300 está abierto.

    1. Actualice la información de los nodos agregando las direcciones IP de todos los nodos del clúster en el archivo /usr/local/horizon/scripts/updateiptables.hzn:

      ALL_IPS="node1IPadd node2IPadd node3IPadd"

    2. Ejecute el siguiente script en todos los nodos del clúster.

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

  2. Reinicie Elasticsearch en todos los nodos del clúster.

    service elasticsearch restart

  3. Revise los registros para obtener más detalles.

    cd /opt/vmware/elasticsearch/logs

    tail -f horizon.log

Solucionar problemas de RabbitMQ

Puede comprobar el estado de RabbitMQ utilizando el siguiente comando en el dispositivo VMware Identity Manager.

rabbitmqctl cluster_status

El comando debe devolver un resultado similar al siguiente.

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 no se inicia o la URL de estado https://hostname/SAAS/API/1.0/REST/system/health/ muestra "MessagingConnectionOk":"false", siga estos pasos para solucionar los problemas.

  1. Asegúrese de que los puertos 4369, 5700 y 25672 están abiertos. Para abrir puertos:

    1. Cree el archivo con este comando:

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

    2. Ejecute el siguiente script:

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

  2. Reinicie RabbitMQ.

    1. Cierre todos los procesos de rabbitmq abiertos.

    2. rabbitmqctl stop

    3. rabbitmq-server -detached

  3. Es posible que necesite reiniciar el servicio de VMware Identity Manager si RabbitMQ no se inicia correctamente.

    service horizon-workspace restart