Monitoreo de colas desde Nagios

Daniel Eugenin M. -

Mailcleaner posee un servicio SNMP con el cual es posible monitorear, por ejemplo, el status de las colas que posee Mailcleaner (Incoming, Filtering, Outgoing).

 

Nota: el sistema debe tener instalado el paquete "snmp":

aptitude install snmp

 

Configuración en Servidor Mailcleaner 

Para monitorearlo desde Nagios, utilizando NRPE, simplemente realizaremos lo siguiente:

 

- En el servidor Mailcleaner que ya posee NRPE, crearemos el siguiente plugin:

/usr/lib/nagios/plugins/check_mailcleaner

 

#!/bin/bash

warning=$1
critical=$2
STATE_OK=0
STATE_WARNING=1
STATE_CRITICAL=2
STATE_UNKNOWN=3


if [ ! $# == 2 ]; then
echo "Usage: $0 warning critical"
exit
fi


incoming=$(/usr/bin/snmpwalk -v2c -c mailcleaner 127.0.0.1 1.3.6.1.4.1.2021.8.1.101.6 | awk '{na = split($4, a, "|"); print a[2];}')
filtered=$(/usr/bin/snmpwalk -v2c -c mailcleaner 127.0.0.1 1.3.6.1.4.1.2021.8.1.101.6 | awk '{na = split($4, a, "|"); print a[3];}')
outgoing=$(/usr/bin/snmpwalk -v2c -c mailcleaner 127.0.0.1 1.3.6.1.4.1.2021.8.1.101.6 | awk '{na = split($4, a, "|"); print a[4];}')

if [ $incoming -ge $critical -o $filtered -ge $critical -o $outgoing -ge $critical ]
then
   echo "Queue CRITICAL - Count = $incoming, $filtered, $outgoing"
   exit $STATE_CRITICAL
elif [ $incoming -ge $warning -o $filtered -ge $warning -o $outgoing -ge $warning ]
then
   echo "Queue WARNING - Count = $incoming, $outgoing, $filtered"
   exit $STATE_WARNING
else
   echo "Queue OK - Count = $incoming, $filtered, $outgoing"
   exit $STATE_OK
fi

 

- Le damos permisos de ejecución:

# chmod 755 /usr/lib/nagios/plugins

 

- Lo agregamos a la configuración de NRPE: vi /etc/nagios/nrpe.cfg

command[check_mailcleaner]=/usr/lib/nagios/plugins/check_mailcleaner 30 60

Nota: los valores significan:

30 -> cantidad de correos encolados para aviso de Warning

60 -> cantidad de correos encolados para aviso de Critical

 

- Reiniciamos el servicio: 

# /etc/init.d/nagios-nrpe-server  restart

 

 

Agregándolo al servidor Nagios

Ahora, en el servidor Nagios, 

 

define service{
use generic-service
host_name server.itlinux.cl
contact_groups itlinux-admins
service_description Mailcleaner Queues
check_command check_nrpe!check_mailcleaner
}

 



Referencias:

http://forum.mailcleaner.org/viewtopic.php?f=12&t=1553

http://www.mailcleaner.org/doku.php/documentation:snmp_monitoring

 

 

0 Comentarios

Inicie sesión para dejar un comentario.
Tecnología de Zendesk