Spec-Zone.ru › Elasticsearch 7
›Elasticsearch Guide [7.17] ›Мониторинг кластера ›Сбор данных мониторинга с помощью устаревших коллекторов

Коллекторы

Рекомендуется использовать Metricbeat для сбора и отправки данных мониторинга в кластер мониторинга.

Если вы ранее настраивали методы сбора устаревшего типа, вам следует перейти на методы сбора Metricbeat. Используйте либо методы сбора Metricbeat, либо методы устаревшего сбора; не используйте оба метода одновременно.

Подробнее см. Сбор данных мониторинга с помощью Metricbeat.

Коллекторы, как следует из их названия, собирают данные. Каждый коллектор запускается один раз за каждый интервал сбора данных, чтобы получить данные из общедоступных API Elasticsearch и X-Pack, которые он выбрал для мониторинга. По завершении сбора данных данные передаются по частям экспортерам для отправки в кластеры мониторинга. Независимо от количества экспортеров, каждый коллектор выполняется только один раз за интервал сбора данных.

На каждый тип собираемых данных приходится только один коллектор. Другими словами, любой документ мониторинга создается одним коллектором, а не объединяется из нескольких коллекторов. В настоящее время в функциях мониторинга Elasticsearch несколько коллекторов, поскольку цель состоит в минимизации перекрытия между ними для оптимальной производительности.

Каждый коллектор может создавать ноль или более документов мониторинга. Например, коллектор index_stats собирает все статистические данные индексов одновременно, чтобы избежать многих ненужных вызовов.

Коллектор Типы данных Описание

Статистика кластера

cluster_stats

Собирает данные о состоянии кластера, включая части фактического состояния кластера (например, GET /_cluster/state) и статистику о нем (например, GET /_cluster/stats). Это генерирует один тип документа. В версиях до X-Pack 5.5 это были фактически три отдельных коллектора, которые генерировали три отдельных типа: cluster_stats, cluster_state и cluster_info. В 5.5 и более поздних версиях все три объединены в cluster_stats. Этот коллектор запускается только на избранном узле-мастере, и собранные данные (cluster_stats) в значительной степени управляют интерфейсом. Отсутствие этих данных указывает на неправильную настройку избранного узла-мастера, таймауты, связанные со сбором данных, или проблемы с хранением данных. Создается только один документ на период сбора данных.

Статистика индекса

indices_stats, index_stats

Собирает данные об индексах в кластере, как в общем виде, так и индивидуально. Это создает множество документов, представляющих части выходных данных статистики индексов (например, GET /_stats). Эта информация должна собираться только один раз, поэтому она собирается на избранном узле-мастере. Наиболее распространенная причина сбоя этого коллектора связана с чрезмерным количеством индексов — и, следовательно, временем их сбора — что приводит к таймаутам. Создается один сводный indices_stats документ на период сбора и один index_stats документ на индекс за период сбора.

Восстановление индексов

index_recovery

Собирает данные о восстановлении индексов в кластере. Восстановление индексов представляет собой распределение фрагментов на уровне кластера. Если индекс не восстановлен, он не используется. Это также соответствует восстановлению фрагментов через снимки. Эта информация должна собираться только один раз, поэтому она собирается на избранном узле-мастере. Наиболее распространенная причина сбоя этого коллектора связана с чрезмерным количеством фрагментов — и, следовательно, временем их сбора — что приводит к таймаутам. По умолчанию создается один документ, содержащий все восстановления, который может быть довольно большим, но он дает самую точную картину восстановления в производственном кластере.

Фрагменты

shards

Собирает данные обо всех распределённых фрагментах всех индексов, в особенности, включая узел, к которому прикреплён фрагмент. Эта информация должна собираться только один раз, поэтому она собирается на избранном узле-мастере. Коллектор использует локальное состояние кластера для получения таблицы маршрутизации без проблем с таймаутами в сети, в отличие от большинства других коллекторов. Каждый фрагмент представляется отдельным документом мониторинга.

Задачи

job_stats

