2010-10-28 51 views
5

得到一個從Nagios的/ NRPE腳本的Nagios/NRPE給人一種錯誤

1)運行Nagios的V3.2.3和NRPE V2.12

錯誤消息「從插件返回無輸出」,「無輸出插件返回」

2)的腳本:

OK_STATE=0 
    UNAME=/bin/uname -r  
    echo "OK: Kernel Version=$UNAME"  
    exit $OK_STATE 

2)使用NRPE

  • 相同OK結果Nagios的服務器上的命令行結果根和Nagios的用戶都:

[Nagios的@ cmonmm03的libexec] $ ./check_nrpe -H dappsi01b.dev.screenscape.local -c check_kernel OK:內核版本= 2.6.18-194.11。 3.el5

當我在機器的本地命令行上運行check_kernel.sh腳本時,它在那裏工作。

幫助,任何想法或已知的解決方案,將不勝感激?

謝謝

回答

0

你加Nagios的主機到/etc/xinetd.nrpe.cfg文件?具體來說,only_from行通常包含本地主機(在遠程系統上)。確保添加您的Nagios的IP地址主機有作爲:

# default: on 
# description: NRPE (Nagios Remote Plugin Executor) 
service nrpe 
{ 
    flags   = REUSE 
    socket_type  = stream 
    port   = 5666 
    wait   = no 
    user   = nagios 
    group   = nagios 
    server   = /usr/local/nagios/bin/nrpe 
    server_args  = -c /usr/local/nagios/etc/nrpe.cfg --inetd 
    log_on_failure += USERID 
    disable   = no 
    only_from  = 127.0.0.1 192.168.1.61 
} 
8

您的命令不帶任何參數,但它很可能爲check_nrpe命令定義確實定義參數的參數,例如:

define command{ 
    command_name check_nrpe 
    command_line /usr/lib64/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ -a $ARG2$ 
} 

因此,儘量將虛擬的參數在服務定義:

define service{ 
    use        normal-service 
    host_name      hostname 
    service_description    Description 
    check_command     check_nrpe!check_foo!placeholder 
} 
+2

這是完全一樣的問題,我有。在我的默認Ubuntu安裝中,甚至有一個名爲check_nrpe_1arg的命令(位於/etc/nagios-plugins/config/check_nrpe.cfg),所以我只是用它。定義爲: 定義命令{ COMMAND_NAME check_nrpe_1arg COMMAND_LINE/usr/lib中/的nagios /插件/ check_nrpe -H $ HOSTADDRESS $ -c $ ARG1 $ } – Howler 2012-06-06 18:07:19

相關問題