Vamos configurara el puglin de nagios para Varnish, con este monitor nos monitorizara que la conexión al backend funciona correctamente. Acordaros que en la configuración del myconfig.vcl tenemos los backends monitorizados.
[#] vi /etv/varnish/myconfig.vcl
## Backend definition.
# set default backend if no server cluster specifiedbackend backend_default {
.host = "img01";.port = "81";
.probe = {
.url = "/test.jpg";
.interval = 10s;
.timeout = 5 s;
.window = 5;
.threshold = 3;
}
}
Si tenemos varios backends definidos, este monitor solo nos informara del primero.
Descargamos el plugin desde:http://exchange.nagios.org/components/com_mtree/attachment.php?link_id=2249&cf_id=24
Copiamos el plugin en el servidor
[#] cp check_varnish_health /usr/local/nagios/libexec/Tenemos que realizar una modificación sobre el plugin, hay que añadir la clave secreta, está la crearemos en otro lugar que no sea el fichero que viene con la instalación por defecto (instalación del Varnish) ya que esta clave solo será para que el usuario cacti tenga acceso al Varnish.
[#] vi /usr/local/nagios/libexec/secret
[#] vi /usr/local/nagios/libexec/check_varnish_health
COMMAND=`varnishadm -S /usr/local/nagios/libexec/secret -T $IP\:$PORT debug.health 2>&1 | head -1 | cut -d' ' -f4`
OUTPUT=`varnishadm -S /usr/local/nagios/libexec/secret -T $IP\:$PORT debug.health 2>&1 | head -1`
Cambiamos los permisos del fichero secret para que solo tenga acceso el usuario cacti y cambiamos los accesos al plugin para que se pueda ejecutar.[#] chown -R nagios:nagios /usr/local/nagios/libexec/secret
[#] chmod -R 777 /usr/local/nagios/libexec/check_varnish_health
Modificamos el fichero de configuración del nrpe añadiendo el servidor y puerto de acceso por remoto del Varnish.
[#] vi /usr/local/nagios/etc/nrpe.cfg
command[check_varnish_health]=/usr/local/nagios/libexec/check_varnish_health -i xx.xx.xx.xx -p 6082
Añadimos el comando en el server Nagios.
[#] vi /usr/local/nagios/etc/objects/commands.cfg
# 'check_varnish_health' command definition
define command{
command_name check_varnish_healthcommand_line $USER1$/check_varnish_health
}
Y definimos el servicio
[#] vi /usr/local/nagios/etc/objects/server_proxy.cfg
define service{
use Standard-Servicehost_name ip-Server
servicegroups Sys-Services
service_description varnish Health
check_command check_nrpe_linux!check_varnish_health
}
Cuidado con el check_nrpe_linux yo lo tengo porque monitorizamos server Windows y tenemos un check_nrpe para Windows y otro para Linux (es la única manera que encontramos de solucionar el tema del número de argumento $arg1$ $arg2$ $arg3$...)
No hay comentarios:
Publicar un comentario