¿Qué ocupamos monitorear?
Para esto hacemos nuestra lista de Equipos y Servicios, en este caso dare unos ejemplos:
2 servidores Windows
2 servidores Linux
1 router
1 switch
2 paginas Web
y Nuestro Nagios
¿Qué ocupamos saber de cada uno?
Servidor Windows 2003 (windows2003-192.168.0.10) : DNS, Host Alive, disk_usage y load.
Servidor Windows 2000 (windows2000-192.168.0.11): SQL.
Servidor Linux (linuxs-192.168.0.12): Squid.
Servidor Linux (linuxw-192.168.0.13): HTTP.
Cisco (cisco-192.168.0.14): FastEthernet, UPtime, Serial
Switch (switch-192.168.0.15): Ping, Uptime.
Pagina 1 (paginac-): www.cisco.com
Pagina 2 (paginag-): www.google.com
Nagios (nagios-192.168.0.15): En este caso en particular monitoreo la temperatura del equipo.
Son pocos pero sustanciosos, con estos trabajaremos para hacer nuestra configuración.
Agregando Contactos
Inicialmente empezaremos a agregar nuestros contactos, editamos contacts.cfg,
con nuestro editor favorito (el mío vi :)).
define contact{
contact_name tobi
alias Nagios Super Admin
contactgroups nt-admins ;podemos agregar desde aquí los grupos
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-by-email
host_notification_commands host-notify-by-email
email correo@dominio.com
}
define contact{
contact_name superman
alias Nagios Super Admin
contactgroups linux-admins ;podemos agregar desde aquí los grupos
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-by-email
host_notification_commands host-notify-by-email
email correo@dominio.com
}
define contact{
contact_name batman
alias Nagios Super Admin
contactgroups network-admins ;podemos agregar desde aquí los grupos
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-by-email
host_notification_commands host-notify-by-email
email correo@dominio.com
}
Lo grabamos y listo, tenemos algunos contactos, podemos agregar cuantos queramos.
Agregando Grupos de Contactos
Ahora editamos el contactgroups.cfg y podemos agregar los contactos en los grupos:
# 'linux-admins' contact group definition
define contactgroup{
contactgroup_name linux-admins
alias Linux Administrators
members superman, batman
}
# 'nt-admins' contact group definition
define contactgroup{
contactgroup_name nt-admins
alias NT Administrators
members tobi
}
# 'network-admins' contact group definition
define contactgroup{
contactgroup_name network-admins
alias Network Administrators
members batman
}
# 'web-admins' contact group definition
define contactgroup{
contactgroup_name web-admins
alias WEB Administrators
members batman, tobi, superman
}
Grabamos y ya llevamos 2 archivos de configuracion.
Se preguntaran por que hicimos esta configuracion primero y no nos fuimos al grano o sea a a los equipos,
bueno en esta version 2 de Nagios en las directivas de host se agrego a la configuracion de cada equipo la linea contact_groups,
esto quiere decir que cada equipo tiene su grupo de contacto definido,
anteriormente estaban declarados los contact_groups en el archivo hostgroups.cfg.
Agregando Equipos
A continuación esta la configuración de hosts.cfg:
# Generic host definition template
define host{
name generic-host ; The name of this host
template - referenced in other host definitions, used for template recursion/res
olution
notifications_enabled 1 ; Host notifications are enabled
event_handler_enabled 1 ; Host event handler is enabled
flap_detection_enabled 1 ; Flap detection is enabled
process_perf_data 1 ; Process performance data
retain_status_information 1 ; Retain status information acro
ss program restarts
retain_nonstatus_information 1 ; Retain non-status information
across program restarts
register 0 ; DONT REGISTER THIS DEFINITION
- ITS NOT A REAL HOST, JUST A TEMPLATE!
}
define host{
use generic-host
host_name windows2003
alias NT 2003 Server
address 192.168.0.10
check_command check-host-alive
contact_groups nt-admins
max_check_attempts 10
notification_interval 480
notification_period 24x7
notification_options d,u,r
}
define host{
use generic-host
host_name windows2000
alias NT 2000 Server
address 192.168.0.11
check_command check-host-alive
contact_groups nt-admins
max_check_attempts 10
notification_interval 480
notification_period 24x7
notification_options d,u,r
}
Y asi sucesivamente vamos agregando y grabamos nuestro archivo hosts.cfg
Agregando Grupos de Equipos
Ahora creamos o editamos el archivo hostgroups.cfg, la forma como agrupemos los equipos aquí
se veran en la página de Nagios en la opción de hosts overview.
define hostgroup{
hostgroup_name webpages
alias Web Pages
members paginac,paginag
}
define hostgroup{
hostgroup_name winservers
alias Windows Servers
members windows2003,windows2000
}
Agregamos los demas y grabamos el archivo.
Agregando Servicios
Creamos o editamos services.cfg:
define service{
use generic-service
host_name windows2003
service_description DNS Service
is_volatile 0
check_period 24x7
max_check_attempts 4
normal_check_interval 5
retry_check_interval 2
contact_groups nt-admins
notification_interval 120
notification_period 24x7
notification_options w,u,c,r
check_command check_dns
}
define service{
host_name paginac,paginag
service_description PING
is_volatile 0
check_period 24x7
max_check_attempts 4
normal_check_interval 5
retry_check_interval 1
contact_groups web-admins
notification_interval 240
notification_period 24x7
notification_options c,r
check_command check_ping!1050.0,30%!1550.0,60%
}
Después se explicará como agregar más plugins y su configuración, esto es solo para que puedan
entender el funcionamiento de Nagios en una forma rápida y no muy a fondo por el momento.
Grabamos y salimos.
Agregando Grupos de Servicios
Agregamos un grupo de servicio (Ping) para varios hosts, esto en el archivo servicegroups.cfg
(Este archivo también es una de las nuevas características de la versión 2 de Nagios).
define servicegroup{
servicegroup_name pingservices
alias Ping Services
members paginac,Ping Service,paginag,Ping Service,switch,Ping Service
}
Grabamos y listo ya tenemos la configuración mínima para echar a andar a Nagios, hay otro archivo
que es el serviceextinfo.cfg pero ese se explicará después.
Verificando que todo funcione adecuadamente
Para verificar si todo esta funcionando como debe de ser, ejecutamos lo siguiente:
isuraeru@localhost# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
y si todo termina así:
Total Warnings: 0
Total Errors: 0
Things look okay - No serious problems were detected during the pre-flight check
Perfecto podemos daemonizar a Nagios:
isuraeru@localhost# /etc/rc.d/nagios start
Starting network monitor: nagios
PID TTY TIME CMD
29864 ? 00:00:00 nagios
Y ya tenemos a Nagios trabajando, solo es cuestión de entrar a nuestra página y ver como funciona.
NOTA: Aquí solo se mostro la configuración de algunos equipos para dar una idea de como hacerlo, para
monitorear más equipos o servicios los tenemos que ir agregando.
No hay comentarios:
Publicar un comentario
Nota: solo los miembros de este blog pueden publicar comentarios.