House of sysadmins

House of sysadmins

Hola a todos, despues de mucho tiempo sin venir por aqui os traigo mi experiencia con el mejor monitor de red NAGIOS.

Os detallo como lo tengo montado yo y que guias he seguido. Por ultimo comentare los problemas que tengo y a ver si somos capaces de entre todos modificar este post para que sea el manual a seguir para instalacion y configuracion de este estupendo paquete de monitoreo.

CARACTERISTICAS DE MI SISTEMA:

- Maquina virtual de Citrix XenServer
- Ubuntu Server ED 9.04
- Nagios 3 + Plugins

GUIAS A SEGUIR PARA LA INSTALACION Y CONFIGURACION DE NAGIOS SOBRE UBUNTU
Instalacion

NOTA: Despues de instalar el apache2 instalar php5 (sudo aptitude install php5) a mi me dio problemas para cargar la pagina y resulta que era esto jeje.

Monitorear Equipos Windows

NOTA: tengo problemas para obtener informacion con el NSCLIENT y aun no he probado SNMP o WMI. Solo monitore con PING.

Monitorear Impresoras
NOTA: Solo me monitorea si estan levantadas (ping) pero no consigo que me saque cantidad de tinta y numero de impresiones y demas...

Monitoreo de Routers y Switches


Como veis lo tengo montado pero me falta mucho desarrollo aun.

El principal problema que tengo ahora mismo es que he instalado el postfix pero no me llegan correos, estoy investigando aun, pero si a alguien le ha sucedido y/o sabe como solucionarlo seria genial que lo compartiera.


Un saludo

Etiquetas: de, monitor, monitorear, nagios, red, ubuntu

Compartir

Responde a esto

Respuestas a esta discusión

Como te comenté en el anterior post, para empezar te recomiendo que te instales un GroundWork OpenSource Edition.
La principal ventaja: él lo instala TODO, y además integra NeDI, que es un sistema de "descubrimiento" de red. Es decir, ejecutas un asistente, escanea tu red y te añade todo lo encontrado a Nagios (puedes decirle si algo no lo quieres añadir). Para hacer la instalación inicial te ahorrará horas de trabajo añadiendo hosts y servicios uno a uno.

La principal desventaja: Consume bastantes recursos y si posteriormente le quieres añadir algún programa más por tu cuenta te resultará algo complicado.

Yo, actualmente utilizo NagiosQL como configurador (integrado en OSSIM). No me parece el mejor configurador en cuanto a la usabilidad del mismo, pero a cambio, la mayoría de configuradores que he probado generan ficheros "monolíticos" (un fichero para todos los hosts, otro para todos los servicios, etc..) para Nagios, mientras que NagiosQL genera ficheros independientes y a mi me gusta mas así. Esto es única y exclusivamente cuestión de gustos. Mucha gente te dirá que prefiere el otro sistema...

Un saludo y no desesperes. Poner en marcha Nagios siempre da algunos dolores de cabeza, pero luego no puedes vivir sin él (y te preguntas como podías antes vivir sin el).

Diego Fernández
Linux User #95110


Ruben Iglesias dijo:
que configurador grafico me recomiendas?, hay algun sitio en el que haya documentacon en español de esto, en el que pueda ver ejemplos??

Responde a esto

Desde mi experiencia con el tema del nagios, antes de meterte en cualquier configurador, monta uno básico y empápate de su estructura, porque si no, va a haber algún momento en que tengas que meter manos a los archivos de configuración para hacer algún pequeño ajuste y vas a estar completamente perdido, como ya te dijeron algo más arriba.

Responde a esto

Si, exactamente eso es lo que le dije en el primer post. El caso es que como no consigue ni siquiera ponerlo en marcha, por eso le he dicho que ponga un configurador, haga una configuración inicial y luego se revise los ficheros para ver como funcionan.

El configurador te ahorra mucho tiempo a la hora de configurar una instalación medianamente grande, pero como no sepas como funciona "de verdad", el día que tengas un problema serás incapaz de solucionarlo.

Un saludo.
Diego Fernández
Linux User #95110

Siberiano dijo:
Desde mi experiencia con el tema del nagios, antes de meterte en cualquier configurador, monta uno básico y empápate de su estructura, porque si no, va a haber algún momento en que tengas que meter manos a los archivos de configuración para hacer algún pequeño ajuste y vas a estar completamente perdido, como ya te dijeron algo más arriba.

Responde a esto

