====== Nagios+Bacula ====== ===== Descripción ===== ===== Prerequistos =====   ==== 4. Bacula+Nagios ==== INTRODUCCIÓN\\ \\ Para realizar el proceso de backups automático de laptops utilizamos la herramienta Nagios\\ para monitorear el estado de los portátiles. Por medio de un “Event Handlerâ€? de\\ Nagios (Un script que ejecuta una acción al recibir un reporte) se revisa\\ continuamente el estado del portátil (HOSTSTATE), este estado puede tener los\\ siguientes valores:\\ \\ - UP cuando el Servidor “dhcpâ€? tiene respuesta con la máquina cliente a través de ping\\ - DOWN en caso contrario.\\ \\ Luego se revisa el tipo de estado (HOSTSTATETYPE), esta variable puede tener los\\ valores:\\ \\ - HARD si la máquina cambia de estado después de un largo tiempo.\\ - DOWN si la máquina cambia de estado en un lapso temporal corto\\ \\ Es decir, si la máquina se encontraba apagada y el usuario la prende, eso se toma\\ como un tipo de estado HARD, si por el contrario la máquina perdió conexión por\\ unos instantes debido a fallos en la red y luego esta se restablece esto se toma\\ como SOFT.\\ \\ De esta forma, el sistema lanzará un backup incremental cada vez que encuentre\\ que la máquina se encuentra en HOSTSTATE “UPâ€? y HOSTSTATETYPE “HARDâ€?.\\ \\ \\ ACLARACIONES\\ \\ Cabe a aclarar que:\\ \\ - Se deberá realizar un backup FULL de forma manual de los portátiles con cierta frecuencia (como mí­nimo uno al mes)\\ - Comprobar que la máquina permita solicitudes de eco entrante (que se deje hacer "ping" :D).\\ - Las máquinas se deben llamar EXACTAMENTE igual tanto en Bacula como en Nagios.\\ \\ PROCEDIMIENTO\\ \\ 1. Declare dentro del archivo "commands.cfg" el comando que lanzará el evento:\\ \\ # by skina\\ # 'launch-bacula-jobs' command definition\\ define command{\\         command_name    launch-bacula-jobs\\         command_line    /usr/local/nagios3/libexec/eventhandlers/launch-bacula-jobs $HOSTSTATE$ $HOSTSTATETYPE$ $HOSTNAME$\\         }\\ \\ 2.   En la definición del host (hosts.cfg) agreguele el parámetro del "event handler"\\ \\ define host{\\         use                     generic-host\\ \\         host_name               shai-hulud\\         alias                   Portatil Compaq Comercial\\         address                 shai-hulud\\         parents                 Skina-Router-Cisco\\         check_command           check-host-alive\\         max_check_attempts      20\\         check_period            24x7\\         notification_interval   60\\         notification_period     workhours\\         notification_options    d,u,r\\         event_handler           launch-bacula-jobs\\         contact_groups          admins\\ }\\ \\ 3.   En la ruta donde Nagios tiene sus "event handlers" (/usr/local/nagios3/libexec/eventhandlers o /usr/lib64/nagios/plugins/eventhandlers) ponga el siguiente script, dele permisos de ejecución y asignele como usuario y grupo a nagios\\ \\ \\ #!/bin/sh\\ \\ # LAUNCH BACULA JOBS EVENT HANDLER SCRIPT\\ # Written By: Miguel Angel Moreno (mmoreno@skinatech.com)\\ # Last Modified: 04-04-2008\\ \\ \\ echo "---------------------------"  >> /tmp/launch-bacula-jobs.log\\ echo "Bacula Event Handler Script"  >> /tmp/launch-bacula-jobs.log\\ echo "HOSTSTATE: $1" >> /tmp/launch-bacula-jobs.log\\ echo "HOSTSTATETYPE: $2" >> /tmp/launch-bacula-jobs.log\\ echo "HOSTNAME: $3" >> /tmp/launch-bacula-jobs.log\\ \\ # Only take action on hard host states...\\ case "$2" in\\ HARD)\\ \\         case "$1" in\\         DOWN)\\                 echo "The host is DOWN" >> /tmp/launch-bacula-jobs.log\\                 ;;\\ \\         UP)\\                 echo "The host is UP. Start backup to $3" >> /tmp/launch-bacula-jobs.log\\                 echo "run $3 yes" | /usr/sbin/bconsole\\                 ;;\\         esac\\         ;;\\ \\ esac\\ exit 0\\ \\ \\ 4. Como podrá notarlo, el script deja un pequeña bitácora en "/tmp/launch-bacula-jobs.log". Le ayudará a identificar posibles problemas ;)\\ \\ \\ ENLACES\\ - La documentación oficial:\\ http:%%//%%nagios.sourceforge.net/docs/3_0/eventhandlers.html   ===== Procedimiento ===== ===== A. Instalación básica ===== ===== B. Configuración ===== === 1. Una accion === === 2. Segunda accion === ===== Problemas ===== ==== 1. Si el instale_mrtg.sh no le funciona ==== - ===== Referencias ===== - FIN ============================================================== 15-Marzo-2006 J.E.Gomez v1.0 Primera version ---- __**Advertencia**__ Este documento es privado y es de u so exclusivo de sus autores y de SKINA TECH. Cualquier uso sin una autorización escrita es contra la ley de derechos de autor y de propiedad intelectual, y será motivo de una acción legal. ----