我在Nagios文档的很多参考资料中都看到了check_nrpe_1arg
。
谁能确切解释这是什么?我在Nagios文档或网络上的其他任何地方都看不到任何内容,说“ check_nrpe_1arg
是__”。充其量是“您需要check_nrpe_1arg
在这里”,但没有说明什么或原因。
谢谢!
我在Nagios文档的很多参考资料中都看到了check_nrpe_1arg
。
谁能确切解释这是什么?我在Nagios文档或网络上的其他任何地方都看不到任何内容,说“ check_nrpe_1arg
是__”。充其量是“您需要check_nrpe_1arg
在这里”,但没有说明什么或原因。
谢谢!
Answers:
基于快速的粗略搜索,与check_nrpe相比,check_nrpe_1arg没什么特别的,它也有一些背景故事。
默认情况下,check_nrpe不接受要发送的命令行参数,仅接受要在远程NRPE服务器主机上运行的command_name。为了使NRPE接受超出此范围的参数(如果有内存可用),您必须启用编译时定义,AS WELL AS在check_nrpe以及NRPE服务器nrpe.cfg
文件中对其进行配置。
check_nrpe_1arg似乎是配置在核心NAGIOS commands.cfg
文件中的助记符;具体地说,告诉安装程序此命令将仅接受1个参数(在远程主机上执行的命令的名称),并且不接受任何其他参数。
考虑到NAGIOS的默认行为,这是一种怪异的方法,但是它仍然吸引了人们的注意。
最快的答案:
check_nrpe_1arg
完全按照配置commands.cfg
在核心NAGIOS服务器上执行的操作。在这种情况下,它提供了要在远程NRPE服务器上执行的命令名称,并且不会接受任何其他命令。
[edit]
另外,它似乎起源于“ Untangle”(基于Linux的防火墙/路由软件包)中的默认配置,即Debian,如果不遵循一些链接就很难说清。
我只能就Debian发行版(在喘不过气的时候)回答这个问题。check_nrpe_1arg是/etc/nagios-plugins/check_nrpe.cfg中定义的命令名称。
check_nrpe接受要在远程主机上运行的nrpe命令的名称以及要传递给远程执行命令的参数(以空格分隔)。相比之下,check_nrpe_1arg仅接受要在远程主机上运行的命令的名称(即,没有参数传递给远程执行的命令)。
如果您已在远程主机上对非常具体的命令进行了硬编码,并且希望在不传递任何参数的情况下调用它,则check_nrpe_1arg很有用。您有时会看到的一个示例是在/etc/nagios/nrpe.cfg中定义的check_hda1或check_sda1。check_hda1和check_sda1是使用特定参数调用check_disk的硬编码命令。