Обработка событий на нескольких конвейерах
Данное руководство описывает процесс настройки обработки событий на нескольких конвейерах и создания шины для связи их друг с другом при поступлении событий из нескольких источников.
Об обработке событий на нескольких конвейерах
Обработка событий на основе нескольких конвейеров рекомендуется, когда данные собираются с нескольких источников. В этом случае настраивается конфигурация из нескольких взаимосвязанных конвейеров внутри одного коллектора, что упрощает отладку.
Для каждого источника данных создается конвейер, на котором настраивается сбор и нормализация событий. Итоговая корреляция всех нормализованных событий выполняется на отдельном конвейере. Конвейеры связаны друг с другом посредством шины.
Настройка конфигурации для обработки событий на основе нескольких конвейеров включает в себя следующие этапы:
Создание коллектора
Чтобы создать коллектор:
-
Перейдите в раздел Ресурсы → Коллекторы. Система отобразит сведения об имеющихся коллекторах.
-
Нажмите на кнопку Создать (
). Отобразится окно создания коллектора.
-
Введите название коллектора.
-
Укажите ресурсы, выделяемые для работы коллектора: количество ядер процессора в поле CPU и объем оперативной памяти в поле RAM. Значения можно вводить в полях или изменять с помощью кнопок
и
.
-
При наведении курсора на поля CPU и RAM отображаются подсказки с количеством доступных ресурсов в каждом узле кластера Kubernetes.
-
Ресурсы, выделенные на работу коллектора, не используются в распределенной корреляции.
-
Каждая точка входа типа Database, размещенная на конвейере коллектора, использует 256 МБ оперативной памяти (RAM) из ресурсов коллектора. Если планируется размещение точек входа типа Database, необходимо учитывать их суммарное потребление памяти при распределении ресурсов коллектора.
-
-
При необходимости введите описание коллектора.
-
Для работы в режиме распределенной корреляции переведите переключатель Распределенный коррелятор в активное положение.
Изменение этой настройки потребует перезапуска коллектора. Если система работает на базе кластера Kubernetes с одним узлом, включение режима распределенной корреляции недоступно. -
Укажите количество ядер процессора (CPU) и объем оперативной памяти (RAM), выделяемый для работы распределенного коррелятора. Это можно сделать непосредственно в поле или с помощью кнопок
и
.
Операции полей join
иgroup
декларативного правила вычисляются на корреляторе. Остальные поля, в том числеalias
иfilter
, вычисляются на предпроцессорах. В составе распределенного коррелятора может быть только один коррелятор, но несколько предпроцессоров.-
Укажите ресурсы для коррелятора:
-
Выберите узел для размещения коррелятора.
-
Укажите количество ядер процессора и объем оперативной памяти, выделяемые для работы коррелятора. Количество доступных в узле ресурсов отображается под полями ввода.
-
-
Укажите ресурсы для предпроцессора:
-
Выберите узел для размещения предпроцессора.
-
Укажите количество ядер процессора и объем оперативной памяти, выделяемые для работы предпроцессора. Количество доступных в узле ресурсов отображается под полями ввода.
-
-
-
Нажмите на кнопку Добавить предпроцессор, если необходимо добавить дополнительный предпроцессор.
-
При необходимости выберите уровень логирования из выпадающего списка Уровень логирования. Доступны следующие значения:
-
Error — записываются критические ошибки, которые могут влиять на работоспособность коллектора или препятствовать работе коллектора.
-
Warn — записываются предупреждения о потенциальных проблемах, которые могут требовать внимания, но не являются критическими.
-
Info — записывается общая информация о работе и состоянии коллектора.
-
Debug — записываются подробные отладочные сообщения, которые могут использоваться для диагностики и устранения проблем с коллектором.
-
Trace — самый подробный уровень логирования, предоставляющий внутреннюю информацию о каждом шаге работы коллектора.
-
-
Нажмите на кнопку Создать. Система создаст коллектор и отобразит соответствующее уведомление. Новый коллектор появится в списке раздела Ресурсы → Коллекторы.
Настройка шины
Шина позволяет направлять потоки событий между конвейерами. В коллекторе может быть одна или несколько шин. Шина поддерживает два типа соединения: на получение и на отправку событий. Два конвейера событий могут сообщаться друг с другом посредством шины.
Чтобы создать шину:
-
Перейдите в раздел Ресурсы → Коллекторы. Система отобразит сведения об имеющихся коллекторах.
-
Нажмите на строку коллектора, созданного на предыдущем этапе. Система отобразит в правой части экрана карточку этого коллектора с подробной информацией о нем.
-
Перейдите на вкладку Шины в карточке коллектора. Система отобразит список шин коллектора.
-
В нижней части карточки нажмите на кнопку Добавить. На экране отобразится окно добавления шины.
-
Введите название шины.
-
При необходимости введите описание шины.
-
Нажмите на кнопку Добавить. Шина будет создана и отобразится в списке шин на вкладке Шины в карточке коллектора.
Добавление источников
Настройте конвейеры для каждого источника данных, повторив следующие шаги.
Создание конвейера
Чтобы добавить конвейер:
-
Находясь в разделе Ресурсы → Коллекторы, нажмите на строку коллектора, созданного ранее. Система отобразит в правой части экрана карточку этого коллектора с подробной информацией о нем.
-
Перейдите на вкладку Конвейеры в карточке коллектора. Система отобразит список конвейеров коллектора.
-
В нижней части окна нажмите на кнопку Добавить. На экране отобразится окно добавления конвейера.
-
Введите название конвейера.
-
При необходимости введите описание конвейера.
Установите флажок Открыть конфигурацию конвейера, чтобы сразу перейти в окно настроек конфигурации конвейера после его создания. -
Нажмите на кнопку Добавить. Система создаст конвейер и отобразит соответствующее уведомление. Новый конвейер появится в списке на вкладке Конвейеры в карточке коллектора.
Добавление точки входа
Точка входа поставляет в систему поток сырых событий. Выбор формата точки входа зависит от формата данных, получаемых из источника события.
Для отладки конвейера вы можете использовать точку входа Demo Logs, которая генерирует случайные события. |
Чтобы добавить точку входа на конвейер:
-
Нажмите на кнопку Добавить элемент и выберите из выпадающего списка пункт Точка входа. Отобразится окно добавления точки входа.
-
При необходимости выберите шаблон для автоматического заполнения полей точки входа. По умолчанию выбран вариант Без шаблона.
-
Заполните поля (набор и содержание полей могут отличаться в зависимости от типа точки):
-
Название точки входа.
-
Тип точки входа.
-
Политика аудита источников.
Точка входа может быть привязана только к одной политике аудита источников, но к одной политике может быть привязано несколько точек входа. -
Формат точки входа.
-
Данные для подключения.
-
Настройки шифрования соединения (опционально).
-
Количество событий (опционально).
-
Интервал в секундах (опционально).
-
-
Установите флажок Сохранить как шаблон, если настройку точки входа необходимо сохранить в качестве шаблона для дальнейшего использования.
-
Нажмите Добавить. Новая точка входа отобразится на схеме.
Пример:
Добавим соединение с источником, который поставляет данные в формате системного журнала. Для этого выберем тип точки входа Syslog.
Настройка обработки данных
Чтобы привести события к модели, удобной для обогащения, корреляции и хранения, их нужно обработать с помощью нормализатора.
Данные из различных событий можно объединять согласно заданной логике. Для этого используется агрегатор.
Если события необходимо направлять на разные этапы обработки в зависимости от их содержимого, настройте условия фильтрации с помощью маршрутизатора.
Пример:
Рассмотрим сценарий обработки событий в зависимости от их формата.
Добавление маршрутизатора
Чтобы настроить маршрутизацию событий:
Пример:
Рассмотрим пример условия, которое выполняется, если в поле "appname" текста базового события записано значение "some-syslog".
.raw.appname == "some-syslog"
Нормализация данных
Чтобы настроить нормализацию данных:
-
Перейдите в раздел Экспертиза и создайте правило нормализации.
Если поток событий направляется по разным маршрутам, создайте несколько соответствующих правил нормализации. -
Добавьте на конвейер нормализаторы, используя ранее созданные правила нормализации. Необходимо добавить на конвейер по одному нормализатору на каждый маршрут.
-
Соедините выходы маршрутизатора с входами нужных нормализаторов.
Пример:
Рассмотрим фрагмент правила нормализации.
...
.dvendor = "Linux"
.dproduct = "Some Product"
.dvchost = .raw.hostname
.msg = .raw.message
...
Настройка соединения с шиной
Чтобы настроить соединение с шиной:
-
Нажмите на кнопку Добавить элемент и выберите из выпадающего списка пункт Шина.
-
Выберите из выпадающего списка ранее созданную шину. На выбор доступны только шины текущего коллектора.
-
Введите название соединения с шиной. Выберите из выпадающего списка тип соединения Получение.
-
Нажмите на кнопку Добавить. Соединение с шиной отобразится на схеме.
-
Соедините выходы элементов, в которых происходила предварительная обработка данных, со входом шины.

