Модуль аналитики
Модуль аналитики – программный продукт, который позволяет обнаруживать всплески значений измеряемых метрик и прогнозировать значения метрик через указанный временной интервал. Каждое правило формирования данных состоит из условий (conditions), при выполнении которых к данным применяются действия (actions).
Запуск модуля аналитики в Центральном Пульте, установленном через ISO-образ
По умолчанию модуль аналитики, используемый для прогнозирования и определения всплесков, не включен в ISO-образ Центрального Пульта. Чтобы установить модуль аналитики, необходимо:
-
Скачать скрипт analytics-create-and-run.sh и разместить его в файловой системе на виртуальной машине, где установлен ISO-образ Центрального Пульта.
-
Запустить скрипт командой
$ sudo ANALYTICS_BRANCH=x.y.z ./analytics-create-and-run.sh
x.y.z - версия модуля аналитики, совместимая с вашей версией Центрального Пульта. Проверить, что контейнер saymon-analytics запустился и работает, можно с помощью команды
$ docker ps -a
Подключение модуля аналитики к Центральному Пульту в конфигурационных файлах
Чтобы подключить модуль аналитики, потребуется внести изменения в конфигурацию Центрального Пульта:
-
В раздел Server конфигурационного файла сервера
/etc/saymon/saymon-server.conf
добавить следующие параметры:"server": { "analytics_enabled": true, # включает аналитику метрик в процесс обработки данных в системе "analytics_processes": 2 # количество логических ядер, выделяемых для обработки аналитики (по умолчанию используются все доступные ядра системы), ... }
-
В конфигурационном файле клиента
/etc/saymon/saymon-client.yaml
установить параметру enableAnalytics значение true:enableAnalytics: true
-
Перезапустить сервер Центрального Пульта:
$ service saymon-server restart
Мониторинг работы модуля аналитики
Чтобы мониторить работу модуля аналитики, можно использовать логи контейнера saymon-analytics. Для этого необходимо:
-
Подключиться к контейнеру командой
$ docker exec -ti saymon-analytics bash
-
Открыть файл логов модуля командой
$ tail -f /opt/analytics/analytics.log
В логах модуля содержится информация о
-
настройках, с которыми запущен модуль (слушающий сокет и количество задействованных в пуле обработчика процессов),
-
обрабатываемых метриках,
-
результатах обработки метрик,
-
ошибках, возникающих в процессе работы модуля.
Производительность модуля аналитики
Аналитика по каждому из объектов выполняется в отдельном потоке вычислений с использованием одного логического ядра системы. Все значения метрик по одному и тому же объекту обрабатываются последовательно, что позволяет обеспечивать последовательное обновление прогнозной модели в соответствии с порядком поступления данных. Как правило, производительность современных процессоров позволяет обрабатывать каждое поступающее значение в реальном времени с максимальной частотой в одно значение метрики в секунду. Однако на перегретых или перегруженных машинах производительность ядер может падать и приводить к накоплению задач для модуля аналитики и увеличению времени реакции системы на новые данные. Для увеличения быстродействия системы в задачах с высокой частотой получения метрик рекомендуется выделять по одному логическому ядру на каждый объект с аналитикой. При наличии дополнительных ядер система также может использовать их для препроцессинга задач аналитики, поскольку блокировка на прогнозной модели занимает лишь часть от общего времени обработки задачи по аналитике.