Elasticsearch предоставляет различные API для оперативного управления кластерами и узлами. Например мы можем проверить работоспособность кластера следующим запросом:
http://127.0.0.1:9200/_cluster/health?pretty
Флаг в конце URL-адреса делает JSON более понятным. Ответ от API кластера показан ниже:
{ "cluster_name": "es-dev", "status": "green", "timed_out": false, "number_of_nodes": 1, "number_of_data_nodes": 1, "active_primary_shards": 0, "active_shards": 0, "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 }
Как видно из ответа статус зеленый (статус кластера может быть зеленым, желтым или красным). Состояние кластера — это, в основном, индикация правильного распределения осколков в кластере.
В следующей таблице описано, что означает каждый статус:
Положение дел | Описание |
red | Красный означает, что не все осколки доступны для поиска. Скажем, один из узлов, содержащих осколок индекса, упал, и осколок не может быть восстановлен ни на одном узле кластера. Это может произойти из-за заканчивающего дискового пространства и по многих другим причинам. В этом случае запрос к индексу возвращается с неполными результатами, поскольку не все осколки доступны. |
yellow | Желтый означает что, все осколки доступны, но вот реплики не все. В этом случае любые запросы к индексу все же возвращаются с правильными результатами, но если узел, содержащий мастер осколок, упадет, могут потеряться данные.
Так же желтый может означать не верные настройки конфигурации. |
green | Зеленый означает, что все отлично. Мастер осколки и реплики распределены правильно. |
Далее, из ответа, вы можете узнать количество узлов и число узлов данных, а также другие интересующие вас данные о кластере.