Agregar/Eliminar Servicios Nagios 3

El directorio que contiene los archivos en donde están definidos los comandos que se utilizan en los servicios es /etc/nagios-plugins/config (ping, http, ssh…)

El archivo en el que se definen los servicios es /etc/nagios3/conf.d/services.cfg

Hay una plantilla genérica que es utilizada por todos los servicios:

#generic service template definition
define service{
name generic-service ; The 'name' of this service template
active_checks_enabled 1 ; Active service checks are enabled
passive_checks_enabled 1 ; Passive service checks are enabled/accepted
parallelize_check 1 ; Active service checks should be parallelized (disabling this can lead to major performance problems)
obsess_over_service 1 ; We should obsess over this service (if necessary)
check_freshness 0 ; Default is to NOT check service 'freshness'
notifications_enabled 1 ; Service notifications are enabled
event_handler_enabled 1 ; Service event handler is enabled
flap_detection_enabled 1 ; Flap detection is enabled
failure_prediction_enabled 1 ; Failure prediction is enabled
process_perf_data 1 ; Process performance data
retain_status_information 1 ; Retain status information across program restarts
retain_nonstatus_information 1 ; Retain non-status information across > program restarts
notification_interval 0 ; Only send notifications on status change by default.
is_volatile 0
check_period 24x7
normal_check_interval 5
retry_check_interval 1
max_check_attempts 4
notification_period 24x7
notification_options w,u,c,r
register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL SERVICE, JUST A TEMPLATE!
}

A partir de esta plantilla se definen los servicios. Ej:

#check that web services are running
define service {
hostgroup_name http-servers
service_description HTTP
check_command check_http
use generic-service
notification_interval 0 ; set > 0 if you want to be renotified
}

#check that web services are running
define service {
hostgroup_name red-avila,servidores-luismido
service_description PING
check_command check_ping
use generic-service
notification_interval 0 ; set > 0 if you want to be renotified
}

#Service definition
define service{
host_name Cxiome-GrupoA
service_description PING-slow
notification_options c,r
use generic-service ; Name of service template to use
notification_interval 0 ; time (in minutes) between renotifications if > 0
check_command check_ping!2000.0,90%!3000.0,100%
}

Se pueden aplicar tanto a grupos de hosts (hostgroup_name) como a host de forma individual (host_name), pero hay una diferencia entre la versión 2 y la 3.

En nagios3 no hace falta especificar el contacto dentro del servicio puesto que por reglas de herencia se aplica al contacto que tenga asignado el grupo o el host al que se aplica el servicio. En cambio en nagios2 si es necesario definirlo:

#check that web services are running
define service {
host_name go-rita,go-ned,go-willie
service_description HTTP
check_command check_http
use generic-service
contact_groups Contactos-permanentes
notification_interval 0 ; set > 0 if you want to be renotified
}

Por lo tanto:

  • si se quiere añadir/eliminar un nuevo comando, lo haremos en el archivo correspondiente en /etc/nagios-plugins/config
  • si se quiere añadir/eliminar un nuevo servicio (comprobando que el comando a ejecutar está definido…) lo haremos en /etc/nagios3/conf.d/services.cfg
  • si lo que se quiere es añadir/eliminar un host a un servicio:
    • si el servicio ya está definido lo único que tendríamos que hacer es añadir/eliminar el host al/del grupo (en /etc/nagios3/conf.d/contactsgroup.cfg) al que se aplica dicho servicio, o en caso de que sea a hosts de forma individual incluir/eliminar el host en ese servicio.
    • Tambien se podría crear un nuevo grupo al que agregar el nuevo host como miembro y asociarle este grupo al servicio.
  • si el servicio no está definido habrá que hacerlo previamente.

Recordar hacer una copia de los archivos que vamos a modificar antes de nada.

cd /etc/nagios3/conf.d
root@monitor:/etc/nagios3/conf.d# cp services.cfg /root/etc/nagios3/conf.d/services.cfg.`date +%https://proyectos.luismido.com/wiki/telecom-services/AgregarEliminar_Servicios/edit#d%m%g`

« Linux | Nagios 3

Si no se indica lo contrario, el contenido de esta página se ofrece bajo Creative Commons Attribution-ShareAlike 3.0 License