Nagios NRPE check_procs reportando número incorreto

5

Eu tenho um servidor nagios etch (vou chamar isso de NagiosServer), monitorando com sucesso muitas coisas, incluindo outro servidor etch (MonitorEtch). Usando check_nrpe e check_procs, posso verificar a lista de processos para daemons em execução, como '/ usr / sbin / squid'.

Verifique o MonitorEtch no NagiosServer (resultados corretos):

/usr/lib/nagios/plugins/check_nrpe -H MonitorEtch -c check_process -a /usr/sbin/squid 1:1 1:1
PROCS OK: 1 process with args '/usr/sbin/squid'

/usr/lib/nagios/plugins/check_nrpe -H MonitorEtch -c check_process -a whatever 1:1 1:1
PROCS CRITICAL: 0 processes with args 'whatever'

Eu criei um novo servidor que quero monitorar, executando o Lucid (MonitorLucid). Não importa qual processo eu tente e monitore a partir do NagiosServer, recebo um resultado extra do que deveria.

Verifique o MonitorLucid no NagiosServer (resultados incorretos):

/usr/lib/nagios/plugins/check_nrpe -H MonitorLucid -c check_process -a whatever 1:1 1:1
PROCS OK: 1 process with args 'whatever'

ps ax|grep sophie
12737 ?        Ss     0:00 /usr/sbin/sophie -D
12738 ?        S      0:03 /usr/sbin/sophie -D
19591 pts/0    S+     0:00 grep --color=auto sophie

/usr/lib/nagios/plugins/check_nrpe -H 192.168.19.252 -c check_process -a sophie 1:1 1:1
PROCS CRITICAL: 3 processes with args 'sophie'

Conteúdo do /etc/nagios/nrpe_local.cfg no MonitorLucid / MonitorEtch:

allowed_hosts=NagiosServer,127.0.0.1
dont_blame_nrpe=1
command[check_process]=/usr/lib/nagios/plugins/check_procs -a $ARG1$ -m PROCS -w $ARG2$ -c $ARG3$

No entanto, se eu executar a verificação localmente, ela retornará os resultados corretos!

Verifique o MonitorLucid a partir do MonitorLucid (resultados corretos):

/usr/lib/nagios/plugins/check_procs -a whatever -m PROCS -w 1:1 -c 1:1
PROCS CRITICAL: 0 processes with args 'whatever'

/usr/lib/nagios/plugins/check_procs -a sophie -m PROCS -w 1:1 -c 1:1
PROCS CRITICAL: 2 processes with args 'sophie'

Estou sem ideias a esta altura, menos de verificar mais 1 instância do que deveria.

    
por Nick Sturgess 25.07.2011 / 08:41

2 respostas

3

Eu tive um problema semelhante. check_procs está chamando internamente /bin/ps axwo 'stat uid pid ppid vsz rss pcpu comm args' , listando os processos e, em seguida, contando-os. Se você configurou nagios para executar com um usuário diferente, está usando sudo para executar o comando. E aqui está o problema. Se você digitar sudo ps -AF | grep sudo , algumas distribuições retornarão " grep sudo ", outras retornarão " sudo ps -AF " e " grep sudo ". Como check_procs está contando todos os processos, você obterá resultados diferentes em máquinas diferentes. Infelizmente ainda não tenho uma solução de como forçar o check_procs a não contar sudo processos.

    
por 25.10.2011 / 13:57
2

Parece que a versão de check_procs no Lucid é problemática (ou pelo menos mudou seu comportamento); o fato de estar sempre encontrando um extra sugere que ele está fazendo uma correspondência de substring em qualquer parte do nome e dos argumentos do processo e localizando um dos processos associados à execução do plug-in. Vale a pena relatar um bug para o Ubuntu sobre isso.

    
por 25.07.2011 / 08:49

Tags