Zabbix
Подключение Zabbix в качестве источника событий
Для подключения источника данных типа Zabbix, произведите конфигурацию со стороны Zabbix:
- Создайте группу пользователей с правами на чтение к тем узлам сети, данные о которых хотите направлять в Monq.
- Для создания перейдите в раздел Администрирование -> Группы пользователей и нажмите Создать группу, далее введите имя и выберите группы узлов сети во вкладке Права доступа.
- Создайте пользователя в созданной группе. Для этого перейдите в раздел Администрирование -> Пользователи и нажмите Создать пользователя, в открывшемся окне введите данные пользователя и выберите группу, в которую его необходимо добавить. Скопируйте псевдоним и пароль пользователя для дальнейшей настройки.
Далее перейдите на страницу Потока данных, созданного при помощи контент-пака "Zabbix Data Stream", и на вкладке Настройка заполните поля:
apiUri
- должен содержать URL в форматеhttps://zabbix.example.com/api_jsonrpc.php
login
- логин Zabbixpassword
- пароль Zabbix
При необходимости можно отключить проверку достоверности TLS сертификата веб-сервера Zabbix. Для этого активируйте соответствующий переключатель insecureMode в настройках Потока данных.
и нажмите Сохранить.
При необходимости произведите настройку интервалов запуска для Заданий:
- Zabbix - Events Data Flow (по умолчанию - 10 секунд)
- Zabbix - Api Connection Check (по умолчанию - 30 секунд)
- Zabbix - Version Check (по умолчанию - 5 минут)
Нажмите Запустить в правой верхней области страницы для включения Потока данных.
В поток данных Monq будут поступать только вновь сгенерированные данные из Zabbix. Исторические данные загружены не будут.
В случае разрыва соединения, предусмотрен механизм загрузки всех событий, произошедших за период отсутствия связи.
Настройка Zabbix для отправки событий в Monq (webhook)
Конфигурация производится на стороне Zabbix. Monq в данном случае является принимающей стороной.
- Добавьте новый Поток данных и перейдите на страницу его настройки
- Скопируйте API-ключ – он понадобится при настройке Zabbix
- Перейдите в Zabbix
- Настройте отправку сообщений из источника данных (в данном случае – Zabbix):
-
В веб-интерфейсе Zabbix 6.0 перейдите в Администрирование > Способы оповещений и создайте новый тип оповещения.
Введите имя, выберите тип Webhook.
Заполните таблицу Параметры – содержимое JSON-файла, который будет направлен в Monq:EventID: {EVENT.ID}
EventName: {EVENT.NAME}
EventSeverity: {EVENT.SEVERITY}
HostName: {HOST.NAME}
TriggerStatus: {TRIGGER.STATUS}Полный список доступных макросов для передачи можно найти в документации Zabbix.
-
В поле скрипт скопируйте код на языке JavaScript, формирующий и отправляющий POST-запрос в API вашего пространства Monq:
💡 Скрипт актуален для версии Zabbix 5.4 и выше
var request = new HttpRequest();
params = JSON.parse(value);
request.addHeader('Content-Type: application/json');
response = request.post('https://{GLOBAL_DOMAIN}/api/public/cl/v1/stream-data?streamKey={API-KEY}', JSON.stringify(params));
return 'OK';{GLOBAL_DOMAIN}
– адрес вашего пространства Monq, например, sm.monq.cloud.{API-KEY}
– API-ключ.
-
- Сохраните новый способ оповещения. В разделе Настройка -> Действия настройте реагирование на события Zabbix и в качестве операции выберите созданный метод оповещения.
Используя данный пример, вы можете реализовать приём данных из любого источника, поддерживающего Webhook - справка.
Пример настройки Zabbix для отправки метрик в Monq
Используя данный пример, вы можете реализовать приём метрических рядов из Zabbix.
Конфигурация производится на стороне Zabbix. Monq в данном случае является принимающей стороной.
Создайте новый поток данных или используйте существующий в Monq. Из этого потока данных потребуется только API-ключ.
Описание формата принимаемых данных в Monq.
Поддерживается в версиях Zabbix 6.4 и выше.
В веб интерфейсе Zabbix перейдите в раздел "Администрирование" - "Общие" - "Коннекторы"
и сконфигурируйте коннектор следующим образом:
URL:
https://<MONQ-FQDN>/api/public/mcs/v1/metrics-collector/zabbix/stream-ndjson?streamKey=<API-ключ>
<MONQ-FQDN>
замените на адрес своей инсталяции<API-ключ>
замените на API-ключ нужного потока данных
⚠️ Необходимо, чтобы в конфигурационном файле Zabbix Server был включен хотя бы один экземпляр
StartConnectors
(документация Zabbix).