我在这里有点困惑。你的两个命令不相关。
您需要通过 NRPE 检查远程主机上的 cpu 吗?首先,NRPE 是否安装在远程主机上? check_nrpe 插件是否安装在 Nagios 服务器上?
我将假设您已在远程服务器上加载了 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 协同工作的快速且有希望的全面解释来结束这一切:
- 您将主机定义为远程主机
- 您需要在该远程主机上本地运行检查,而不是使用 SNMP 或使用 check_ssh 您决定使用 NRPE
- 您需要一个插件,它可以以格式良好且有文档记录的方式告诉远程主机该做什么
- 输入 check_nrpe:check_nrpe 通过 NRPE 与远程主机通信
(它必须安装)
- 在远程主机端有一些预定义的命令(您可以添加任意数量的!)命令,例如
check_uptime、check_load
- 既然您知道在远程端指定的命令,您可以将这些命令用作 Nagios 端的
check_nrpe 的参数
希望这有帮助!