vision_dashboard_engine

vision_dashboard_engine собирает модель здоровья ПАК: обрабатывает YAML-шаблоны, запрашивает данные у VictoriaMetrics с помощью PromQL-запросов, хранит собранные модели в кеше и отдаёт их vision_core по HTTP.

Способ установки

vision_dashboard_engine устанавливается в составе сервера подсистемы мониторинга.

Файлы конфигурации

Настройки vision_dashboard_engine хранятся в следующих файлах:

  • /etc/systemd/system/vision_dashboard_engine.service — служба systemd;

  • /opt/skala-r/etc/vision/server/vision_dashboard_engine/dashboard_engine.yml — конфигурационный файл компонента (лимиты сборки и параметры BasicAuth);

  • /opt/skala-r/etc/vision/server/vision_dashboard_engine/environment.env — параметры запуска;

  • /opt/skala-r/etc/vision/server/vision_dashboard_engine/web.yml — веб-конфигурация, в том числе параметры TLS и аутентификации для доступа к компоненту по HTTPS.

Конфигурационный файл

По умолчанию vision_dashboard_engine загружает свои основные настройки из файла /opt/skala-r/etc/vision/server/vision_dashboard_engine/dashboard_engine.yml. Чтобы использовать другой файл настроек, укажите путь к нему в значении аргумента --config.file.

Секция limits ограничивает размер шаблона и объём данных при сборке модели здоровья:

  • max_entities — максимальное число сущностей на одну панель;

  • max_expanded_panels — максимальное число панелей после раскрытия repeat_for;

  • max_panel_templates — максимальное число записей в panels[] до раскрытия repeat_for;

  • max_status_chunks — размер пачки сущностей при выполнении status_query;

  • max_vm_queries — максимальное число запросов к VictoriaMetrics за одну сборку;

  • max_yaml_size_mb — максимальный размер текста шаблона в мегабайтах.

Секция internal_auth содержит настройки аутентификации BasicAuth на прикладных маршрутах:

  • enabled — включение проверки BasicAuth на маршрутах /api/v1/*;

  • password — пароль учётной записи vision_core, хранится в Ansible Vault;

  • username — имя пользователя учётной записи vision_core.

Прикладные маршруты — это API компонента /api/v1/*, которым пользуется vision_core; служебные маршруты /metrics и / к ним не относятся.

Сеть

По умолчанию vision_dashboard_engine слушает указанные в таблице порт и IP-адрес.

Адрес Порт Протокол

localhost

9444

TCP/HTTP

Параметры запуска

--audit.fileMaxAge

Продолжительность хранения файлов аудита в днях.

Значение по умолчанию: 7.

--audit.fileMaxSize

Максимальный размер одного файла аудита в МБ.

Значение по умолчанию: 100.

--audit.filePath

Путь к файлу для сохранения журнала аудита.

Пустое значение отключает аудит.
--common.scrape-timeout

Длительность в секундах периода ожидания при запросе метрик.

Значение по умолчанию: 10.

--common.timeout

Внутренний период ожидания выполнения операций в секундах.

Значение по умолчанию: 30.

--component.shutdown-timeout

Длительность периода ожидания при плавном завершении работы компонента.

Значение по умолчанию: 15s (15 секунд).

--config.file

Путь к конфигурационному файлу.

Значение по умолчанию: /opt/skala-r/etc/vision/server/vision_dashboard_engine/dashboard_engine.yml.

--logging.fileMaxAge

Максимальное число дней логирования в одном файле. Используется при --logging.output=file.

Значение по умолчанию: 31.

--logging.fileMaxSize

Максимальный размер одного файла логирования в мегабайтах. Используется при --logging.output=file.

Значение по умолчанию: 100.

--logging.filePath

Путь к файлу записи логов. Используется при --logging.output=file.

Значение по умолчанию: /opt/skala-r/var/log/vision/vision_dashboard_engine/audit.log.

--logging.flags

Вывод установленных флагов при запуске.

--logging.flags-table

Вывод флагов компонента в виде таблицы.

Значение по умолчанию: false.

--logging.level

Уровень логирования.

Возможные значения в порядке уменьшения подробности вывода:

  • DEBUG;

  • INFO;

  • WARN;

  • ERROR;

  • CRITICAL.

Значение по умолчанию: INFO.

--logging.output

Место логирования.

Возможные значения:

  • file;

  • stdout;

  • stderr.

Значение по умолчанию: file.

--version

Вывод версии компонента.

--victoria.endpoint

URL VictoriaMetrics со схемой и префиксом маршрута.

Значение по умолчанию: https://127.0.0.1:8428/vision/victoriametrics.

--victoria.password

Пароль учётной записи BasicAuth для подключения к VictoriaMetrics.

Значение хранится в Ansible Vault.
--victoria.query-concurrency

Максимальное число параллельных запросов к VictoriaMetrics.

Значение по умолчанию: 50.

--victoria.request-timeout

Период ожидания запроса к VictoriaMetrics.

Значение по умолчанию: 15s (15 секунд).

--victoria.tls-ca-file

Путь к файлу CA-сертификата для подключения к VictoriaMetrics по mTLS.

--victoria.tls-cert-file

Путь к файлу клиентского сертификата для подключения к VictoriaMetrics по mTLS.

--victoria.tls-key-file

Путь к файлу приватного ключа клиентского сертификата для подключения к VictoriaMetrics по mTLS.

--victoria.username

Имя пользователя BasicAuth для подключения к VictoriaMetrics.

Значение по умолчанию: vision.

--victoria.verify

Проверка TLS-сертификатов VictoriaMetrics. Значение false отключает проверку.

Значение по умолчанию: false.

--vision-core.timeout

Период ожидания HTTP-запросов к vision_core.

Значение по умолчанию: 10s (10 секунд).

--vision-core.url

URL vision_core, у которого компонент запрашивает список активных шаблонов.

Значение по умолчанию: https://127.0.0.1:8088.

--web.config.file

Путь к файлу веб-конфигурации компонента.

--web.listen-address

Адрес и порт, которые слушает компонент.

Значение по умолчанию: localhost:9444.

--web.routes-table

Вывод маршрутов в виде таблицы.

Значение по умолчанию: false.

--web.shutdown-timeout

Период ожидания при плавном завершении работы HTTP-сервера.

Значение по умолчанию: 15s (15 секунд).

--web.telemetry-path

Путь для запроса метрик в формате Prometheus.

Значение по умолчанию: /metrics.

--worker.enabled

Запуск фонового воркера, периодически пересобирающего кеш моделей здоровья. При значении false модель здоровья собирается по запросу.

Значение по умолчанию: true.

--worker.interval

Период опроса обработчика.

Значение по умолчанию: 30s (30 секунд).

--worker.max-parallel

Максимальное число одновременно собираемых моделей здоровья.

Значение по умолчанию: 5.