• Русский
  • Основные понятия

    Содержание

    Open Source Components

    Filebeat

    Позиционирование: Легковесный сборщик логов
    Описание: Компонент для сбора логов с открытым исходным кодом, устанавливаемый на узлах контейнеров, отвечающий за мониторинг файлов логов в реальном времени по заданным путям. Он собирает данные логов через входные модули, обрабатывает их и пересылает логи в Kafka или напрямую доставляет их в компоненты хранения через выходные модули. Поддерживает такие возможности, как агрегация многострочных логов и фильтрация полей для предварительной обработки.

    Elasticsearch

    Позиционирование: Распределённый движок поиска и аналитики
    Описание: Движок полнотекстового поиска на базе Lucene, хранящий данные логов в формате JSON-документов и обеспечивающий поиск с близкой к реальному времени скоростью. Поддерживает динамическое отображение для автоматического распознавания типов полей и достигает быстрой поисковой выдачи по ключевым словам с помощью обратного индексирования, что подходит для поиска по логам и мониторинговых оповещений.

    ClickHouse

    Позиционирование: Колонко-ориентированная аналитическая база данных
    Описание: Высокопроизводительная база данных с колонковым хранением, предназначенная для OLAP-сценариев, реализующая хранение логов на уровне петабайт с использованием движка MergeTree. Поддерживает высокоскоростные агрегирующие запросы, партиционирование по времени и стратегии TTL для данных, что делает её подходящей для анализа логов и статистической отчётности в пакетных вычислениях.

    Kafka

    Позиционирование: Распределённая очередь сообщений
    Описание: Выступает в роли промежуточного программного обеспечения для системы логирования, обеспечивая высокопроизводительную буферизацию логов. При возникновении узких мест в обработке кластера Elasticsearch, принимает данные логов, отправленные Filebeat через Topics, способствуя снижению пиковых нагрузок и асинхронному потреблению, что гарантирует стабильность сбора логов.

    Основные понятия функциональности

    Конвейер сбора логов

    Описание: Полный путь от генерации логов до их хранения, состоящий из четырёх этапов: Сбор -> Передача -> Буферизация -> Хранение. Поддерживает два режима конвейера:

    • Режим прямой записи: Filebeat → Elasticsearch/ClickHouse
    • Режим буфера: Filebeat → Kafka → Elasticsearch

    Индекс

    Описание: Логическая единица разбиения данных в Elasticsearch, аналогичная структуре таблицы в базах данных. Поддерживает создание временных роллирующих индексов (например, logstash-2023.10.01) и автоматизированное многоуровневое хранение hot-warm-cold с помощью Index Lifecycle Management (ILM).

    Шарды и реплики

    Описание:

    • Шард: Физическая единица хранения, образующаяся при горизонтальном разбиении индекса в Elasticsearch, обеспечивающая распределяемую масштабируемость.
    • Реплика: Копия каждого шарда, обеспечивающая высокую доступность данных и балансировку нагрузки запросов.

    Колонковое хранение

    Описание: Основной механизм хранения в ClickHouse, при котором данные сжимаются и хранятся по колонкам, что значительно снижает потребление ввода-вывода. Поддерживает следующие возможности:

    • Векторизованный движок выполнения запросов
    • Партиционирование и шардинг данных
    • Материализованные представления для предварительной агрегации

    Ключевые технические термины

    Ingest Pipeline

    Описание: Конвейер предварительной обработки данных в Elasticsearch, способный выполнять ETL-операции, такие как переименование полей, парсинг Grok и условную логику до записи данных.

    Consumer Group

    Описание: Механизм параллельного потребления в Kafka, при котором несколько экземпляров в одной группе потребителей могут параллельно обрабатывать сообщения из разных партиций, обеспечивая упорядоченную обработку сообщений.

    TTL (Time To Live)

    Описание: Стратегия жизненного цикла данных, поддерживающая два способа реализации:

    • Elasticsearch: Автоматическое удаление устаревших индексов через политики ILM.
    • ClickHouse: Автоматическое удаление партиций таблиц с помощью выражений TTL.

    Replication Factor

    Описание: Конфигурация избыточности данных на уровне Kafka Topic, определяющая количество реплик сообщений на разных брокерах, повышая надёжность данных.

    Модель потока данных