Nagios - Comandi

Una definizione di comando definisce un comando. I comandi includono controlli di servizio, notifiche di servizio, gestori di eventi di servizio, controlli di host, notifiche di host e gestori di eventi di host. Le definizioni dei comandi per Nagios sono definite nel file commands.cfg.

Quello che segue è il formato per la definizione di un comando:

define command {
   command_name command_name
   command_line command_line
}

Command name- Questa direttiva viene utilizzata per identificare il comando. Le definizioni di contatto, host e servizio sono referenziate dal nome del comando.

Command line - Questa direttiva viene utilizzata per definire cosa viene eseguito da Nagios quando il comando viene utilizzato per i controlli del servizio o dell'host, le notifiche o i gestori di eventi.

Esempio

define command{
   command_name check_ssh
   command_line /usr/lib/nagios/plugins/check_ssh ‘$HOSTADDRESS$’
}

Questo comando eseguirà il plugin - / usr / libl / nagios / plugins / check_ssh con 1 parametro: '$ HOSTADDRESS $'

Una definizione host molto breve che utilizzerebbe questo comando di controllo potrebbe essere simile a quella mostrata qui -

define host{
   host_name host_tutorial
   address 10.0.0.1
   check_command check_ssh
}

Le definizioni dei comandi indicano come eseguire i controlli host / servizio. Definiscono inoltre come generare notifiche se viene identificato un problema e come gestire qualsiasi evento. Esistono diversi comandi per eseguire i controlli, come comandi per verificare se SSH funziona correttamente o meno, comando per verificare che il database sia attivo e in esecuzione, comando per verificare se un host è vivo o meno e molti altri.

Ci sono comandi che dicono agli utenti quali problemi sono presenti nell'infrastruttura. Puoi creare i tuoi comandi personalizzati o utilizzare qualsiasi comando di terze parti in Nagios, e sono trattati in modo simile al progetto dei plugin Nagios, non c'è distinzione tra loro.

Puoi anche passare argomenti nel comando, questo offre maggiore flessibilità nell'esecuzione dei controlli. Ecco come è necessario definire un comando con parametro -

define command {
   command_name check-host-alive-limits
   command_line $USER5$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5
}

La definizione dell'host per il comando precedente -

define host {
   host_name system2
   address 10.0.15.1
   check_command check-host-alive-limits!1000.0,70%!5000.0,100%
}

Puoi eseguire comandi esterni in Nagios aggiungendoli al file dei comandi che viene elaborato periodicamente dal demone Nagios.

Con i comandi esterni puoi ottenere molti controlli mentre Nagios è in esecuzione. Puoi disabilitare temporaneamente alcuni controlli o forzarne l'esecuzione immediata, disabilitare temporaneamente le notifiche ecc. Di seguito è riportata la sintassi dei comandi esterni in Nagios che devono essere scritti nel file di comando:

[time] command_id;command_arguments

Puoi anche controllare l'elenco di tutti i comandi esterni che possono essere usati in Nagios qui -https://assets.nagios.com/downloads/nagioscore/docs/externalcmds/