Estoy realizando pruebas con el groundwork. de momento me funciona pero no he conseguido agregar ningnu host. lo dejo para el lunes y a ver si encuentro algun manual. ota cosa que he visto muy interesante es el ZABBIX. que creo que esta basado tambien en nagios.
Voy a centrarme con el groundwork y si me atasco montare otra maquina con el zabbix. alguno tengo que hacer funcioanr x dios!

Responde a esto

Yo probé en su momento el Zabbix y preferí quedarme con Groundwork... pero como siempre, es cuestión de gustos.
No desesperes que lo conseguirás.
Aquí estamos para ayudar en lo que podamos.

Un saludo.
Diego Fernández
Linux User #95110

Ruben Iglesias dijo:
Estoy realizando pruebas con el groundwork. de momento me funciona pero no he conseguido agregar ningnu host. lo dejo para el lunes y a ver si encuentro algun manual. ota cosa que he visto muy interesante es el ZABBIX. que creo que esta basado tambien en nagios.
Voy a centrarme con el groundwork y si me atasco montare otra maquina con el zabbix. alguno tengo que hacer funcioanr x dios!

Responde a esto

acabo de fijarme en lo que pegaste de tu config...
define service{
use genric-service
host_name servidor_dns
service_description NSClient++ 0.3.6.818
check_command check_nt!CLIENTVERSION
}

si es un copia pega exacto, tienes un error en la escritura, en la parte de use generic-service que lo tienes como genric-service.

El servicio te aparece listado en los checks del nagios? Tienes el servicio del NSClient corriendo, no? Compruebalo en el listado de servicios del ordenador objetivo ;)

un saludo

Responde a esto

fallo mio al postear, en el script sta bien. voy a dejarmelo para despues del SIMO que me voy mañana y quiero relajarme estos dias. jejee. Cuando vuelva el jueves le metere caña o al zabbi xo al groudnwork aun no se.. y os voy comentando cosas

gracias

Siberiano dijo:
acabo de fijarme en lo que pegaste de tu config...
define service{
use genric-service
host_name servidor_dns
service_description NSClient++ 0.3.6.818
check_command check_nt!CLIENTVERSION
}

si es un copia pega exacto, tienes un error en la escritura, en la parte de use generic-service que lo tienes como genric-service.

El servicio te aparece listado en los checks del nagios? Tienes el servicio del NSClient corriendo, no? Compruebalo en el listado de servicios del ordenador objetivo ;)

un saludo

Responde a esto

Hola de nuevo intente seguir los pasos que me indicabas para configurar las notificacione spor mail, pero no he sido capaz, tienes algun documento, pdf, libro ó web donde lo expliquen, para asi no molestar.

Un saludo y gracias

Diego Fernández dijo:
Hola:

Lo primero: quita sendmail... :-P
Sendmail a día de hoy está bastante desfasado, además de ser un monstruo que te es totalmente innecesario.
Te recomiendo Postfix o Exim... yo utilizo Postfix.

Si tienes otro servidor SMTP (supongo que si, porque si este no te funciona no creo que estés sin correo electrónico en tu empresa), configura Postfix en el modo "Correo local con SmartHost". Esto significa que él únicamente gestiona el correo que va dirigido a @tuservidorpostfix.tudominio.local, y el resto lo único que hace con él es reenviarlo al smarthost, que es el servidor SMTP que utilizas normalmente.
De esta forma no tendrás problemas con sistemas antispam que te bloquen los mensajes de Nagios porque llegan desde un servidor sin registrar.

Si haciendo esto te surge algún problema dínoslo aquí.

Un saludo.
Diego Fernández
Linux User #95110

Julian Brazuelo dijo:
Instalé sendmail simplemente como gestor SMTP probé a manadar un mail a mi cuenta pero nollegó nada pero, en una ruta que crea Nagios ( o el propio servicio SMTP ) si hay registro de que hay movimiento de correo.

Aunque si me recomiendas que instale otro gestor de correo admito sugerencias, a por cierto Nagiso está instalado con CentOS 5.3

Un saludo y gracias.

Diego Fernández dijo:
Hola:

Las notificaciones dependen al 99% de que el servidor SMTP que tengas esté bien configurado.
Lo primero que tienes que probar es que puedas enviar un email desde el host Nagios a otro sitio.
Envía un mail desde la consola manualmente (o con el cliente que prefieras) a ver si llega.
Nagios lo único que hace es pasarle los datos a tu SMTP en "localhost".

Si no te funciona dinos que SMTP has puesto (Exim, Postfix, etc.) a ver si podemos ayudarte.

Un saludo.
Diego Fernández
Linux User #95110


