Это старая версия документа!
IPFIX-балансировщик
Ключевая задача модуля — ретрансляция (репликация и балансировка) всех экспортируемых с DPI IPFIX-потоков данных о трафике (Fullflow/Clickstream/DNS flow): он принимает IPFIX от fastDPI и далее ретранслирует его на другие хосты согласно настройкам. Дополнительно может быть реализован режим записи. IPFIX-балансировщик оперирует порциями данных (сообщениями) при их распределении между узлами сбора данных (ресиверами/коллекторами). Имеет 2 основных режима распределения данных:
- Режим "RoundRobin" разделяет (балансирует) поток IPFIX по одному сообщению на каждый указанный хост.
Отправляет одно сообщение на один узел приема → коллектор → отправляет следующее сообщение на следующий доступный хост приёма → коллектор и так по кругу пока не закончатся сообщения. - Режим "All" реплицирует поток IPFIX.
Копирует полученные сообщения от DPI, на все узлы приема — коллекторы.
Позволяет работать как по UDP, так и по TCP, а также привязывать обработчик определенного типа трафика (Fullflow/Clickstream/DNS flow) к ядру CPU системы, обеспечивая тем самым распределение нагрузки между CPU.
С помощью балансировщика можно выполнить:
- Распределение трафика между узлами сбора и хранения данных, в случае работы QoE в режиме "Кластера", когда хранение данных выполняется на разных серверах.
- Дублирование данных в режиме репликации, между узлами сбора и хранения, для решения вопроса отказоустойчивости или одновременного экспорта потока в разные направления, или между разными хостами приёма потока (Fullflow/Clickstream/DNS flow).
- Перенаправлять поток (Fullflow/Clickstream/DNS flow) с DPI без изменения конфигурации и необходимого рестарта процесса fastdpi.
Когда поток данных экспортируется в балансировщик по адресу 127.0.0.1, запущенный на том же хосте, где и DPI.
При этом при изменении адреса назначения потока или адреса коллектора, необходимо выполнить эти изменения в файле конфигурации IPFIX-балансировщика и выполнить его рестарт, без влияния на обрабатываемый DPI-трафик.
Управление
Установка:
yum install fast_ipfix_balancer
Модуль IPFIX-балансировщика рекомендуется устанавливать на тот же сервер, где установлен DPI.
Остановка и перезапуск:
ipfix-balancer-stop ipfix-balancer-restart
Просмотр логов:
journalctl -xe | grep IPFIXcol2 journalctl -f | grep IPFIXcol2
Определить, к какому CPU принадлежит процесс балансировки. CPU задается параметром IPFIX_xx_TASKSET
, описание в разделе Работа в CLI → Настройка.
ps -ax -o %cpu,psr,comm | grep ipfix
Работа в GUI
Добавление оборудования
Для работы с IPFIX-балансировщиком необходимо завести подходящее оборудование. Для этого нужно:
- Перейти в раздел Администратор → Оборудование;
- Нажать на + над таблицей оборудования;
- В появившемся окне выбрать тип оборудования — Сервер IPFIX-балансира;
- Заполнить остальные поля, сохранить оборудование.
Сценарий 1. Репликация
- В разделе Администратор → Конфигурация IPFIX-балансировщика выбрать сервер IPFIX и добавить ресивер (по нажатию на + над таблицей ресиверов);
В поле “Балансир” выбрать значение “All”.
Указать Тип порта, Субресиверы балансира, Тип субприемников балансира.
- Параметрам Тип порта и Тип субприемников балансира рекомендуется задавать одинаковое значение.
- Настроить остальные параметры ресивера. Их описание приведено в разделе Описание параметров.
В результате получим два одинаковых потока на два разных хоста.
Пример настроек ресивера для сценария репликации:
Сценарий 2. Балансировка
- В разделе Администратор → Конфигурация IPFIX-балансировщика выбрать сервер IPFIX и добавить ресивер (по нажатию на + над таблицей ресиверов);
В поле “Балансир” выбрать значение “RoundRobin”.
Указать Тип порта, Субресиверы балансира, Тип субприемников балансира.
Параметрам Тип порта и Тип субприемников балансира рекомендуется задавать одинаковое значение.- Настроить остальные параметры ресивера. Их описание приведено в разделе Описание параметров.
В результате получим равномерное распределение пакетов по всем хостам.
Пример настроек ресивера для сценария балансировки:
Сценарий 3. Режим записи
- В разделе Администратор → Конфигурация IPFIX-балансировщика выбрать сервер IPFIX и добавить ресивер (по нажатию на + над таблицей ресиверов);
В поле “Балансир” выбрать значение “Отключено”;
- Настроить остальные параметры ресивера. Их описание приведено в разделе Описание параметров.
В этом случае работает IPFIX ресивер, пишет данные в файл и может делать экспорт IPFIX на IP-адреса, указанные в поле “Экспорт”.
Пример настроек ресивера для сценария записи:
Работа в CLI
-
Описание параметров
Параметр | Описание | Возможные значения и формат записи | Примечание |
---|---|---|---|
Тип ресивера | Тип ресивера: Нетфлоу или Клистрим | Значения: - Нетфлоу - ресивер для получения данных Нетфлоу - Кликстрим - ресивер для получения данных Кликстрим | |
Тип порта | Тип протокола, по которому ресивер передает данные | Значения: - TCP - UDP | Рекомендуется использовать TCP |
Порт | Порт, через который ресивер слушает трафик | Значения по умолчанию: - 1500 для Нетфлоу - 1501 для Кликстрим Можно указать любой порт. Главное, чтобы он отличался для каждого потока | |
Ротация в минутах | Период обращения дампа приемника или период загрузки данных в БД | Значения по умолчанию: - 10 минут для Нетфлоу - 12 минут для Кликстрим Период поворота дампа для Кликстрим должен быть больше или равен тому же периоду для Нетфлоу. Когда дамп Нетфлоу оборачивается, посылается сигнал HUP для синхронизации потоков. | Не меняйте этот параметр без необходимости |
Ротация в секундах | Период обращения дампа приемника или период загрузки данных в БД | Если это значение включено, значение в минутах игнорируется. |
|
Ротация по флоу | Период обращения дампа приемника или период загрузки данных в БД | Работает одновременно с ротацией в минутах или секундах. |
|
Экспорт | Адреса ресиверов, куда экспортируются данные. | Формат: 10.0.0.2/9920/tcp,10.0.0.3/3440/udp | |
Идентификатор DPI | Добавляет в статистику ИД DPI. Для удобства просмотра статистики по определенному DPI | Значение по умолчанию: -1 Если значение равно -1 или не указано, то номер DPI определяется порядком получателя в списке. | |
Балансир | Тип балансировки | Значения: - Отключено — отключает балансировку, включает режим записи - RoundRobin — разделяет поток IPFIX - All — реплицирует поток IPFIX | |
Субресиверы балансира | Адреса субресиверов, на которые будут отправляться разделенные или реплицированные данные | Формат: 10.0.0.2/9920,10.0.0.3/3440 | |
Тип субприемников балансира | Тип протокола, по которому ресивер передает данные на субресиверы | Значения: - TCP - UDP | Рекомендуется использовать TCP |
Балансир авто | Вариант создания и запуска субресиверов | Значения: - Отключено — субресиверы нужно прописать вручную - Включено — субресиверы создаются и запускаются автоматически | Если QoE и IPFIX-балансировщик установлены на разных серверах, рекомендуется устанавливать значение “Отключено” |