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

    Open Source Components

    Filebeat

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

    Elasticsearch

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

    ClickHouse

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

    Kafka

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

    Core Functionality Concepts

    Log Collection Pipeline

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

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

    Index

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

    Shards and Replicas

    Описание:

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

    Columnar Storage

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

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

    Storage Policy

    Описание: Модель размещения хранения в ClickHouse, контролирующая, где хранятся метаданные и данные таблиц логов. В ACP Logging ClickHouse поддерживает:

    • По умолчанию: Хранение данных ClickHouse в локальных путях хоста или в StorageClass.
    • Разделение хранения и вычислений: Хранение метаданных ClickHouse локально или в StorageClass, а данных таблиц логов — в удалённом хранилище S3.

    Cold and Hot Separate

    Описание: Модель многоуровневого хранения для ClickHouse. Активные данные остаются в текущем хранилище ClickHouse, а холодные данные после достижения настроенного порога хранения переносятся в S3. Эта модель используется при необходимости долгосрочного хранения без удержания всех данных в активном хранилище.

    Key Technical Terms

    Ingest Pipeline

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

    Consumer Group

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

    TTL (Time To Live)

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

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

    Replication Factor

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

    Data Flow Model