Настройка корреляции событий
Создание конвейера для корреляции
Добавьте конвейер, в котором будет происходить корреляция и отправка событий.
Настройка отправки данных из шины
Чтобы настроить отправку данных из шины:
-
Нажмите на кнопку Добавить элемент и выберите из выпадающего списка пункт Шина.
-
Выберите из выпадающего списка ранее созданную шину. На выбор доступны только шины текущего коллектора.
-
Введите название соединения с шиной. Выберите из выпадающего списка тип соединения Отправка.
-
Нажмите на кнопку Добавить. Соединение с шиной отобразится на схеме.
Добавление коррелятора
Чтобы настроить корреляцию данных:
При необходимости добавьте на конвейер фильтры и прочие элементы для дополнительной обработки и анализа событий. |
Настройка конечных точек и оповещений
Конечная точка, в зависимости от настроек, пересылает событие в хранилище событий или внешнюю систему.
Чтобы настроить отправку событий:
-
Добавьте на конвейер одну или несколько конечных точек, в которых будут сохраняться события.
-
Соедините выходы из шины, коррелятора, созданных на предыдущих шагах, и/или из дополнительных элементов, со входами соответствующих конечных точек.
Сервис оповещений позволяет настраивать связи между правилами корреляции и правилами сегментации для распределения корреляционных событий по оповещениям.
-
Нажмите на кнопку Добавить элемент и выберите из выпадающего списка пункт Сервис оповещений. Отобразится окно добавления сервиса оповещений.
-
Введите название сервиса оповещений.
-
Выберите из выпадающего списка хранилище с событиями, на основе которых будут формироваться оповещения.
-
При необходимости выберите интеграции для отправки оповещений во внешние системы.
-
При необходимости выберите правило сегментации по умолчанию, которое будет применяться ко всем несвязанным правилам корреляции.
Если правило по умолчанию не выбрано, то все корреляционные события, сгенерированные одним и тем же правилом корреляции и не удовлетворяющие условиям правил сегментации, будут объединяться в одно и то же оповещение.
-
Настройте связи с правилами сегментации.
-
Нажмите на кнопку Добавить связь. Откроется окно добавления связи.
-
Выберите требуемое правило сегментации из выпадающего списка. В окне отобразится дерево всех правил корреляции в системе, которые еще не связаны с правилами сегментации в текущем сервисе оповещений.
-
Выберите требуемые правила корреляции, установив флажки слева от их названий.
-
Нажмите на кнопку Добавить. Добавленная связь с правилом сегментации отобразится в окне настройки сервиса оповещений.
-
-
Нажмите на кнопку Добавить. Новый сервис оповещений отобразится на схеме.
-
Соедините выходы из коррелятора, созданного на предыдущем шаге, или из дополнительных элементов, со входом сервиса оповещений.

Включение коллектора и установка конфигурации конвейеров
Чтобы события начали поступать в коллектор и обрабатываться в соответствии с заданными правилами и условиями:
-
Перейдите в карточку коллектора и включите его.
-
Установите текущую конфигурацию на каждом конвейере.