我想在 nagios 中为远程主机定义新命令,但我不知道应该在哪里写这个东西
define command {
}
在远程主机上我只有这个文件
vim /usr/local/nagios/etc/nrpe.cfg
我应该把它写在上面的文件中吗?还是必须把它写在 nagios 主机上,而不是远程计算机上?
我的远程主机上没有commands.cfg文件
答案1
您安装了哪些 Nagios 软件包?在我的 CentOS 5.4 机器上,Nagios 配置位于/etc/nagios
。请在那里查看。文件名是/etc/nagios/nagios.cfg
编辑
在远程端,您需要在 中创建一个nrpe.cfg
类似于 的条目command[something]=/some/path/to/command/binary
。然后,在 Nagios 主机上,执行define service { }
。重要的是,要运行的命令将类似于check_nrpe!something
,something
其中 和 中的命令相同nrpe.cfg
。
答案2
如果你正在配置监控远程主机,则必须在你的nrpe配置文件发现于/usr/local/nagios/etc/
。
此命令应在远程主机上。已定义的示例命令为:
/usr/local/nagios/libexec/check_nrpe -H localhost -c check_users
/usr/local/nagios/libexec/check_nrpe -H localhost -c check_load
/usr/local/nagios/libexec/check_nrpe -H localhost -c check_hda1
/usr/local/nagios/libexec/check_nrpe -H localhost -c check_total_procs
/usr/local/nagios/libexec/check_nrpe -H localhost -c check_zombie_procs
然后将命令定义添加到您在中指定的任何配置文件中nagios配置文件
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
最后是您的主机和服务
如果我错了,请纠正我。我不确定 nagios 是否会将设置重置为默认设置命令配置文件。
答案3
您可以在 nagios 主机上的文件中定义命令/usr/local/nagios/etc/objects/commands.cfg
。打开该文件,您应该会看到其中的语法示例。