Execute comandos no console Dev Tools do Kibana para verificar a integridade do cluster, a carga dos nós, a alocação de shards e as informações de índices, facilitando o monitoramento rotineiro e a solução de problemas.
Pré-requisitos
É necessário ter uma instância do Alibaba Cloud Elasticsearch. Para mais informações, consulte Crie um cluster do Alibaba Cloud Elasticsearch.
Procedimento
-
Faça login no console do Kibana do seu cluster Elasticsearch.
Para obter instruções detalhadas, consulte Faça login no console do Kibana. Execute todos os comandos deste tópico no console Dev Tools.
No painel de navegação à esquerda, clique em Dev Tools.
-
No Console, execute o seguinte comando para verificar o status de integridade do cluster.
GET /_cluster/healthUma solicitação bem-sucedida retorna a seguinte resposta:
{ "cluster_name" : "es-cn-45xxxxxxxxxxxxk1q", "status" : "green", "timed_out" : false, "number_of_nodes" : 2, "number_of_data_nodes" : 2, "active_primary_shards" : 18, "active_shards" : 36, "relocating_shards" : 0, "initializing_shards" : 0, "unassigned_shards" : 0, "delayed_unassigned_shards" : 0, "number_of_pending_tasks" : 0, "number_of_in_flight_fetch" : 0, "task_max_waiting_in_queue_millis" : 0, "active_shards_percent_as_number" : 100.0 }O campo
statusindica o estado de integridade do cluster. Os valores válidos sãogreen,yellowered.Status
Estado
Descrição
red
Nem todos os shards primários estão disponíveis.
Um ou mais shards primários não atribuídos.
yellow
Todos os shards primários estão disponíveis, mas nem todas as réplicas estão acessíveis.
Um ou mais shards de réplica não atribuídos.
green
Todos os shards primários e réplicas estão disponíveis.
Todos os shards primários e réplicas atribuídos.
Um cluster com status
yellowpode tornar operações como alteração de senhas e upgrades de instância significativamente mais lentas. Antes de executar essas tarefas, restaure o cluster para o statusgreen. Frequentemente, o statusyellowocorre porque o número de réplicas de um índice excede a quantidade de nós disponíveis menos um. Para corrigir essa situação, siga estas etapas:-
Identifique os índices com status
yellow:curl -u <username>:<password> http://<host>:9200/_cat/indices -
Ajuste o número de réplicas do índice afetado, definindo o valor como igual ao total de nós disponíveis menos um.
curl -XPUT -u <username>:<password> http://<host>:9200/<problematic_index_name>/_settings -H 'Content-Type: application/json' -d '{"index":{"number_of_replicas":(<number_of_nodes - 1>)}'NotaApós reiniciar ou redimensionar uma instância, ajuste a quantidade de réplicas dos seus índices para corresponder à nova contagem de nós.
-
Comandos de cluster
Comando | Descrição |
GET /_cat/health?v | Retorna o status de integridade do cluster (green, yellow ou red). Para descrições dos status, consulte a tabela acima. |
GET /_cluster/health?pretty=true | Retorna o status de integridade do cluster. O parâmetro
|
GET /_cluster/stats | Retorna estatísticas do cluster, incluindo informações de CPU e JVM. |
GET /_cluster/state | Retorna informações detalhadas sobre o estado do cluster, incluindo nós e shards. |
GET /_cluster/pending_tasks | Retorna as tarefas pendentes no cluster. |
GET /_cluster/settings | Retorna as configurações globais do cluster. |
Comandos de nó
|
Comando |
Descrição |
|
GET /_cat/master?v |
Retorna informações sobre o nó mestre. |
|
GET /_cat/nodes?v |
Retorna o status atual de cada nó, incluindo uso de CPU, memória heap e carga. |
|
GET /_cat/nodeattrs?v |
Retorna os atributos personalizados de cada nó. |
|
GET /_nodes/stats?pretty=true |
Retorna estatísticas dos nós. |
|
GET /_nodes/process |
Retorna informações de processos dos nós. |
|
GET /_nodes/hot_threads |
Retorna as tarefas executadas por hot threads com alto consumo de CPU. Este comando é útil para diagnosticar picos de utilização de CPU no cluster. Ao analisar as pilhas de threads, como Lucene Merge Thread, e a utilização de CPU na resposta, você consegue determinar quais operações específicas causam a alta carga. |
|
GET /_nodes/<nodeip>/jvm,process,os |
Retorna informações de JVM, processo e sistema operacional (OS) de um nó específico. |
|
GET /_cat/plugins?v |
Retorna os plugins instalados em cada nó. |
|
GET /_cat/thread_pool?v |
Retorna estatísticas de thread pool por nó, incluindo tipo, threads ativas e tamanho da fila. |
Comandos de shard
|
Comando |
Descrição |
|
GET /_cat/shards?v |
Retorna informações detalhadas sobre cada shard, como nome do índice, ID, tipo (primário ou réplica), status, contagem de documentos e uso de disco. A saída inclui o motivo da falha para shards com problemas. Para visualizar dados de um índice específico, execute |
|
GET /_cat/allocation?v |
Retorna a alocação de shards em cada nó. |
|
GET /_cat/recovery?v |
Retorna o progresso de recuperação de cada shard. |
Comandos de segmento
GET /_cat/segments?v
Retorna informações sobre segmentos de cada índice, como nome, shard associado, uso de memória ou disco e status de flush. Para consultar segmentos de um índice específico, execute GET _cat/segments/<index>?v.
Comandos de índice
|
Comando |
Descrição |
|
GET /_cat/indices?v |
Retorna detalhes de todos os índices, incluindo status de integridade, estado, contagem de shards e réplicas, além do total de documentos. Para visualizar informações de um índice específico, execute |
|
GET /_cat/aliases?v |
Retorna informações sobre aliases de índices, incluindo os índices de destino e configurações de roteamento. |
Comandos de mapeamento
|
Comando |
Descrição |
|
GET /_mapping |
Retorna os mapeamentos de todos os índices. |
|
GET /<index>/_mapping |
Retorna o mapeamento de um índice específico. |
Comandos de documento
|
Comando |
Descrição |
|
GET /_cat/count?v |
Retorna o total de documentos no cluster. Para obter a contagem de um índice específico, execute |
|
GET /<index>/_doc/<id> |
Recupera os dados de um documento específico. |
Comandos de snapshot
|
Comando |
Descrição |
|
GET _snapshot/_all |
Retorna todos os snapshots. |
|
GET _snapshot/<snapshot_name>/_status |
Retorna o progresso de um snapshot específico. |
Perguntas frequentes
Como visualizo todas as tarefas de busca em execução no Elasticsearch?
No console Dev Tools do Kibana, execute o comando abaixo para consultar todas as tarefas de busca ativas no nó atual e seus detalhes:
GET /_tasks?actions=indices:data/read/search*&detailed=true&nodes=_local
Esse comando é ideal para cenários como diagnóstico de latência de busca e verificação do status de execução de tarefas.
Como solucionar o erro 503 Service Unavailable em requisições de busca do Elasticsearch?
Geralmente, o erro 503 resulta de alta carga no cluster ou uso excessivo de disco. Siga estas etapas para resolver o problema:
Execute
GET /_cluster/healthpara verificar a integridade do cluster e identificar se ele está no estadoredouyellow, ou se existem shards não atribuídos.Execute
GET /_cat/nodes?vpara inspecionar o uso de CPU, memória heap e disco dos nós.Caso o status do cluster esteja anormal, resolva primeiro o problema de alocação de shards ou o gargalo de recursos antes de tentar a requisição de busca novamente.