Каждый узел в кластере имеет свою роль, или даже несколько. В production
сети рекомендуется разделять хосты по ролям.
По умолчанию узел является узлом с правом доступа к мастеру
(node.master
), узлом данных
(node.data
), приема
(node.ingest
) и машинного обучения
(node.ml
). Это определяется в командной строке или в файле конфигурации elasticsearch.yml
.
Тип узла | Параметр конфигурации | Значение по умолчанию |
---|---|---|
может быть мастером | node.master | true |
узел данных | node.data | true |
узел приёма | node.ingest | true |
машинное обучение | node.ml | true |
Узел данных (data node)
На узлах данных хранятся shards
, содержащие проиндексированные вами документы. Также они выполняют операции, связанные с данными, такие как CRUD
, поиск и агрегирование.
Как вы узнали ранее, все узлы по умолчанию являются узлами данных, и это настраивается с помощью свойства node.data
.
Важно следить за нагрузкой на ваши узлы данных, если они перегружены, то есть смысл задуматься о добавлении новой ноды данных в кластер.
Узел приёма (ingest node)
Узлы приёма предоставляют возможность предварительной обработки документа перед его индексированием. Узел приема перехватывает запросы, применяет преобразования, а затем передает документы обратно в API
для индексирования. Все узлы по умолчанию являются узлами приема и настраиваются с помощью свойства node.ingest
.
Узел машинного обучения (machine learning node)
Машинное обучение автоматически моделирует поведение ваших данных Elasticsearch
в реальном времени - тенденции, периодичность и т. Д., чтобы быстрее выявлять проблемы, упрощать анализ и сокращать количество ложных срабатываний.
Если вы хотите использовать функции машинного обучения, в вашем кластере должен быть хотя бы один узел машинного обучения.
Координационный узел (coordinating node)
Координирующий узел - это узел, который получает и обрабатывает запросы. Каждый узел неявно является координирующим узлом.
Когда запрос получен, координатор проверяет состояние кластера, чтобы найти соответствующий ресурс для обслуживания этого запроса, и пересылает его на соответствующий узел (узлы) перед ответом.
В итоге
- Существуют разные роли узлов, и узлы могут иметь одну или несколько ролей одновременно.
- Узлы данных содержат
shards
и выполняют операции, связанные с данными, такие какCRUD
, поиск и агрегирование. - Узлы приема предварительно обрабатывают документы перед индексацией в
Elasticsearch
. - Узлы машинного обучения выполняют задания машинного обучения
- Более крупные кластеры с большим объемом должны иметь выделенные узлы для повышения производительности и использования ресурсов.
Комментарии