====== Frontal web de Nagios ======
PNP debería ser fácilmente accesible. Nagios permite que se llamen a URLs externas mediante las configuraciones de extended info. Se describen a continuación tanto para la versión 2.x como para la 3.x debido a los cambios entre las dos ramas de nagios.
===== Nagios 2.x =====
Con Nagios 2.x la integración de URLs externas en el interfaz web se realiza mediante los Extended Info Objects para [[http://nagios.sourceforge.net/docs/2_0/xodtemplate.html#serviceextinfo|servicios]]. Para PNP usaremos la directiva action_url para invocar al frontal web de PNP con las opciones apropiadas.
define serviceextinfo {
host_name localhost
service_description load
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$
}
Debe especificar una Extended Info Definition adicional para cada servicio.
===== Nagios 3.x =====
Desde nagios 3.0 la directiva action_url se ha cambiado a [[http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#host|equipo]] o [[http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#service|definición de servicio]]. De esta forma se simplifica la definición de URLs al interfaz de PNP. Las definiciones [[http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#serviceextinfo|serviceextinfo]] y [[http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#hostextinfo|hostextinfo]] son obsoletas ahora.
Primero definimos dos plantillas de nagios. Si ha usado las[[http://nagios.sourceforge.net/docs/3_0/quickstart.html|guías de instalación rápida]] de Nagios puede añadir estas líneas a templates.cfg:
define host {
name host-pnp
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_
register 0
}
define service {
name srv-pnp
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$
register 0
}
Estas dos plantillas pueden ser incluídas via "use srv-pnp" o "use host-pnp" para servicios y equipos respectivamente. Si ha seguido las guías rápidas de instalación, ahora puede por ejemplo editar el fichero localhost.cfg y añadir la plantilla para la definición de equipo o servicio de la forma siguiente:
define host{
use linux-server,host-pnp ; Nombre de la plantilla de equipo a usar
; Esta definición de equipo heredará todas las variables
; definidas en (o heredadas por) la definición
; de plantilla.
host_name localhost
alias localhost
address 127.0.0.1
}
define service{
use local-service,srv-pnp ; Nombre de la plantilla de servicio a usar
host_name localhost
service_description PING
check_command check_ping!100.0,20%!500.0,60%
}
Los enlaces a las URLs correctas se crean automáticamente.\\ \\
===== Popups =====
Se puede integrar PNP en Nagios de una forma en la que se pueden visualizar los gráficos sin tener que hacer click en ningún icono. Esto puede hacerse usando [[http://nagios.sourceforge.net/docs/3_0/cgiincludes.html|CGI Includes]] que permiten incluir código JavaScript en la vista de detalle del estado ( status.cgi ).
Prerrequisitos:
* PNP instalado y funcionando
* el file status-header.ssi presente el directorio contrib/ssi/ del paquete PNP debe ser copiado a /usr/local/nagios/share/ssi/.\\ **Atención**: Este fichero **NO** debe ser ejecutable. Si lo fuera ser trataría como un CGI lo que resultaría en un error.\\ *Nota para los admins de Apache*: Apache ssi y Nagios ssi sólo tienen un nombre similar.
* La(s) definición(es) del servicio apropiado tiene que ser modificada. Tenga en cuenta que hasta la versión 2.x de Nagios debe modificar la definición de serviceextinfo (la cual es obsoleta a partir de Nagios 3).
Definición:
define host {
name host-pnp
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_' class='tips' rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=_HOST_
register 0
}
define service {
name srv-pnp
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$' class='tips' rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=$SERVICEDESC$
register 0
}
Después de reiniciar Nagios (después de modificar las definiciones) el resultado será similar a este:\\
{{:popup.png?200}}
[[start|volver a contenidos]] | [[webfe_cfg|opciones de configuración]]