Configuración de NagiosGraph

Configuración de NagiosGraph

si buscan un complemento a Nagios que permita generar estadísticas o gráficos de los sistemas supervisados, NagiosGraph es una buena solución.

Nativo de Nagios, este sistema es de muy fácil instalación y genera buenos gráficos que permitirán revisar prácticamente el comportamiento histórico de nuestros sistemas, aplicaciones e infraestructura.

A continuación encontrarán un breve instructivo para su instalación básica.

Requisitos

  • Nagios Server

Instalación

Al igual que todas las demás entradas de este sitio asumiremos la instalación en Centos.

  •  Para iniciar se debe instalar los requisitos:

>yum install rrdtool perl-GD perl-CGI

rrdtool-perl perl-Time-HiRes -y

  • descargue NagiosGraph (al 28-02-2013)

 

 

 

 

>wget http://sourceforge.net/projects/nagiosgraph/files/nagiosgraph/1.4.4/nagiosgraph-1.4.4.tar.gz/download

  • Descomprima el archivo y acceda a la carpeta

>tar -zxvf down/nagiosgraph-1.4.4.tar.gz

>cd nagiosgraph-1.4.4/

 

  • Cree un directorio para NagiosGraph dentro del directorio de Nagios, recuerde repasar los permisos del directorio

mkdir /usr/local/nagios/nagiosgraph

chown nagios:nagios /usr/local/nagios/nagiosgraph

  • Dentro de la carpeta descomprimida de NagiosGraph, existe una carpeta “etc”, cópiela a la carpeta nagiosgraph

          que creo dentro del directorio nagios.

cp -r etc /usr/local/nagios/nagiosgraph/

  • Cambie la ruta  de NagiosGraph, los cgi y script de perl:

sed -i “s#/opt/nagiosgraph/etc#/usr/local/nagios/nagiosgraph/etc#g” cgi/*cgi

sed -i "s#/opt/nagiosgraph/etc#/usr/local/nagios/nagiosgraph/etc#g" lib/insert.pl
  • Copie los y los scripts de perl