Julian Brazuelo dijo:
Hola he visto que teneis un hilo de Nagios, yo lo acabo de montar, pero no me funciona el envio de notificaciones por mail, por mas manuales y por mas busquedas por google no he encontrado nada, podrias decirme como lo conseguisteis vosostros.

Un slaudo

Responde a esto

Como vas con esto amigo yo tengo un problema similar para configurar el host de windows, yo realice la configuracion basica paso a paso como esta en el manual, monitoreando el equipo local darle ping a una web etc todo bien pero al querer agregar el equipo Windows empezaron los problemas, solo modifique el archivo de windows.cfg y realice las configuraciones basicas en el equipo windows ya instalando el agente siguiendo los pasos del manual, pero a la hora de querer mintorear ele equipo no mas no veo nada, y la parte de Scheduling Queue si logro ver mi equipo pero al querer monitorear me marca este error:

Sorry, but you are not authorized to commit the specified command. Read the section of the documentation that deals with authentication and authorization in the CGIs for more information.

Viendo los mensaje veo que postearon que hay que modificar el archivo resource.cfg como le agregas el usuario para que monitore el agente windows, yo tenego esto:

# Sets $USER1$ to be the path to the plugins
$USER1$=/usr/local/nagios/libexec

# Sets $USER2$ to be the path to event handlers
#$USER2$=/usr/local/nagios/libexec/eventhandlers

# Store some usernames and passwords (hidden from the CGIs)
#$USER3$=someuser
#$USER4$=somepassword

Y mi configuracion ene commands es esta

# 'check_nt' command definition
define command{
command_name check_nt
command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -s 12345 -v $
ARG1$ $ARG2$
}

Y mi definicion de windows host

define host{
use windows-server ; Inherit default values from a template
host_name gwpc01 ; The name we're giving to this host
alias WinXp ; A longer name associated with the host
parents milangateway
address 192.168.1.93 ; IP address of the host
}


define service{
use generic-service
host_name gwpc01
service_description NSClient++ Version
check_command check_nt!CLIENTVERSION #no se s tenga que poner la version que instale en win
}

Y este comando que puse para ocnfigurar el cpu

define service{
use generic-service
host_name gwpc01
service_description CPU Load
check_command check_nt!CPULOAD!-l 5,80,90
}

Y pues ya lo e repetido varias veces y lo mismo no se donde pueda estar mi pequeño gran error

Responde a esto

Hola:

Varias cosas:
En el fichero de configuración de NSClient (en el cliente Windows, NO en el servidor Nagios) ¿has definido la IP de tu Nagios, el puerto, usuario, contraseña, etc...?

Cuando "pegas" tu resource.cfg, las variables de usuario y contraseña las tienes comentadas... no se si es un error al transcribirlo aquí o las tienes así.

En las definiciones de comandos, NO debes poner datos, sino variables, que para eso está el resource.cfg. Si no, imáginate que despedís a una persona de tu departamento y tienes que cambiar las contraseñas... te tocaría modificar uno a uno TODOS tus comandos. En la opción de contraseña tienes que poner $USER4$ y en el resource.cfg asignarle a esa variable la contraseña que tengas. Si algún día la tienes que cambiar solo tendrás que editar el resource.cfg y modificarla ahí.

Además, supongo que tampoco querrás monitorizar con los mismos valores TODOS los equipos, con lo que los argumentos en los comandos también deben ser variables para que luego puedas poner los valores que quieras en cada equipo.

Un ejemplo: Mi commando check_nt ejecuta:

$USER1$/check_nt -H $HOSTADDRESS$ -p $USER19$ -v $ARG1$ -l "$ARG2$"

Donde la variable $USER1$ indica el path a los plugins, $HOSTADDRESS$ es lógicamente la dirección del equipo a monitorizar, $USER19$ es el puerto que escuchan mis clientes NSCLient, $ARG1$ es el comando que quiero ejecutar en el cliente, y $ARG2$ los parámetros que le paso al comando para definir los valores de warning, critical, etc...

Luego defino el servicios check_nt_cpuload y le paso como argumentos:
ARG1=CPULOAD
ARG2=5,85,95,30,70,90

Si después quieres definir una monitorización de disco, no necesitas hacer otro comando, sino únicamente otro servicio que use también el comando check_nt que ya habíamos definido:

Servicio check_nt_disk-c
ARG1=USEDDISKSPACE
ARG2=C

Bueno, no se si me he explicado: la filosofía es que debes definir comandos usando todo lo que se pueda en variables, y luego servicios (que es lo que se asigna a los clientes) donde pasas como variables lo que quieres que los comandos hagan.

