Настраиваем всё по шагам для Zabbix Server 7.0.
1️⃣ Идём в веб интерфейсе в раздел Оповещения ⇨ Скрипты и добавляем новый скрипт. Я его назвал Windows Shutdown. У него следующие параметры:
- Область: Действие вручную над узлом
- Тип: Скрипт
- Выполнение на: Zabbix Agent
- Команды:
shutdown /s- Описание: System shutdown
- Группы узлов сети: Выбранные, Windows (у меня все виндовые машины в отдельной группе)
- Текст подтверждения: Уверен, что хочешь потушить систему?
Сохраняем.
2️⃣ Идём на целевую систему, где установлен Zabbix agent 2. Для первой версии вроде бы настройки не поменяются, но я не проверял. Последнее время ставлю 2-й агент. Агент должен работать в пассивном режиме, то есть быть способен принимать команды от сервера.
Добавляем в конфиг агента два параметра:
AllowKey=system.run[shutdown /s]Plugins.SystemRun.LogRemoteCommands=1Вторую команду не обязательно, но я предпочитаю логировать выполнение внешних команд. Перезапускаем агента.
Вот и вся настройка. Теперь открываем список хостов: Мониторинг ⇨ Узлы сети. Выбираем любой хост из группы Windows, для которой назначили добавленный скрипт, и выполняем на нём команду. Система завершит работу. Запись об этом ручном действии останется в разделе Отчёты ⇨ Журнал аудита. Нужно выбрать действие - Выполнить, ресурс - Скрипт.
Люди спорят, что лучше, Zabbix или Prometheus. Они разные. Как вы в Проме так же просто настроите подобную возможность? Причём её ещё можно и по пользователям разграничить, и по группам хостов, и аудит ко всему этому. И настраивается всё за 10 минут. Потом человек заходит в веб интерфейс и мышкой запускает готовый большой скрипт или выполняет одиночную команду. Туда ведь всё, что угодно можно засунуть: сброс кэшей, перезапуск сервиса, запуск какой-нибудь проверки. Не всё имеет смысл запускать автоматически, как реакцию на триггер. Какие-то вещи можно поставить на ручной контроль.
#zabbix