Это старая версия документа!
Мониторинг и логи fastDPI
Логи системы представлены в виде текстовых файлов, которые располагаются в директории /var/log/dpi для модулей DPI и PCRF. Типы сообщений в логе:
- [CRITICAL] – критичная ошибка, работа системы невозможна без устранения неисправности
- [WARNING] – предупреждение, работа системы не останавливается, но стоит устранить данную неисправность
- [TRACE] – сообщения при включении диагностического режима трассировки
- [INFO] – уведомление о действиях системы
- [ERROR] – ошибка при подключении сервисов и полисингов, неправильная конфигурация
Процесс FastDPI по умолчанию осуществляет журналирование всех действий системы в следующие файлы логирования отладки и статистики:
- /var/log/dpi/fastdpi_slave*.log - лог процессов обработки трафика
- /var/log/dpi/fastdpi_stat.log - лог статистики обработки трафика
- /var/log/dpi/fastdpi_alert.log - лог общих функций fastDPI
Примечание: Под каждый обработчик создается свой fastdpi_slave лог, остальные лог файлы создаются в единственном экземпляре.
Cчетчики по блокировкам, которые сохраняются в лог статистики
Ротация лог файлов
Ротация файлов обеспечивает ежедневное резервное копирование суточного лога. По умолчанию этот процесс осуществляется в часы с наименьшей нагрузки на систему. Глубина хранения логов определяется в конфигурации /etc/logrotate.d/fastdpi параметр maxage, значение указывается в сутках.
Для просмотра статистики через терминал
flow
- IPv4/IPv6
- тип протокола: 0 - IPv4, 1 - IPv6
- всего выделено записей
- очередь с коротким временем жизни:
- занято записей
- готово к повторному использованию
- разница 3.1 - 3.2 (количество активных flow)
- тоже для долгоиграющей очереди
- тоже суммарно
Пример:
fdpi_ctrl stat --flow IPv4 0 6784000 834 814 20 0 0 0 834 814 20
proto
- внутренний индекс статистики по протоколу
- имя протокола
- номер порта для протокола
направление subs -→ inet
- кол-во пакетов
- объем в байтах ip total
- дропнуто пакетов
- дропнуто байт
направление inet -→ subs кол-во пакетов и т.д.
Пример:
fdpi_ctrl stat --proto Autodetected fastdpi params : dev='em1', port=29001 connecting 94.140.198.68:29001 ... ================================ 94 'ntp' 123 0 0 0 0 91 23569 0 0 4081 'sip' 5060 0 0 0 0 2479 1170579 0 0 5812 'Bittorrent' 49165 0 0 0 0 0 0 3 495 5866 'ICMP' 65025 0 0 0 0 225 18900 0 0 5871 'TCP Unknown' 65030 0 0 0 0 41034 3448836 0 0 5880 'UDP Unknown' 65041 3900 4227600 0 0 277 24825 0 0 6000 'ARP' 65282 30 2520 0 0 30 2520 0 0 6056 'CHAMELEON' 49236 0 0 0 0 589 72475 0 0
Мониторинг через SNMP агент (Zabbix-agent)
Текущая и финальная поддерживаемая версия агента и сервера — 6.0, следует использовать Zabbix agent 1. Для более новых версий Zabbix мониторинг будет осуществляется посредством SNMP.
Настройка агента
- Установить Zabbix agent 1 на сервер DPI согласно инструкции на сайте Zabbix.
В первом шаге выбрать следующие значения:- Пакеты Zabbix
- Версия Zabbix: 6.0+
- Дистрибутив ОС: CentOS
- Версия ОС: 8 STREAM
- Компонент Zabbix: AGENT
- Отредактировать конфигурационный файл
/etc/zabbix/zabbix_agentd.conf
: изменить параметрыServer=
иServerActive=
на ваш адрес сервера,hostname=
на hostname сервера. - Изменить контекст файла
/var/log/dpi/fastdpi_stat.log
:chcon unconfined_u:object_r:zabbix_log_t:s0 /var/log/dpi/fastdpi_stat.log
- Открыть порты tcp/udp 10050 и 10051 в firewall
- Загрузить файл ssg_userparams.conf в директорию
/etc/zabbix/zabbix_agent.d/
- Отредактировать файл
ssg_userparams.conf
заменив номер интерфейса вUserParameter
02-00.0
нужно заменить на названия интерфейсов вашего сервера!
Название должно совпадать с конфигом DPI. Если у вас используется более 2 интерфейсов, необходимо добавить строчку по аналогии с существующими параметрами.UserParameter=dpi.02-00.0.drops,tac /var/log/dpi/fastdpi_stat.log | sed /'IF 02-00.0'/q | tac | sed -e 1,/'Actual Stats'/d | sed '6!D' | awk '{print $1}' | sed 's/^.//'
- Сделать рестарт агента:
systemctl restart Zabbix-agent
Настройка сервера
- Установить и настроить Zabbix сервера согласно инструкции на официальном сайте.
- Добавить шаблон zbx_export_templates.xml
1) Перейти в раздел Configuration
2) Раздел Templates
3) Нажать "Import"
4) Импортировать файл шаблона
5) Сохранить изменения - Добавить сервер DPI в качестве хоста
1) Перейти в раздел Monitoring
2) Раздел Hosts
3) Нажать "Create host" (правый верхний угол)
4) Задать необходимые параметры, имя хоста, группу и добавленный ранее шаблон
5) Сохранить изменения
- Отредактировать шаблон: изменить названия интерфейсов и ключей так, чтобы они соответствовали
UserParameter
.
Мониторинг распределение трафика по классам
СКАТ позволяет вывести на мониторинг распределение трафика по классам.
1. Включите приоритизацию трафика. Для примера будем использовать следующие правила приоритизации:
dns cs0 http cs0 https cs0 Bittorrent cs7 ICMP cs0 TCP Unknown cs7 GOOGLEVIDEO cs1 default cs2
2.В конфигурации /etc/dpi/fastdpi.conf установите параметр:
dbg_log_mask=0x4
3.Включите полисинг общего канала (в качестве примера приведен полисинг с ограничением на всю ширину канала):
htb_inbound_root=rate 1300mbit htb_inbound_class0=rate 8bit ceil 1300mbit htb_inbound_class1=rate 8bit ceil 1300mbit htb_inbound_class2=rate 8bit ceil 1300mbit htb_inbound_class3=rate 8bit ceil 1300mbit htb_inbound_class4=rate 8bit ceil 1300mbit htb_inbound_class5=rate 8bit ceil 1300mbit htb_inbound_class6=rate 8bit ceil 1300mbit htb_inbound_class7=rate 8bit ceil 1300mbit htb_root=rate 1300mbit htb_class0=rate 8bit ceil 1300mbit htb_class1=rate 8bit ceil 1300mbit htb_class2=rate 8bit ceil 1300mbit htb_class3=rate 8bit ceil 1300mbit htb_class4=rate 8bit ceil 1300mbit htb_class5=rate 8bit ceil 1300mbit htb_class6=rate 8bit ceil 1300mbit htb_class7=rate 8bit ceil 1300mbit
4. Обновите конфигурацию:
service fastdpi reload
service fastdpi restart
5. Используйте следующие пользовательские параметры для zabbix агента, установленного на СКАТ: skat_userparams.conf
6. На сервер Zabbix импортируйте шаблон, как описано в разделе "Мониторинг через SNMP агент": zbx_template_dpi_5.0.xml.