我真的需要一个Nagios脚本来监控远程主机上的cpu使用情况我有这个命令但它不起作用
# 'check_cpu' command definition
# w = Warning level (if CPU % idle falls below this level - must be a percentage)
# c = Critical level
define command{
command_name check_cpu
command_line $USER1$/check_cpu -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p $USER3$
}
vi /etc/nagios/nrpe.cfg
command[check_uptime]=/usr/local/nagios/libexec/check_uptime
答案 0 :(得分:1)
我在这里有点困惑。你的两个命令是无关的。
您需要通过NRPE检查远程主机上的cpu吗?首先,是否在远程主机上安装了NRPE?是否在Nagios服务器上安装了check_nrpe
插件?
我要假设您在远程服务器上加载了NRPE(因为您在NRPE配置文件中列出了check_uptime命令)。这意味着您至少需要使用check_nrpe
命令来获取所需的数据。
在/etc/nagios/nrpe.cfg
的远程主机上,应该有一些其他的命令,可能是这样的:
command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/hda1
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200
如果由于某种原因没有,你将需要做一些阅读。 This是一个很好的文档。
然后,在您的Nagios服务器上,您可以使用check_nrpe
定义服务,如下所示:
define service {
use generic-service
host_name remotehost
service_description CPU Load
check_command check_nrpe!check_load
}
现在,通过快速而有希望地全面解释NRPE如何与Nagios协同工作来包装所有这些:
check_uptime
,check_load
check_nrpe
的参数希望这有帮助!