cp lib/insert.pl /usr/local/nagios/libexec
cp cgi/*.cgi /usr/local/nagios/sbin

  • Copie los CSS y los archivos JavaScript

cp share/nagiosgraph.css /usr/local/nagios/share
cp share/nagiosgraph.js /usr/local/nagios/share

  • Edite el archivo nagiosgraph.conf con los siguientes parámetros:

vi /usr/local/nagios/nagiosgraph/etc/nagiosgraph.conf

##########
# Location of output from nagiosgraph data processing
logfile = /usr/local/nagios/nagiosgraph/var/nagiosgraph.log

# Location of output from nagiosgraph CGI scripts
cgilogfile = /usr/local/nagios/nagiosgraph/var/nagiosgraph-cgi.log

# Location of nagios performance data log file.
perflog = /usr/local/nagios/var/perfdata.log

# Directory in which to store RRD files
rrddir = /usr/local/nagios/nagiosgraph/var/rrd

# File containing regular expressions to identify service and perf data
mapfile = /usr/local/nagios/nagiosgraph/etc/map

# Nagiosgraph CGI URL.
nagiosgraphcgiurl = /nagios/cgi-bin

# Nagios CGI URL. If the Nagiosgraph CGI scripts are in a directory other
# than the Nagios CGI directory, then specify the Nagios CGI URL here.
#nagioscgiurl = /nagios/cgi-bin

# JavaScript: URL to the nagiosgraph javascript file.
javascript = /nagios/nagiosgraph.js

# Stylesheet: URL to the nagiosgraph stylesheet.
stylesheet = /nagios/nagiosgraph.css

# File containing labels for services and data (optional)
#labelfile = /etc/nagiosgraph/labels.conf

# Location of showhost control file (optional)
#hostdb = /etc/nagiosgraph/hostdb.conf

# Location of showservice control file (optional)
#servdb = /etc/nagiosgraph/servdb.conf

# Location of showgroup control file (required for showgroup.cgi)
groupdb = /usr/local/nagios/nagiosgraph/etc/groupdb.conf

# File containing data sets that should be selected in queries (optional)
#datasetdb = /etc/nagiosgraph/datasetdb.conf

#############

  • Cree los directorios para NagiosGraph

mkdir /usr/local/nagios/nagiosgraph/var
mkdir /usr/local/nagios/nagiosgraph/var/rrd

  • En el archivo SSI de NagiosGraph, especifique la URL para nagiosgraph.js

vi share/nagiosgraph.ssi

<script type=”text/javascript” src=”/nagios/nagiosgraph.js”></script>

  • Copie el archivo NagiosGraph ssi

cp share/nagiosgraph.ssi /usr/local/nagios/share/ssi/common-header.ssi
chown nagios:nagios /usr/local/nagios/share/ssi/common-header.ssi

  • Setee los permisos para los archivos de NagiosGraph

chown -R nagios:nagios /usr/local/nagios/nagiosgraph
chmod 755 /usr/local/nagios/nagiosgraph/var/rrd
touch /usr/local/nagios/nagiosgraph/var/nagiosgraph.log
chmod 664 /usr/local/nagios/nagiosgraph/var/nagiosgraph.log
touch /usr/local/nagios/nagiosgraph/var/nagiosgraph-cgi.log
chown apache /usr/local/nagios/nagiosgraph/var/nagiosgraph-cgi.log
chmod 664 /usr/local/nagios/nagiosgraph/var/nagiosgraph-cgi.log

  • Configuracion de Nagios
    • En el archivo de configuración de Nagios agregue las siguientes lineas:

vi /usr/local/nagios/etc/nagios.cfg

process_performance_data=1
service_perfdata_file=/usr/local/nagios/var/perfdata.log
service_perfdata_file_template=$LASTSERVICECHECK$||$HOSTNAME$||$SERVICEDESC$||$SERVICEOUTPUT$||$SERVICEPERFDATA$
service_perfdata_file_mode=a
service_perfdata_file_processing_interval=30
service_perfdata_file_processing_command=process-service-perfdata

  • Copie el ícono de NagiosGraph

cp -f share/graph.gif /usr/local/nagios/share/images/action.gif

  • Edite el Nagios sidebar y agregue las siguientes lineas despúes de “Trends”:

vi /usr/local/nagios/share/side.php

<div class=”navsection”>
<div class=”navsectiontitle”>NagiosGraph</div>
<div class=”navsectionlinks”>
<ul class=”navsectionlinks”>
<li><a href=”../nagiosgraph/cgi-bin/show.cgi” target=”<?php echo $link_target;?>”> Gr&aacute;ficos
<li><a href =”../nagiosgraph/cgi-bin/showhost.cgi” target=”<?php echo $link_target;?>”> Gr&aacute;ficos de Host
<li><a href =”../nagiosgraph/cgi-bin/showservice.cgi” target=”<?php echo $link_target;?>”> Gr&aacute;ficos de servicio
<li><a href =”../nagiosgraph/cgi-bin/showgroup.cgi” target=”<?php echo $link_target;?>”> Gr&aacute;ficos de grupo</li>
</div>
</div>
</div>
lo debe copiar ente un fin de linea “</div>” y un comienzo de línea <div>

Tambíen lo puedes hacer con estas líneas:

<div>
<div>NagiosGraph</div>
<div>
<li><a href=”<?php echo $cfg["cgi_base_url"];?>/trends.cgi” target=”<?php echo $link_target;?>”>Trends</a>
<ul>
<li><a href=”<?php echo $cfg["cgi_base_url"];?>/show.cgi” target=”<?php echo $link_target;?>”>Graphs</a></li>
<li><a href=”<?php echo $cfg["cgi_base_url"];?>/showhost.cgi” target=”<?php echo $link_target;?>”>Graphs by Host</a></li>
<li><a href=”<?php echo $cfg["cgi_base_url"];?>/showservice.cgi” target=”<?php echo $link_target;?>”>Graphs by Service</a></li>
<li><a href=”<?php echo $cfg["cgi_base_url"];?>/showgroup.cgi” target=”<?php echo $link_target;?>”>Graphs by Group</a></li>
</ul>
</li>
</div>
</div>
</div>

puede que la ruta definida en href sea diferente, eso depende de donde hayas creado la carpeta nagiosgraph

  • En la configuración de los comandos de Nagios agregue el siguiente comando:

vi /usr/local/nagios/etc/objects/commands.cfg

define command {
command_name process-service-perfdata
command_line /usr/local/nagios/libexec/insert.pl
}

  • Edite el template config file y agregue el siguiente servicio
vi /usr/local/nagios/etc/objects/templates.cfg
...
define service {
       name graphed-service
        action_url /nagiosgraph/cgi-bin/show.cgi?host=$HOSTNAME$&service=$SERVICEDESC$'
        onMouseOver='showGraphPopup(this)' onMouseOut='hideGraphPopup()' 
        rel='/nagiosgraph/cgi-bin/showgraph.cgi?host=$HOSTNAME$&service=$SERVICEDESC$
       (Ojo, una sola linea en action_url)
}
  • agregue la plantilla del servicio al servicio de su host
vi /usr/local/nagios/etc/objects/localhost.cfg
...
define service {
       use local-service,graphed-service
       ...
}
  • Por útlimo reinicie Nagios
/etc/init.d/nagios restart

Cualquier otra duda la comentan en el foro.

Saludos y espero les sirva este post.

Si te gusta esta publicación, comenta y comparte para que la comunidad de Nagios en Chile aumente día a día.Suscríbete acá -> Link

Bookmark and Share

Twittear

4 Responses to “Configuración de NagiosGraph”


  • Respondo la 2, tomado de

    http://karellen.blogspot.com/2013/04/adding-nagiosgraph-to-nagios.html

    define service {
    name graphed-service
    action_url /nagios/cgi-bin/show.cgi?host=$HOSTNAME$&service=$SERVICEDESC$’ onMouseOver=’showGraphPopup(this)’ onMouseOut=’hideGraphPopup()’ rel=’/nagios/cgi-bin/showgraph.cgi?host=$HOSTNAME$&service=$SERVICEDESC$&period=week&rrdopts=-w+450+-j
    register 0
    }

  • Como puedo enviarte informacion apra que la publiques?

  • hola… e seguido paso a paso lo indicado para nagiosgraph pero me sale el siguiente error: no data available cuando me ubico en el icono que muestra la grafica

    tengo las siguientes dudas con el procedimiento que indicaron

    1.las lineas mostradas se deben pegar exactamente igual en side.php …. la verdad no tenia claro en que posición ubicarlas lo que hice fue buscar en side.php la primera linea la cual no pegue … para despues pegar las 4 restantes … que debia hacer? talvez pegar las 5 lineas de codigo en cualquier posicion dentro de side.php ?

    <a href = " / trends.cgi”? target = ” “> Tendencias

    <a href = " /” target = “show.cgi “> Gráficos
    <a href = " / showhost.cgi” target = ” “> Gráficos de Host
    <a href = " /” target = “showservice.cgi “> Gráficos de servicio
    <a href = " /” target = “showgroup.cgi “> Gráficos de grupo

    2.La otra duda es si estará bien que en el archivo templates.cfg al momento de definir el servicio, la tercera linea (desde action_url) toda cambie de color como si fuera texto precedido de ; …. noc si las sentencias que muestran estan incorrectas o si talvez les falto poner alguna letra o comilla simple … por favor ayudenme !

    definir el servicio {
    Nombre graficada de servicio
    action_url / nagios / cgi-bin / show.cgi? host = $ HOSTNAME $ & service = $ SERVICEDESC $ ‘
    onMouseOver = “showGraphPopup (this)” onmouseout = “hideGraphPopup () ‘

    Espero su respuesta … espero me ayuden a solucionar este problema y esclarezcan un poco la información que muestran ya que es de mucha ayuda lo que hacen … gracias por su contribución …!

Leave a Reply



Nagios World Conference 2014
 
 
I'm A Speaker At The Nagios World Conference

El Nagios World Conference 2014 contará con expertos que cubrirán una variedad de temas, incluyendo:

.-Anuncios de nuevos productos
.-Mejores prácticas
.-Estudios de casos e historias de éxito
.-Escalabilidad, monitoreo distribuido y ajuste del rendimiento
.-Computación en nube y la automatización
.-Herramientas de mapeo y visualización
.-Cursos de formación y talleres
.-Tutoriales de Desarrollo
.-Nuevos desarrollos y características.

Este 2014 no se puede perder la conferencia anual.

Sea como relator o como oyente lo esperamos!!!

I'm Attending The Nagios World Conference

Si usted tiene alguna pregunta acerca de la información proporcionada en este correo electrónico, por favor póngase en contacto con nosotros.

Escriba a pmunoz@nagios.com y obtenga un descuento en su entrada!!!

  
 
 

This site is part of the official Nagios Community Network and is operated with permission from Nagios Enterprises. Nagios® and the Nagios logo are registered trademarks of Nagios Enterprises.

Disclaimer | Terms of Use | Privacy Policy