«Независимо от того, начинаете ли вы работать с Elasticsearch или являетесь опытным профессионалом, вы столкнетесь со случаями, когда вам нужно получить информацию о состоянии кластера Elasticsearch.
Затем вы можете использовать эту информацию для определения работоспособности кластера и выполнения диагностики или отладки различных проблем.
В этом посте вы узнаете, как можно получить информацию о состоянии кластера с помощью различных простых шагов».
API состояния кластера Elasticsearch
Elasticsearch широко использует Restful API. Поэтому неудивительно, что он предоставляет конечную точку API для получения информации о состоянии кластера.
Синтаксис конечной точки показан ниже:
ПОЛУЧИТЬ / _кластер / государство /< показатели >/< цель >
API принимает следующие параметры пути:
- метрики — указывает список параметров, которые нужно получить из кластера. Это необязательный параметр. Принятые варианты включают
- _all — показать все метрики кластера.
- блоки — показывать только блоки из ответа.
- master_node — получить только часть главного узла.
- метаданные — отображать только метаданные.
- узлы – показаны только узлы.
- routing_nodes — показать узлы маршрутизации.
- routing_table — отображать только маршрутную_таблицу.
- version – показать версию кластера.
- target — указывает список потоков данных, индексов и псевдонимов в виде значений, разделенных запятыми. Это необязательный параметр.
Другие параметры, поддерживаемые в запросе, включают:
- local — извлекает информацию о кластере только с локального узла.
- expand_wildcards — указывает, следует ли расширять выражения с подстановочными знаками.
- ignore_unavailable — если true, недоступные индексы игнорируются.
Ознакомьтесь с документацией, чтобы узнать больше об этом API, параметре запроса и многом другом.
Пример 1
В следующем примере возвращается вся информация о состоянии кластера.
завиток -XGET «http://localhost:9200/_cluster/state/_all?pretty=true» -ЧАС 'kbn-xsrf: отчетность'
Результирующая информация о состоянии кластера выглядит следующим образом:
Пример 2
В приведенном ниже примере показаны метаданные таблицы маршрутизации для индекса 6IoKfqY1TredUYfi5DL7PA:
завиток -XGET 'АДД7Д989А7Д7501DE7BC9C58D4D6F66B05C51262' -ЧАС 'kbn-xsrf: отчетность'
Запрос вернет метаданные и таблицу маршрутизации указанного индекса, как показано ниже:
Пример 3
Чтобы получить версию кластера, запустите:
завиток -XGET «http://localhost:9200/_cluster/state/version?pretty» -ЧАС 'kbn-xsrf: отчетность'
Приведенный выше пример вернет версию кластера, как показано ниже:
'имя_кластера' : '776a462b8a1942bfb8ba46decf49ca8c' ,
'кластер_uuid' : '6IoKfqY1TredUYfi5DL7PA' ,
'версия' : 1144 ,
'state_uuid' : '_efEiXwzTwyaBrezYDJ2sA'
}
Пример 4
Чтобы получить состояние кластера только на локальном узле, выполните:
завиток -XGET «http://localhost:9200/_cluster/state/_all?local=true» -ЧАС 'kbn-xsrf: отчетность'
В этом случае запрос возвращает информацию с локального узла, а не с главного узла.
Выход:
Вывод
В этой статье вы узнали об API состояния кластера. Этот API позволяет получать информацию о кластере с главного или локального узла.
Спасибо за чтение.