Y sobre todo, para que todo esto funcione, tus clientes tienen que permitir que el servidor se conecte con ellos, con lo que lo primero que debes comprobar es que los clientes tienen definidos el servidor, usuario, contraseña, puerto, etc...

Un saludo.
Diego Fernández
Linux User #95110



El comando que poner de NSclient!CLIENTVERSION es un comando que te devuelve como respuesta la versión del NSCLient remoto. Es decir, no es que lo tengas que rellenar con la versión que usas, sino que sirve para que sepas que versión tiene el cliente Windows remoto.



Antonio dijo:
Como vas con esto amigo yo tengo un problema similar para configurar el host de windows, yo realice la configuracion basica paso a paso como esta en el manual, monitoreando el equipo local darle ping a una web etc todo bien pero al querer agregar el equipo Windows empezaron los problemas, solo modifique el archivo de windows.cfg y realice las configuraciones basicas en el equipo windows ya instalando el agente siguiendo los pasos del manual, pero a la hora de querer mintorear ele equipo no mas no veo nada, y la parte de Scheduling Queue si logro ver mi equipo pero al querer monitorear me marca este error:

Sorry, but you are not authorized to commit the specified command. Read the section of the documentation that deals with authentication and authorization in the CGIs for more information.

Viendo los mensaje veo que postearon que hay que modificar el archivo resource.cfg como le agregas el usuario para que monitore el agente windows, yo tenego esto:

# Sets $USER1$ to be the path to the plugins
$USER1$=/usr/local/nagios/libexec

# Sets $USER2$ to be the path to event handlers
#$USER2$=/usr/local/nagios/libexec/eventhandlers

# Store some usernames and passwords (hidden from the CGIs)
#$USER3$=someuser
#$USER4$=somepassword

Y mi configuracion ene commands es esta

# 'check_nt' command definition
define command{
command_name check_nt
command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -s 12345 -v $
ARG1$ $ARG2$
}

Y mi definicion de windows host

define host{
use windows-server ; Inherit default values from a template
host_name gwpc01 ; The name we're giving to this host
alias WinXp ; A longer name associated with the host
parents milangateway
address 192.168.1.93 ; IP address of the host
}


define service{
use generic-service
host_name gwpc01
service_description NSClient++ Version
check_command check_nt!CLIENTVERSION #no se s tenga que poner la version que instale en win
}

Y este comando que puse para ocnfigurar el cpu

define service{
use generic-service
host_name gwpc01
service_description CPU Load
check_command check_nt!CPULOAD!-l 5,80,90
}

Y pues ya lo e repetido varias veces y lo mismo no se donde pueda estar mi pequeño gran error

Responde a esto

bueno yo os comento que he desistido en Nagios. Que para lo que queria hacer encontre un software de GFI (el network monitor) que me hace lo que necesitaba. Me monitorea las webs y los equipos y me envia alertas al correo. se configura facil y rapido. Asi que este tema lo tengo cubierto porfin.

De todas formas gracias a todos.

Responde a esto

Hola Rubén,

Es muy raro que no te funcione el NSClient++. Comprueba que tienes una regla en el firewall para este servicio (o apaga el firewall un momento para probar), mira que el servicio esté ejecutandose, y con marcada la opción de "Permitir a los servicio que interactúen con el escritorio".

Además, tienes que editar el archivo %program_files%\NSClient++\NSC.ini y descomentar todo en la sección [modules] excepto CheckWMI y RemoteConfigurationy en [settings] descomentar allowed_hosts. Lo dejamos en blanco para todos, o ponemos la IP del servidor de Nagios. Por último, descomentamos en la sección [nsclient] la opción port y nos aseguramos que sea el 12489.

Tras esto, reinicia el servicio del NSClient++

Espero que lo consigas.

Responde a esto

Responde a esto

RSS

Acerca de

logadmin logadmin creó esta red social en Ning.

Distintivo

Cargando…

¿DESEA PUBLICAR UNA OFERTA DE TRABAJO?

House of Sysadmins es una red especializada del sector IT.
Póngase en contacto con nosotros y le ayudaremos en su búsqueda.

contáctanos

Patrocinadores oficiales

Blog de un administrador de sistemas.

Las mejores partidas, en blog de poker.

© 2009   Creado por logadmin en Ning.   Crear tu propia red social

Emblemas  |  Reportar un problema  |  Privacidad  |  Términos de servicio

Iniciar sesión en el chat