Настройка интеграции с Zabbix
Zabbix – система мониторинга для IT-инфраструктуры. Вы можете настроить интеграцию Zabbix с СХД RAIDIX, чтобы отслеживать состояние системы.
Для интеграции с Zabbix вам доступны два типа шаблонов:
- SNMP
- REST API
Рекомендуем использовать оба шаблона одновременно: каждый из них содержит свой набор метрик, дополняющих друг друга.
Инструкции в этой главе подразумевают, что Zabbix установлен и настроен в соответствии с официальной документацией Zabbix.
Интеграция через шаблон SNMP
Чтобы настроить интеграцию с Zabbix:
- На СХД настройте передачу данных по протоколу SNMP.
-
В интерфейсе управления Zabbix:
: Подробную информацию по каждой настройке см. в официальной документации Zabbix.- При необходимости, настройте Zabbix-прокси.
- Настройте обработку SNMP Traps через Perl- или bash-скрипты. SNMPTT на данный момент не поддерживается.
- Импортируйте шаблон. Шаблон должен соответствовать версии Zabbix.
-
Создайте «узел сети» для каждого узла СХД. При создании узла сети:
- Настройте SNMP-интерфейс. Ключ SNMP Community должен совпадать с указанным в конфигурации службы SNMP на СХД.
- Если мониторинг осуществляется через Zabbix-прокси, укажите имя Zabbix-прокси.
- Назначьте импортированный шаблон для каждого узла сети.
Чтобы настроить приём и обработку SNMP Traps:
- Установите
snmptrapd
(SNMP Trap Daemon). - Настройте приём SNMP Traps.
При использовании Bash- или Perl-скриптов дополнительных настроек не требуется.
Интеграция через шаблон REST API
Настройка интеграции выполняется в два этапа: создание на стороне СХД пользователя, учётные данные которого будут использоваться токеном доступа Zabbix, и настройка доступа в интерфейсе управления Zabbix.
На стороне СХД:
-
Создайте пользователя с правами администратора:
$ rdcli system user create -l <zabbix_adm> -p <password> -r administrators
-
Задайте продолжительность сессии для пользователя:
$ rdcli system settings session modify --users <zabbix_adm> --lifetime <новое значение>
По умолчанию продолжительность сессии для всех пользователей составляет 600 секунд, максимально возможное значение — 2678400 секунд (31 день).
В интерфейсе управления Zabbix:
- Импортируйте шаблон.
- Создайте «узел сети» для каждого узла СХД.
-
Для узла сети:
- Назначьте импортированный шаблон.
- Установите значение для макроса
{$RAIDIX_IP}
— IP-адрес менеджмент-интерфейса целевого узла RAIDIX. -
Установите значение для макроса
{$COOKIEAUTH}
— токен доступа.Токен доступа можно получить с помощью POST-эндпоинта
http://<ip:port>/api/auth
с телом вида:{"login": "username", "password": "password"}
. Например:curl -k -i -X POST -H "Content-Type: application/json" -d '{"login": "<zabbix_adm>", "password": "<password>"}' https://<node_ip>/api/auth | grep -oP 'connect.sid=([^;]+)'
где
<zabbix_adm>
– логин пользователя, созданного для доступа Zabbix;<password>
– пароль пользователя, созданного для доступа Zabbix;<node_ip>
– IP-адрес менеджмент-интерфейса узла СХД.
Настройка интервалов сбора данных
Чтобы настроить интервал сбора данных, в интерфейсе Zabbix:
- Перейдите в раздел
Raidix
.
и выберите шаблон - В карточке шаблона откройте вкладку Макросы.
-
Задайте значения переменных:
INV_POLL_INTERVAL
- Временной интервал сбора данных о компонентах СХД (пример: имя вендора).
KEEP_LOST_RES
- Временной интервал хранения метрик для компонентов, которые больше нельзя обнаружить.
LLD_POLL_INTERVAL
- Временной интервал поиска новых компонентов СХД.
PERF_POLL_INTERVAL
- Временной интервал сбора показателей производительности СХД (пример: нагрузка на CPU).