nagios nrpe incapaz de ler a saída

4

Estou tentando usar check_nrpe para verificar em um servidor remoto, mas não está funcionando e não consigo descobrir o que estou perdendo ...

# /usr/lib/nagios/plugins/check_nrpe -H XXX -c check_load -a 6,5,4 8,7,6
NRPE: Unable to read output
# 

mensagem syslog do servidor remoto:

nrpe[18058]: Connection from XX.XX.XX.XX port 16267
nrpe[18058]: Host address is in allowed_hosts
nrpe[18058]: Handling the connection...
nrpe[18058]: Host is asking for command 'check_load' to be run...
nrpe[18058]: Running command: /usr/bin/sudo /usr/lib64/nagios/plugins/check_load -w 6,5,4 -c 8,7,6
nrpe[18058]: Command completed with return code 1 and output: 
nrpe[18058]: Return Code: 1, Output: NRPE: Unable to read output
nrpe[18058]: Connection from XX.XX.XX.XX closed.

para verificar manualmente, eu emito o mesmo comando em um shell remoto:

bash-4.1$ id
uid=497(nrpe) gid=497(nrpe) groups=497(nrpe) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
bash-4.1$ /usr/bin/sudo /usr/lib64/nagios/plugins/check_load -w 6,5,4 -c 8,7,6
OK - load average: 0.21, 0.23, 0.19|load1=0.210;6.000;8.000;0; load5=0.230;5.000;7.000;0; load15=0.190;4.000;6.000;0; 
bash-4.1$ 
    
por alexus 16.05.2014 / 22:37

3 respostas

5

... o problema foi que nrpe_user dentro de /etc/nagios/nrpe.cfg foi definido como nrpe , por qualquer motivo nrpe estava sendo executado como nagios user, então tive que reajustar o arquivo sudoers.d e começa a funcionar imediatamente ...

# grep nrpe_user /etc/nagios/nrpe.cfg
nrpe_user=nrpe
# ps auxwww | grep nrpe
nagios   25388  0.0  0.0  41332  1240 ?        Ss   11:32   0:00 /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -d
root     26230  0.0  0.0 103252   828 pts/3    S+   11:47   0:00 grep nrpe
# cat /etc/sudoers.d/01_nagios 
Defaults:nagios !requiretty
nagios      ALL=(ALL)   NOPASSWD:   /usr/lib64/nagios/plugins/
# 
    
por 20.05.2014 / 17:49
1

Isso pode ser causado pela configuração "requiretty" do sudo. A verdadeira questão, porém, é por que você está rodando o check_load através do sudo de qualquer maneira.

Então, para corrigir isso: ou desabilite requiretty (apenas para o usuário nagios / nrpe) ou pare de executar o plugin através do sudo.

    
por 19.05.2014 / 19:00
-1

Na máquina que está sendo verificada, localize o arquivo nrpe.cfg e, dentro dele, a entrada para "check_load". Será algo parecido com isto:

command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20

Tente executar o comando nessa máquina - tudo à direita do sinal de igual acima e veja o que você obtém.

/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20

Aposto que está procurando por check_load em / usr / lib / nagios / plugins em vez de / usr / lib64 ou algo parecido.

    
por 17.05.2014 / 04:08

Tags