Académique Documents
Professionnel Documents
Culture Documents
En este apartado vamos a ver como instalar la aplicacin Nagios en un servidor linux Debian (version 6.0) para poder monitorizar todos los servidores windows, servidores linux, routers, switches, access points o incluso impresoras que tengamos en la red de nuestra empresa o oficina. En otros tutoriales que encontrars por internet podemos ver que realizan la instalacin mediante apt-get install nagios3 pero en este nos vamos a enfocar en instalar Nagios desde el source (codigo fuente) que nos bajaremos de su pgina web con su versin mas actualizada.
Requisitos de Nagios
Para este tutorial es imprescindible haber instalado un servidor Debian 6, configurado su ip como esttica y haber realizado la instalacin de servicios para la web y recomendado el servidor ssh mediante el cual realizaremos la instalacin desde una maquina con interfaz para as poder directamente copiar y pegar los comandos que iremos viendo a continuacin..
Librerias necesarias
Nagios puede crearnos y mostrarnos grficas temporales sobre el estado de la red pero para ello hace uso de unas libreras de imgenes que debemos instalar, ya que por defecto no vienen en el sistema. apt-get update && apt-get -y dist-upgrade apt-get install make gcc g++ sudo libgd2-xpm libgd2-xpm-dev libpng12-dev libjpeg62-dev libgd-tools libpng3-dev Tambin es necesaria la librera gd que la descargaremos de su source, la compilaremos e instalaremos. Para ello vamos a crearnos una carpeta donde descargar todo lo necesario. mkdir temporales cd temporales/ Ahora descargamos e instalamos la librera gd mediante: wget http://www.boutell.com/gd/http/gd-2.0.33.tar.gz tar -zxvf gd-2.0.33.tar.gz cd gd-2.0.33/ ./configure Como resultado del configure deberemos ver algo as Support for PNG library: yes
Support for JPEG library: yes Support for Freetype 2.x library: yes Support for Fontconfig library: yes Support for Xpm library: yes Support for pthreads: yes Y procedemos a su instalacin make && make install cd ..
y vamos al servidor, lanzamos el comando wget seguido de la direccin que hemos copiado para descargarlo, descomprimirlo y instalarlo. wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.4.3.tar.gz tar zvfx nagios-3.4.3.tar.gz cd nagios ./configure prefix=/usr/local/nagios with-cgiurl=/nagios/cgi-bin with-htmurl=/nagios/ with-nagios-user=nagios with-nagios-group=nagios with-command-group=nagios make all make install make install-init make install-commandmode make install-config cd .. Finalmente ya tenemos Nagios Core instalado.
cd nagios-plugins-<presionar tabulacion> ./configure make && make install Una vez haya terminado podemos comprobar directorio /usr/local/nagios/libexec/ mediante el comando ls /usr/local/nagios/libexec/ o bien /usr/local/nagios/libexec/check_ssh -h y debera mostrarnos las opciones del comando y el siguiente mensaje: si se han instalado correctamente en el
Con esto ya hemos terminado la instalacin bsica de Nagios. Tan solo nos queda aadirlo al inicio del sistema para que cuando el sistema se reinicie, Nagios tambin se encienda. Para ello podemos hacerlo de dos formas, la que nos dicen en la propia web de Nagios (que para mi es la mejor) o la que tambin os propongo pero que quiz os sintis mas cmodos.
La oficial de la web de Nagios ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios Y para evitar que nos salga un error como este insserv: warning: script S99nagios missing LSB tags and overrides editamos el archivo /etc/init.d/nagios y aadimos esto justo debajo de #!/bin/sh ### BEGIN INIT INFO # Provides: Nagios
# Short-Description: Nagios Boot Script # Description: # ### END INIT INFO Guardamos el archivo y al ejecutar insserv nagios ya no debera salirnos ningn error.
La otra forma que os propongo es editar el archivo /etc/rc.local nano /etc/rc.local Y aadimos el texto antes del exit 0 echo NAGIOS: Comprobando la configuracion de Nagios; service nagios checkconfig; echo NAGIOS: Iniciando el servicio Nagios; service nagios start; sleep 5; echo NAGIOS: Comprobando si el servicio Nagios esta activado; service nagios status;
exit 0;
AllowOverride None Order allow,deny Allow from all AuthName Nagios Access AuthType Basic AuthUserFile /usr/local/nagios/etc/htpasswd.users Require valid-user </Directory> Guardamos el archivo y activamos el site con a2ensite nagios Definimos la contrasea para el usuario nagiosadmin que es el que viene por defecto. Que es la que usaremos mas tarde para acceder al panel web de Nagios. htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin Y revisamos que el archivo /usr/local/nagios/etc/cgi.cfg disponga de use_authentication=1 nano /usr/local/nagios/etc/cgi.cfg Una vez comprobado o cambiado, guardamos el archivo. Procedemos a reiniciar los servicios de apache, nagios y comprobamos su funcionamiento. service apache2 restart service nagios restart Ya podemos abrir el navegador web en nuestro ordenador con interfaz grfica y comprobar su funcionamiento. http://la.ip.del.server/nagios
Como usuario tenemos nagiosadmin y como contrasea, la que hemos definido justo hace un momento. Si hemos escrito correctamente el usuario y password, nos cargar la pagina principal de Nagios donde podremos ver su versin instalada y un men lateral izquierdo.
Guardamos el archivo y procedemos a editar el archivo switch.cfg para definir nuestros host nano /usr/local/nagios/etc/objects/switch.cfg Lo primero de todo es eliminar o editar todos los host, servicios, grupos que hay definidos en el archivo. La mejor forma es directamente eliminar el contenido del archivo y rellenarlo nosotros desde 0. Tanto host, hostgroups, services sern definidos en este mismo archivo.
Aadiendo un host
use = La plantilla ya definida que usaremos para el host, dndole a entender al programa que es un switch (aunque sea un pc) host_name = Es el nombre que queremos ver en el panel de Nagios , no tiene nada que ver con el nombre de red. alias = Una descripcin que queramos darle al equipo. address = La direccin ip de este equipo, si tienes el equipo por DHCP y lo quieres monitorizar, debers ponerle ip esttica. hostgroups = Podemos agrupar diferentes host bajo nuestro criterio, (plantas del edificio, servidores linux, servidores windows, routers de la sede 1, sede 2). Se definirn los grupos en el siguiente paso.
Aadiendo hostgroups
hostgroup_name = El nombre que tiene que coincidir con hostgroups de los host (si queremos asociarlos). alias = Descripcion del grupo.
Aadiendo servicios
Aqu vamos a definir el servicio que queremos monitorizar, en este ejemplo lo hacemos con un ping al servidor.
use = Plantilla generica ya definida para el servicio. host_name = Servidor, router al que vamos a monitorizar, debe coincidir con alguno de los host definidos.
service_description = Descripcion del servicio, en este ejemplo un Ping check_command = Comando que va a ejecutar Nagios para monitorizar este host. normal_check_interval = Cada cuanto va a comprobar el estado de ese host. retry_check_interval = Si por algun motivo fallara la comprobacion lo reintentara 1 vez.
Una vez hemos editado y guardado correctamente el archivo, hemos de comprobar que no haya errores en el fichero, un comando se encargara de decirnos los errores y los warnings encontrados. /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg Si algo falla, nos indica la linea en la que hemos fallado, deberemos arreglarlo. Una vez arreglado todo, o si no ha salido ningun error, hemos de reiniciar de nuevo el servicio de Nagios. service nagios restart
Al principio del post os decia de monitorizar la cpu, la ram, el disco duro de servidores windows. Para ello debemos activar la plantilla windows.cfg dentro de nano /usr/local/nagios/etc/nagios.cfg Y definir los host, hostgroups y servicios que queremos, como servicio podemos usar check_nt y sus parametros. Podeis encontrar mas informacin en la web de Nagios sobre como monitorizar cada servicio mediante los plugins que hemos instalado anteriormente. Ya solo queda comprobar que al reiniciar el ordenador nuestro Nagios se enciende tal y como le hemos configurado anteriormente, y disfrutar de su monitorizacin.