alertcollector

Сервис сбора оповещений в служебную БД. Может быть развёрнут на одном узле или в кластерной конфигурации (рекомендуется).

При развёртывании в кластерной конфигурации alertcollector хранит свои настройки в etcd. Узел-лидер кластера создаёт в etcd так называемые lease-объекты с ограниченным временем жизни. etcd периодически проверяет состояние таких объектов и удаляет те, время жизни которых истекло.

Пока лидер работает нормально, он автоматически продлевает время жизни lease-объектов. Остальные узлы кластера периодически проверяют наличие lease-объектов в etcd.

Как только лидер выходит из строя, lease-объекты не получают продления времени жизни, и через некоторое время etcd удаляет их. Обнаружив отсутствие lease-объектов, оставшиеся в строю узлы пытаются захватить лидерство, создав собственные lease-объекты. Узел, успевший сделать это первым, становится новым лидером.

Способ установки: Дистрибутив Визиона.

Расположение журналов:

  • системный журнал;

  • /opt/skala-r/var/log/vision/server/vision_alertcollector/vision_alertcollector.log.

Учётная запись ОС для запуска сервиса: vision.

Используемые учётные записи компонентов Визиона: служебная БД PostgreSQL.

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

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

  • /etc/systemd/system/vision_alertcollector.service — юнит systemd;

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

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

Сеть

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

Таблица 1. Отказоустойчивая конфигурация
Адрес Порт Протокол Клиенты

0.0.0.0

10111

TCP/HTTPS

vmalert_st

vmalert_vl

Таблица 2. Одноузловая конфигурация
Адрес Порт Протокол Клиенты

127.0.0.1

10111

TCP/HTTPS

vmalert_st

vmalert_vl

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

--audit.filePath

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

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

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

--common.check-period

Длительность периода между проверками статусов оповещений.

--common.closed-alerts-ttl

Длительность периода, по истечении которого закрытое оповещение удаляется.

--common.cluster-mode

Запуск компонента кластерном режиме.

--common.config.file

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

--common.db-timeout

Ограничение по времени на подключение к БД.

--common.leader-timeout

Периодичность подтверждения лидерства.

Через указанный период времени AlertManager, работающий в кластерном режиме, обновляет запись в etcd, указывающую на то, какой из узлов является мастером.

--core.config

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

--core.python

Путь к исполняемому файлу интерпретатора Python, используемого для запуска компонента.

--core.vault

Путь к файлу хранилища Ansible Vault.

--logging.filePath

Путь к файлу записи логов.

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

--logging.output

Тип логирования.

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

  • file;

  • stdout;

  • stderr.

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

--web.config.file

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

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

--web.firing-path

Путь к конечной точке доступа API для отправки уведомлений от vmalert.

Значение по умолчанию: /api/v2/alerts.

--web.listen-address

Адрес для прослушивания входящих HTTP-запросов.

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