Собирает данные о статистике всех задач машинного обучения (например, GET /_ml/anomaly_detectors/_stats). Эта информация должна собираться только один раз, поэтому она собирается на избранном узле-мастере. Однако для того, чтобы узел-мастер мог выполнить сбор, узел-мастер должен иметь xpack.ml.enabled значение true (по умолчанию) и уровень лицензии, поддерживающий машинное обучение.

Статистика узла

node_stats

Собирает данные о работающем узле, такие как использование памяти и процессорное время (например, GET /_nodes/_local/stats). Этот коллектор запускается на каждом узле с включенными функциями мониторинга. Частая причина сбоя — таймаут запроса статистики узла из-за слишком большого числа фрагментов. В результате коллектор тратит слишком много времени на ожидание вычисления статистики файловой системы, пока не произойдёт таймаут. Создается один node_stats документ на период сбора. Сбор по узлам помогает обнаруживать проблемы с взаимодействием узлов, но не с кластером мониторинга (например, временные проблемы с сетью или давление на память).

Функции мониторинга Elasticsearch используют однопоточный планировщик для запуска сбора данных мониторинга Elasticsearch всеми соответствующими коллекторами на каждом узле. Этот планировщик управляется локально каждым узлом, а его интервал контролируется с помощью настройки xpack.monitoring.collection.interval, которая по умолчанию составляет 10 секунд (10s) на уровне узла или кластера.

В основе работы каждого коллектора лежит один и тот же принцип. За каждый интервал сбора данных проверяется, нужно ли запускать каждый коллектор, а затем запускаются соответствующие коллекторы. Сбой одного коллектора не влияет на работу других коллекторов.

После завершения сбора все данные мониторинга передаются экспортерам для маршрутизации данных мониторинга в кластеры мониторинга.

Если в диаграммах мониторинга Kibana имеются пробелы, это обычно означает, что произошёл сбой коллектора или кластер мониторинга не получил данные (например, он перезапускался). В случае сбоя коллектора на узле, на котором произошла попытка сбора, должно быть записано сообщение об ошибке.

Сбор в настоящее время выполняется последовательно, а не параллельно, чтобы избежать дополнительной нагрузки на избранный узел-мастер. Недостатком этого подхода является то, что коллекторы могут наблюдать разную версию состояния кластера в течение одного периода сбора. На практике это не оказывает существенного влияния, и запуск коллекторов параллельно не предотвратит такую возможность.

Дополнительную информацию о параметрах конфигурации коллекторов см. в разделе Настройки сбора мониторинга.

Сбор данных со всего Elastic Stack

Функции мониторинга Elasticsearch также получают данные мониторинга из других частей Elastic Stack. Таким образом, она служит внеплановым коллектором данных мониторинга для стека.

По умолчанию сбор данных отключён. Данные мониторинга Elasticsearch не собираются, и все данные мониторинга из других источников, таких как Kibana, Beats и Logstash, игнорируются. Необходимо установить xpack.monitoring.collection.enabled на значение true, чтобы включить сбор данных мониторинга. См. Настройки мониторинга в Elasticsearch.

После получения данных они передаются экспортерам для маршрутизации в кластер мониторинга, как и все данные мониторинга.

Поскольку этот «коллектор» на уровне стека существует вне интервала сбора данных функций мониторинга Elasticsearch, он не подвержен влиянию настройки xpack.monitoring.collection.interval. Следовательно, данные передаются экспортерам при получении. Это поведение может привести к неожиданному созданию индексов для Kibana, Logstash или Beats.

В то время как данные мониторинга собираются и обрабатываются, к входящим документам добавляются некоторые метаданные производственного кластера. Эти метаданные позволяют Kibana связывать данные мониторинга с соответствующим кластером. Если такая связь не важна для инфраструктуры, которую вы мониторите, проще настроить Logstash и Beats на прямой отчёт данных мониторинга в кластер мониторинга. В этом случае также предотвращается дополнительная нагрузка на производственный кластер, связанная с данными мониторинга, что может быть очень полезно при большом количестве узлов Logstash или Beats.

Дополнительную информацию о типичных архитектурах мониторинга см. в разделе Как это работает.

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/es-monitoring-collectors.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API