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
)ではなく、どの権限が拒否されたか、またはパスワードなしのSudoを使用するようにNRPEdを変更します。
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
ファイル(まだ存在しない場合)。