Use essas informações para solucionar problemas no Elasticsearch e no RabbitMQ em um ambiente de cluster. O Elasticsearch, um mecanismo de pesquisa e de análise usado para auditorias, relatórios e logs de sincronização de diretório, e o RabbitMQ, um agente de mensagens, estão embutidos no appliance virtual do VMware Identity Manager.

Solucionando problemas no Elasticsearch

Você pode verificar a integridade do Elasticsearch usando o seguinte comando no appliance do VMware Identity Manager.

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

O comando deve retornar um resultado semelhante ao seguinte.

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

Caso o Elasticsearch não inicie corretamente ou o status esteja vermelho, siga estes passos para solucionar o problema.

  1. Certifique-se de que a porta 9300 esteja aberta.
    1. Atualize os detalhes do nó adicionando os endereços IP de todos os nós no cluster no arquivo /usr/local/horizon/scripts/updateiptables.hzn

      ALL_IPS="node1IPadd node2IPadd node3IPadd"

    2. execute o seguinte script em todos os nós do cluster.

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

  2. Reinicie o Elasticsearch em todos os nós do cluster.

    service elasticsearch restart

  3. Verifique os logs para obter mais detalhes.

    cd /opt/vmware/elasticsearch/logs

    tail -f horizon.log

Solucionando problemas no RabbitMQ

Você pode verificar a integridade do RabbitMQ usando o seguinte comando no appliance do VMware Identity Manager.

rabbitmqctl cluster_status

O comando deve retornar um resultado semelhante ao seguinte.

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

Caso o RabbitMQ não inicie ou a URL de integridade https://hostname/SAAS/API/1.0/REST/system/health/ shows "MessagingConnectionOk":"false", siga essas etapas para solucionar o problema.

  1. Certifique-se de que as portas 4369, 5700, 25672 estejam abertas. Para abrir as portas:
    1. Crie o arquivo usando este comando:

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

    2. Execute o seguinte script:

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

  2. Reinicie o RabbitMQ.
    1. Interrompa todos os processos do rabbitmq em andamento.
    2. rabbitmqctl stop
    3. rabbitmq-server -detached
  3. É possível que você precise reiniciar o serviço do VMware Identity Manager caso o RabbitMQ não inicie com fluidez.

    service horizon-workspace restart