Мониторинг статуса демона Linux в Zabbix
Zabbix - это свободное программное обеспечение для мониторинга статусов разнообразных сервисов компьютерной сети, серверов и сетевого оборудования. Разработано Алексеем Владышевым и активно развивается компанией Zabbix SIA.
Включаем опцию Удаленные команды
в Zabbix Agent и перезапускаем его
1
2
3
$ sudo nano /etc/zabbix/zabbix_agentd.conf
EnableRemoteCommands=1
$ sudo service zabbix-agent restart
Создаем новый элемент данных, для этого в web-интерфейсе переходим:
1
Настройки - Узлы сети - выбираем нужный узел - Элементы данных
и создаем новый элемент данных
- Имя:
srv-01:service:Apache:StatusCheck
- Ключ:
system.run["service httpd status | grep -v grep | grep 'httpd (pid *.*) is running...' | wc -l"]
- Тип Информации:
Числовой (целое положительное)
- Интервал обновления:
60 сек
Далее создаем триггер
- Имя:
srv-01_Apache
- Важность:
Высокая
- Выражение:
{srv-01:system.run["service httpd status | grep -v grep | grep 'httpd (pid *.*) is running...' | wc -l"].last(0)}=0
- Описание:
Если нет процесса httpd, высылается уведомление
В данной статье мониторинг статуса Apache был использован лишь в качестве примера.
Данный способ мониторинга подходит в тех случаях, когда нужно отслеживать самописные сервисы, которые не удается мониторить стандартными средствами Zabbix
UPD 2018.07.25
В случае, если Zabbix не получает статус демона, хотя через терминал от пользователя root
статус возвращается, то проблема в том, что у Zabbix’а нет прав доступа к каталогу, где лежит исполняемый файл. Проверить это можно поменяв пользователя на zabbix (su zabbix
) и выполнив команду service %daemon% status