Доброго дня читатель. Сегодня хотел поделиться с тобой решением по мониторингу Zerto. Думаю не стоит объяснять что такое Zerto, ведь если его нужно мониторить, значит оно уже есть и работает.
По запросу мониторинг zerto легко гуглится шаблон на share.zabbix.com которому без малого 5 лет. И возможно что то с того времени изменилось и мне пришлось пойти на некоторые ухищрения чтобы заставить его работать. Итак начнем. Для начала опишу что оно умеет: 1. Дискавер VPG group (Создаются элементы данных с названием созданных VPG Group) 2. Отображение текущего состояние VPG Group (статус)
3. Размер резервируемых данных (размеры VPG)
Итак, для начала скачиваем архив с шаблоном и остальным стаффом по ссылке выше и импортируем шаблон в zabbix
В директорию из которой zabbix агент инклудит дополнительные файлы конфигурации создаем zerto.conf и приводим к такому виду:
UserParameter=zerto[*],%SystemRoot%system32WindowsPowerShellv1.0powershell.exe -nologo -command "& C:zabbixbinZertoMonitoringAPI.ps1" "$1" "$2"
Далее в директорию .bin кладем ZertoMonitoringAPI.ps1 в котором необходимо указать fqdn имя или IP адрес хоста с машиной на которой крутится zerto.
После чего перезапускаем zabbix-agent и пробуем получить метрики с zabbix сервера
zabbix_get -s zerto_ip_address -k zerto["Discovery"]
Но в ответ powershell шлет нам большой привет в духе
Invoke-WebRequest : Internet Explorer ������㯭� �� Internet Explorer UseBasicParsing � �����
Сначала было непонятно, в чем причина, тем более что если запустить на локальной машине из cmd
%SystemRoot%system32WindowsPowerShellv1.0powershell.exe -nologo -command "& C:zabbixbinZertoMonitoringAPI.ps1" Discovery
то все отлично отрабатывает.
Проблема оказалось в том, что сбор метрик идет через http и с помощью Internet Explorer, а при первом запуске он выдает сообщение об использовании политик приватности и т.д. Поэтому решено было с помощью запуска службы от реального пользователя который уже запускал IE и ответил на вопросы.
После этого все отлично заработало.