我对此有点困惑 - 我在一台机器上设置了 Nagios3 的服务器进程(塔拉) 和 NPRE 针对另外两个 (美狄亚和伊亚纳拉),并认为它设置正确。由于各种令人沮丧的原因,我不得不重建美狄亚来自磁盘映像,因此 NPRE 不再安装。
想象一下,几天后,Nagios 不仅继续愉快地报告我的服务器已启动,而且还报告了一系列性能指标,如总进程数等,我感到多么惊讶。事实证明,我很确定 Nagios 实例实际上一直在本地主机上报告美狄亚和伊亚纳拉一直。
这是来自 medea.conf 的初始块 + 第一个服务块:
define host{
use generic-host ; Name of host template to use
host_name medea.phyre.im
alias Medea
address 97.107.128.112
}
define service{
use generic-service ; Name of service template to use
host_name medea.phyre.im
service_description Disk Space
check_command check_all_disks!20%!10%
}
奇怪的是,如果我指定不同的 IP,Nagios 会报告该机器已关闭。因此,请执行以下操作之一:
- Nagios 正在使用黑色魔法与美狄亚尽管 NPRE 服务完全缺失
- 由于某种原因,Nagios 正在报告本地主机
...如果我指定 197.107.128.112 作为目标 IP,它就会停止执行这些操作。
我的问题基本上是这样的:这到底是什么?
答案1
check_all_disks
可能使用check_disk
检查本地挂载文件系统的已用空间量的插件。
你应该使用类似的东西:
check_nrpe!check_all_disks
答案2
查看 http://www.kernelhardware.org/nagios-nrpe-to-monitor-remote-linux-server/
简而言之,对于磁盘检查和 CPU 检查,在 /etc/nagios/objects/commands.cfg 中添加以下内容
# for nrpe check_disk plugin
define command{
command_name check_disk
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
# for nrpe check_load plugin
define command{
command_name check_load
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
在 /etc/nagios/objects/localhost.cfg 中,server1
define service{
use local-service ; Name of service template to use
host_name server1
service_description Root Partition
check_command check_disk!check_disk
contact_groups admins
}
define service{
use local-service ; Name of service template to use
host_name server1
service_description Current Load
check_command check_load!check_load
contact_groups admins
}
检查配置是否正确
#nagios -v /etc/nagios/nagios.cfg
重新加载 nagios
#/etc/rc.d/rc.nagios reload