2012-12-10 16 views
6

Nel mio nrpe_local.cfg aggiunto seguente comando:Nagios NRPE: Comando non definito

command[check_mycommand]=/usr/lib/nagios/plugins/check_command 30 35 

e quindi riavviato il demone nrpe.

Quando eseguire questo comando utilizzando nrpe sto ottenendo il seguente errore:

NRPE: Command 'check_mycommand' not defined 

ho usato seguente comando da eseguire:

/usr/lib/nagios/plugins/check_nrpe -H hostname -c check_mycommand 

non sono in grado di ottenere qualsiasi indizio.

Nel mio nrpe_local.cfg sono aggiunti altri 10 comandi e funzionano correttamente.

risposta

1

Hai avviato il daemon NRPE con il file di configurazione corretto? (nrpe -c config_file -d) Il file di configurazione che stai usando è nagios_local.conf o nrpe_local.cfg?

+0

Aggiornare la mia domanda a causa di errori. Sto usando solo nrpe_local.conf. Quando ho eseguito il comando nrpe -c nrep_local.conf non ha ottenuto alcun output. Come ho detto, ci sono altri comandi definiti in nrep_local.cfg e funzionano senza problemi. Il nuovo comando che ho aggiunto non funziona. – Sandeep

1
  1. Assicurati di aver ucciso tutti i vecchi demoni, comprese le forchette.
  2. Dopo un nuovo riavvio di NRPE, controllare/var/log/messages per eventuali errori ?! Soprattutto cose come "NRPE: ERROR - non può legare a porta/porta già in uso".
  3. Sei positivo che non venga utilizzato un NRPE inetd controllato?
  4. Se quanto sopra non aiuta, ripetere il passaggio 1, quindi quando si avvia NRPE non includere il flag '-d' ed esaminare l'output.
2

In my nrpe_local.cfg added following command:> command[check_mycommand]=/usr/lib/nagios/plugins/check_command 30 35

Prova:

command[check_mycommand]=/usr/lib/nagios/plugins/check_command -w (warningTreshold) -c (criticalTreshold) 
/etc/init.d/nagios-nrpe-server restart 

E in effetti uccidere tutti gli altri demoni di nrpe che sono già in esecuzione. La causa potrebbe essere che è già in esecuzione da diversi utenti che potrebbero causare conflitti. es. nagios-NRPE-server è in esecuzione sotto utente root e sotto nagios utente

Inoltre, assicurarsi di aggiungere l'indirizzo IP del server Nagios ai allowed_hosts in /etc/nagios/nrpe.cfg:

allowed_hosts=<ip address of nagios server> 

Altrimenti si non sarà in grado di eseguire comandi esterni con NRPE da Nagios.

0

Ho avuto un problema simile e il check-in syslog ho potuto vedere che nrpe aveva scrivere problemi in/var/run/

Nov 6 08:30:05 xxxxxx nrpe[39777]: Cannot write to pidfile '/var/run/nrpe.pid' - check your privileges. 

ho trovato qui:

https://bugs.launchpad.net/ubuntu/+source/nagios-nrpe/+bug/957367

che la soluzione era tranquillo semplice Basta modificare nrpe.CFG e il cambiamento:

pid_file=/var/run/nrpe.pid 

a

pid_file=/var/run/nagios/nrpe.pid 

uccidere nrpe manualmente e iniziare di nuovo con /etc/init.d/nagios-nrpe-server iniziano

E 'appena lavorato per me.

3

Ciao ho risolto questo problema aggiungendo l'indirizzo locale nel file di configurazione in modo nrpe.cfg allowed_host = 127.0.0.1, xxxx dove xxxx è l'IP del mio Nagios server di. Si dovrebbe anche essere comando definito [check_disk]=/usr/lib/nagios/plugins/check_disk-w 20%-c 10%-p /var

è molto importante che il nome del comando [check_disk] è la stessa di quella indicata sulla rotta

Grazie a questo, il mio problema è stato risolto e ora ho un ottimo controllo.

Yilmar Hernández

3

tuo comando nel nrpe.cfg dovrebbe essere simile a questo:

command[check_mycommand]=/usr/lib/nagios/plugins/check_command -w $ARG1$ -c $ARG2$ 

quindi, il servizio in services.cfg di file (o qualunque sia il suo nome) di controllo dovrebbe apparire come segue:

define service{ 
    servicegroups  Basic Functionality 
    host_name   localhost 
    service_description Mycommand 
    check_command  check_nrpe!check_mycommand -a '-w 30 -c 35' 
    use     generic-service 
} 

Per favore fatemi sapere se è stato risolto il problema.

1

Ho risolto questo aggiungendo le righe sottostanti al mio file nrpe.cfg e riavviando nrpe. Fondamentalmente, stiamo dicendo a nagios di riconoscere i comandi che stiamo eseguendo.

command[check_var]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /var 
command[check_slash]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p/
command[check_ssh]=/usr/lib64/nagios/plugins/check_ssh $ARG1$ 
1

Ciao ho ottenuto questo errore ed è stato in grado di risolverlo: in /etc/nagios/nrpe.cfg youll vedere:

command[check_var]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /var 
command[check_slash]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p/
command[check_ssh]=/usr/lib64/nagios/plugins/check_ssh $ARG1$ 

ma sono sicuro ti hanno confiused e impostare: commend .cfg con: check_disk e not check_slash

vedere che la riga dice "command [check_slash]" questo è ciò che il comando.cfg vuole ottenere.