Коллекторы
Elastic Agent и Metricbeat — рекомендуемые методы сбора и отправки данных мониторинга в кластер мониторинга.
Если вы ранее настраивали устаревшие методы сбора, необходимо мигрировать на использование Elastic Agent или Metricbeat для сбора данных. Не используйте устаревшие методы сбора вместе с другими методами.
Коллекторы, как следует из их названия, собирают данные. Каждый коллектор выполняется один раз за интервал сбора данных, чтобы получить данные из общедоступных API Elasticsearch и X-Pack, которые он выбрал для мониторинга. После завершения сбора данных данные передаются в виде набора экспортерам для отправки в кластеры мониторинга. Независимо от количества экспортеров, каждый коллектор выполняется только один раз за интервал сбора.
На каждый тип собираемых данных приходится только один коллектор. Другими словами, любой документ мониторинга создается одним коллектором, а не объединяется из нескольких коллекторов. Функции мониторинга Elasticsearch в настоящее время имеют несколько коллекторов, так как цель — минимизировать дублирование между ними для оптимальной производительности.
Каждый коллектор может создавать ноль или более документов мониторинга. Например, коллектор index_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/8.17/es-monitoring-collectors.html