у нас уже работает система мониторинга nagios, и я следил за нашими хранилищами данных vmware, используя следующие плагин Я установил vmware cli и протестировал без проблем:
[root@nrpe-relay ~]# /usr/lib64/nagios/plugins/check_vmfs.sh -C /usr/lib64/nagios/plugins/vmware_esxi_conf.txt -S 192.168.20.241 -V /vmfs/volumes/LocalSlot45S6 -w 75 -c 90 -u Gb
WARNING - /vmfs/volumes/LocalSlot45S6 - total: 931.25 Gb - used: 800.95 Gb (86%)- free: 130.29 Gb (14%) | /vmfs/volumes/LocalSlot45S6=800.95Gb;698.43;838.12;;931.25
[root@nrpe-relay ~]# ps auxww|grep nrpe
nagios 1463 0.0 0.1 41468 1364 ? Ss 21:24 0:00 nrpe -c /etc/nagios/nrpe.cfg -d
root 2261 0.0 0.0 103304 876 pts/0 S+ 22:00 0:00 grep nrpe
Однако я не получаю такое же значение, когда команда выполняется удаленно:
[root@nagios nagios]# /usr/lib64/nagios/plugins/check_nrpe -H <hostname> -c 'check_datastore_LocalSlot45S6'
CRITICAL -
Это то, что у меня есть в моем файле cfg
command[check_datastore_LocalSlot45S6]=/usr/lib64/nagios/plugins/check_vmfs.sh -C /usr/lib64/nagios/plugins/vmware_esxi_conf.txt -S 192.168.20.241 -V /vmfs/volumes/LocalSlot45S6 -w 75 -c 90 -u Gb
и мой сервер cfg:
define service{
use generic-service
host_name <hostname>
service_description datastore-LocalSlot45S6
check_command check_nrpe!check_datastore_LocalSlot45S6
}
Вот что я вижу в / var / log / message:
nagios nagios: EXTERNAL COMMAND: SCHEDULE_FORCED_SVC_CHECK;<hostname>;datastore-LocalSlot1-2S3;1441798845
ВОПРОС: Кто-нибудь знает, в чем проблема? или как я могу отследить эту проблему?
Ваша проблема в том, что демон NRPE работает от имени пользователя nagios
, и у этого пользователя нет разрешения на выполнение указанной команды.
Ты будешь либо должны открыть разрешения, чтобы пользователь мог его запустить (кстати, ваш последний комментарий предполагает, что вы не уделяете полного внимания выходным данным; это файл /usr/lib64/nagios/plugins/check_vmfs.err
на который было отказано в разрешении, не check_vmfs.sh
), или измените NRPEd, чтобы использовать sudo без пароля, например
command[check_datastore_LocalSlot45S6]=sudo /usr/lib64/nagios/plugins/check_vmfs.sh -C /usr/lib64/nagios/plugins/vmware_esxi_conf.txt -S 192.168.20.241 -V /vmfs/volumes/LocalSlot45S6 -w 75 -c 90 -u Gb
в сочетании с sudoers
запись похожа на
nagios ALL=(root) NOPASSWD: /usr/lib64/nagios/plugins/check_vmfs.sh
Если вы выберете второй маршрут, вам также потребуется
Defaults !requiretty
в твоем sudoers
файл, если его еще нет.