HOWTO:Nagiospostfix

Da Helpedia.

Vediamo come controllare la coda di postfix attraverso Nagios utilizzando snmp per la comunicazione

Indice

Installazione su mailserver

Installare i plugins di Nagios da RpmForge (rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm) sul mailserver

yum install nagios-plugins

testare con

/usr/lib64/nagios/plugins/check_mailq -w 2 -c 4 -Mpostfix

installare quindi snmp

yum install net-snmp

nota: se si verifica un errore di installazione allora prima eseguire:

yum install ethtool mingetty module-init-tools

configurare snmp

Inserire in /etc/snmpd/snmpd.conf

exec 1.3.6.1.4.1.5001.100 mailq-check /usr/lib64/nagios/plugins/check_mailq -w 50 -c 100 -Mpostfix

far partire il demone

service snmpd start
chkconfig snmpd on

verifichiamo che funzioni

snmpget -v1 -c xxx 81.29.198.145 .1.3.6.1.4.1.5001.100.101.1
SNMPv2-SMI::enterprises.5001.100.101.1 = STRING: "OK: mailq (17) is below threshold (50/100)|unsent=17;50;100;0"

configurare nagios

Per configurare nagios usiamo il plugin snmp per prendere i dati. Per prima cosa occorre installare

yum install net-snmp-utils

Verifichiamo che funzioni la query:

/usr/local/nagios/libexec/check_snmp -H 81.29.198.145 -C xxx -o 1.3.6.1.4.1.5001.100.101.1
OK: mailq reports queue is empty|unsent=0;2;4;0

il comando

Inserire in checkcommand.cfg la definizione del comando di check per la coda

   define  command {
    command_name    check_snmp_mailq
    command_line    $USER1$/check_snmp -H $HOSTADDRESS$ -C $ARG1$ -o 1.3.6.1.4.1.5001.100.101.1
   }

il servizio

Inserire in services.cfg la definizione del servizio

     define service{
       use                             generic-service         ; Name of service template to use
       host_name                       asav0
       service_description             Coda Postfix
       is_volatile                     0
       check_period                    24x7
       max_check_attempts              3
       normal_check_interval           10
       retry_check_interval            1
       contact_groups                  noc-impulso
       notification_interval           120
       notification_period             24x7
       notification_options            c,r
       check_command                   check_snmp_mailq!xxx
       }

Alternativa via SSH

configurare la rsa key per accesso SSH diretto da nagios verso il mailserver e poi utilizzare il comando:

/usr/local/nagios/libexec/check_by_ssh -H 81.29.198.144 -C '/usr/lib64/nagios/plugins/check_mailq -w 2 -c 4 -Mpostfix'

Alternativa via nrpe

Sul Mailserver installare oltre ai plugin di nagios, anche nagios-nrpe

yum install nagios-nrpe

configurare nrpe

Nel file /etc/nagios/nrpe.cfg inserire:

command[check_mailq]=/usr/lib64/nagios/plugins/check_mailq -w $ARG1$ -c $ARG2$ -M $ARG3$

verificare che

dont_blame_nrpe=1
allowed_hosts=

far partire nrpe

service nrpe start
chkconfig nrpe on

testare che il demone funzioni da nagios con il comando

/usr/local/nagios/libexec/check_nrpe -H <IP del server>

ulteriore test verificare che funzioni il plugin

/usr/local/nagios/libexec/check_nrpe -H <IP del server> -c check_mailq -a 5 10 postfix

configurare Nagios

Configuriamo un checkcommand che effettua il check via nrpe con i parametri già impostati:

   define  command {
    command_name    check_nrpe_mailq
    command_line    $USER1$/check_nrpe -H $HOSTADDRESS$ -c check_mailq -a 50 100 postfix
   }

e lo possiamo usare nei servizi al posto del precedente check_snmp_mailq. Il vantaggio è che questo sistema preserva i performance data.

Strumenti personali
Namespace
Varianti
Azioni
Navigazione
Strumenti