Sei sulla pagina 1di 51

UNIVERSIDAD GALILEO

FISICC-IDEA

LIATE

Administración de Redes

CEI Central

Pablo Yela

NAGIOS

Semana 9

IDE0712220

Reyes López, Luis Alberto

IDE07144137

Ulín Sánchez, Lesther G.

IDE07316001

Ponce Paz, Sergio Roberto

IDE0117458

Castro Paniagua, Guillermo

IDE0712213

Díaz Manzo, Jairo Iván

4 de septiembre 2,010

ÍNDICE

Pág.

Introducción

2

Objetivos

3

Servidor Nagios

4

Comparación con otros servidores

33

Conclusiones

48

Recomendaciones

49

Bibliografía

50

INTRODUCCIÓN

A continuación presentamos un proyecto basado en Monitoreo de redes y servidores, Las redes de cómputo de las organizaciones, se vuelven cada vez más complejas y la exigencia de la operación es cada vez más demandante.

Las redes, cada vez más, soportan aplicaciones y servicios estratégicos de las organizaciones. Por lo cual el análisis y monitoreo de redes se ha convertido en una labor cada vez más importante y de carácter pro-activo para evitar problemas.

Gracias a su verificación 24 X 7 se pueden estar monitoreando no solo servidores y equipo de comunicación fuera, si no también servicios caídos como también aspectos críticos como espacio en discos, procesador, memoria, vulnerabilidades,

NAGIOS es un sistema open source popular para monitorear una red. Monitorea los hosts y servicios que se especifiquen, alertando cuando algo sale mal y nuevamente cuando está bien.

NAGIOS es un sistema open source popular para monitorear una red. Monitorea los hosts y servicios que se especifiquen, alertando cuando algo sale mal y nuevamente cuando está bien.

Más adelante se dará una explicación más detallada de todo los beneficios que incluye la implementación de un proyecto de este tipo que disfrute la lectura.

Objetivo general:

OBJETIVOS

Configurar un servidor Nagios

Objetivos específicos:

Implementar los siguientes módulos

o

Plugin de monitoreo de MySQL

o

Plugin de monitoreo de Apache

o

Servicio de ping reducido a 5 segundos

o

Plugin de temperatura de procesador

Plasmar las configuraciones realizadas en los archivos correspondientes del servidor de conferencias

Realizar una comparación entre la adquisición de un servidor CCTV propietario y la implementación de este proyecto

SERVIDOR NAGIOS

Características generales:

Recursos de hardware y software

Hardware de servidor

MSI Wind U-120

Sistema operativo

Ubuntu 10.04 Desktop

Versión de Nagios

Nagios 3.2.0

Instalación NAGIOS

Para instalar Nagios en Ubuntu lo primero que debemos hacer es descargar los

archivos de la página oficial de Nagios en este caso vamos a instalar la versión

3.2.0. Debemos descargar dos paquetes:

También podéis descargarlos por línea de comandos:

wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.0.tar.gz

wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-

1.4.15.tar.gz

Paso 1 - Prerrequisitos

Antes de empezar a instalar Nagios en Ubuntu es necesario instalar otro paquetes, es

posible que ya tengas instalado algunos de estos paquetes:

Apache 2

PHP

GCC: librerías de desarrollo y compilación

GD: librerías de desarrollo

Para instalar Apache 2 ejecutamos:

sudo apt-get install apache2

Instalamos PHP:

sudo apt-get install libapache2-mod-php5

Instalamos GCC:

sudo apt-get install build-essential

Por último, instalamos GD:

Para versión anteriores a la 6.10 (ésta incluida): sudo apt-get install libgd2-dev

A partir de la 7.10: sudo apt-get install libgd2-xpm-dev

Paso 2 - Crear información de cuenta de usuario

Después, para poder instalar Nagios en Ubuntu lo primero que debemos hacer es

entrar como root o por el contrario podéis poner sudo delante de todos los comandos:

sudo -s

Creamos una nueva cuenta de usuario "nagios" y contraseña:

/usr/sbin/useradd -m -s /bin/bash nagios

Con la opción "/bin/bash" indicamos que intérprete de comandos usaremos. Le damos un password, que introduciremos dos veces:

passwd nagios

Para versiones anteriores a la 6.01 es necesario crear un grupo (los que tenéis versiones posteriores podeis saltaros y pasar a crear el siguiente grupo, ya que Ubuntu lo hace automáticamente)

/usr/sbin/groupadd nagios /usr/sbin/usermod -G nagios nagios

Creamos un nuevo grupo nagcmd, para permitir comandos externos:

/usr/sbin/groupadd nagcmd

Metemos al usuario nagios en el grupo nagcmd:

/usr/sbin/usermod -a -G nagcmd nagios

Metemos al usuario de apache www-data en el grupo nagcmd, ya que la aplicación lo necesita para hacer sus gestiones:

/usr/sbin/usermod -a -G nagcmd www-data

Paso 3 - Compilar e Instalar Nagios en Ubuntu

Una vez que ya hemos preparado el sistema para instalar Nagios en Ubuntu podemos empezar con la compilación e instalación del mismo. En este punto debo decir que en la página oficial de Nagios podéis encontrar los paquetes ya compilados y listos para instalar Nagios en Ubuntu. Sin embargo, éstos no siempre son los de la última versión, por eso yo prefiero compilarlos yo misma.

Vamos a donde hemos instalado los paquetes. Descomprimimos el paquete de nagios:

tar xzf nagios-3.2.1.tar.gz

Accedemos a la carpeta que acabamos de descomprimir:

cd nagios-3.2.1

Ejecutamos el script de configuración de Nagios pasándole el nombre del grupo que acabamos de crear:

./configure --with-command-group=nagcmd

Compilamos el código fuente de Nagios:

make all

Por último, instalamos los archivos binarios de Nagios en Ubuntu:

make install

Ahora vamos instalar otros scripts y configuraciones que nos serán de utilidad más adelante. Instalar script de inicio:

make install-init

Instalar ejemplos de ficheros de configuracion:

make install-config

Dar permisos al directorio de comandos externos:

make install-commandmode

Paso 4 - Personalizar la configuración

Una vez que hemos instalado Nagios en Ubuntu, podemos ir al directorio "usr/local/nagios/etc" donde tenemos los ficheros de configuración de Nagios que podemos modificar para personalizar la configuración. En este caso vamos a modificar la dirección de e-mail que usaremos para las notificaciones de Nagios, para ello abrimos contacts.cfg con un editor de textos:

vim /usr/local/nagios/etc/objects/contacts.cfg

Si no eres muy hábil con vim puedes usar gedit:

gedit /usr/local/nagios/etc/objects/contacts.cfg

Cambiamos la dirección de correo de la línea 35 por la dirección de correo electrónico a la que queremos que nos manden las notificaciones.

a la que queremos que nos manden las notificaciones . Paso 5 - Configurar la Interfaz

Paso 5 - Configurar la Interfaz Web

Ahora debemos configurar Nagios para poder acceder a él vía interfaz web. Instalamos el archivo de configuración de Nagios para Apache. Con esto conseguimos poder ver la interfaz web de Nagios en Apache:

make install-webconf

Creamos un usuario (nagiosadmin) que pueda acceder vía web a Nagios:

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

NOTA: no olvidar el password ya que lo necesitaremos luego

Reiniciamos apache para que los cambios surtan efecto:

/etc/init.d/apache2 reload

Paso 6 - Compilar e Instalar los plugins de Nagios

Una vez que hemos configurado e instalado Nagios en Ubuntu vamos a la carpeta donde tenemos el paquete de los plugins y descomprimimos el paquete de la misma forma que lo hemos hecho antes para poder instalarlos:

tar xzf nagios-plugins-1.4.14.tar.gz

Entramos a la carpeta que acabamos de descomprimir:

cd nagios-plugins-1.4.14/

Compilamos e instalamos los plugins:

./configure --with-nagios-user=nagios --with-nagios-group=nagios --with- openssl=/usr/bin/openssl --enable-perl-modules

Con "with openssl" habilitamos el soporte para SSL. Con "enable-perl-modules" habilitamos los módulos de perl para poder trabajar con perl.

Por último, instalamos:

make

make install

Paso 7 - Inicio de Nagios en Ubuntu

Ahora vamos a configurar Nagios para que se inicie automáticamente junto con Ubuntu. Para ello usamos el script que hemos generado antes con "make install-init":

ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios

Verificamos que las configuraciones e instalación de Nagios en Ubuntu están bien, si hubieramos configurado algo mal durante la instalación sería en este punto donde aparecerían los errores:

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Si no tenemos errores iniciamos Nagios : /etc/init.d/nagios start Paso 8 - Entrar en la

Si no tenemos errores iniciamos Nagios:

/etc/init.d/nagios start

Paso 8 - Entrar en la interface Web

Si todo ha ido bien ahora tendríamos que poder entrar a Nagios por un explorador Web. Abrimos un explorador web y entramos en: http://localhost/nagios/ Nos pedirá el nombre de usuario (nagiosadmin) con la contraseña que hemos elegido en el paso 5. Si todo ha ido bien deberíamos ver la página de inicio de Nagios.

la contraseña que hemos elegido en el paso 5. Si todo ha ido bien deberíamos ver

Si vamos a "Services" (lo podéis encontrar en el menú izquierdo) veremos el estado de los servicios que se están ejecutando. Si SSH no está instalado el estado será "CRITICAL" como podeís ver en la imagen:

será "CRITICAL" como podeís ver en la imagen: Para solucionarlo instalamos SSH : sudo apt-get install

Para solucionarlo instalamos SSH:

sudo apt-get install ssh

Tras la instalación si esperais unos minutos el estado debería cambiar a OK.

SSH : sudo apt-get install ssh Tras la instalación si esperais unos minutos el estado debería

Paso 9 - Otras Modificaciones

En el paso 4, tras la instalación de Nagios en Ubuntu, hemos cambiado la dirección de e-mail a la que nos llegarán las notificaciones de Nagios. Sin embargo, para recibir dichas notificaciones es necesario instalar algún servidor de correo. En este caso vamos a instalar postfix como servidor de correo:

apt-get install postfix

En este caso instalaremos postfix con la opción de "Internet con <smarthost>", con esta opción indicamos que vamos a usar un servidor de correo externo para enviar los emails.

El nombre del sistema de correos introducimos "nagios.local" Por último, introducimos la ip del servidor externo de correo que vamos a usar.

Por otro lado necesitamos instalar mailx para enviar emails por línea de comandos:

apt-get install mailx

ahora solo queda que probemos el servidor de correo:

echo "PRUEBA" | mail -s "ASUNTO" admin@nosolounix.com

Ahora reiniciamos Nagios:

sudo /etc/init.d/nagios restart

Modulos Grupo 4

Modulos Grupo 4 Plugins Los plugins adjuntos se ubican en el directorio: /usr/local/nagios/libexec/ El archivo

Plugins

Los plugins adjuntos se ubican en el directorio:

/usr/local/nagios/libexec/

El archivo commands.cfg contiene los métodos (bloques de código) que acceden al plugin.

El archivo services_nagios2.cfg contiene los métodos (bloques de código) que ejecutan los comandos del archivo anterior.

En Nagios 3.2.0 los archivos se encuentran en las siguientes direcciones:

/etc/nagios3/commands.cfg

/etc/nagios3/conf.d/services_nagios2.cfg

Pegarlos y después reiniciar nagios:

sudo /etc/init.d/nagios3 restart

Aplicar permisos

sudo chmod +x check_apachestatus.pl sudo chmod +x check_cputemp.sh

Al usar el archivo commands.cfg y services_nagios2.cfg aparecerá un error de conexión para el plugin check_mysql. Esto sucede porque MySQL está configurado para acepte conexiones únicamente de la interfaz "loopback".

sudo nano /etc/mysql/my.cnf

Comentar la línea que dice:

bind-address: 127.0.0.1

Entrar a MySQL:

mysql localhost -u root -p

Ejecutar el siguiente comando:

GRANT ALL PRIVILEGES ON *.* TO root@IPdelSERVIDOR IDENTIFIED BY 'liate15';

Salir de MySQL

Reiniciar MySQL:

sudo services mysql restart

Para monitorear mysql se debe darle el permiso octal 777 (chmod 777 check_myslq) para que funcione

ARCHIVOS DE CONFIGURACIÓN

ARCHIVO

LÍNEA

CAMBIO

COMENTARIO

     

Indicaremos el

directorio

en

donde guardaremos nuestros archivos con la

información de

/etc/nagios3/nagi

los

host

a

os.cfg

58

cfg_dir=/etc/nagios3/objetos/

monitorear

     

A

través

de

este

archivo,

podremos

 

enlistar

los

contactos para

los

cuales nos

interesa enviar notificaciones

de

alarmas

y

monitoreo.

El

archivo

"contacts_nagi

os2.cfg"

se

# Nuevo usuario, creado para el laboratorio

compone

de

29

de esta gua.

dos

partes:

30

define contact{

 
   

***

En

la

primera, declaramos los

contactos

con

toda

su

información

específica, es el caso

tal

de:

nombre,

alias,

correo, periodo

de notificación, etc.

31

contact_name

Luis

32

alias

Luis Alberto

 

/etc/nagios3/conf.

33

service_notification_period

24x7

 

d/contacts_nagio

     

s2.cfg

34

host_notification_period

24x7

 
35 service_notification_options w,u,c,r 36 host_notification_options d,r service_notification_commands notify- 37
35
service_notification_options
w,u,c,r
36
host_notification_options
d,r
service_notification_commands
notify-
37
service-by-email
host_notification_commands
notify-
38
host-by-email
email
39
grupo4@liate.edu
40
}
***
En
la
segunda parte,
declaramos los
grupos
de
contactos,
en
donde
indicamos
un
nombre,
un
alias y ademas
declaramos los
miembros
o
contactos que
pertenecerán a
este grupo, tal
como
se
# Grupo de contactos creado para pruebas
muestra en los
siguientes
59
de laboratorio:
cuadros.
60
define contactgroup{
61
contactgroup_name
liate
62
alias
Alumnos de LIATE
63
members
Luis
64
}
A través de este archivo, podremos crear los grupos de host que requerimos para poder
A
través
de
este
archivo,
podremos
crear
los
grupos de host
que
requerimos
para
poder
agrupar
todos
los
dispositivos
de la forma en
que mejor nos
resulte,
por
ejemplo:
/etc/nagios3/conf.
d/hostgroups_na
gios2.cfg
40
Grupo para los equipos de Laboratorio
Hostgroup para
servidores
"HTTP", PING,
SSH, etc.
41
define hostgroup {
42
hostgroup_name
servidores
alias
Servidores para
43
Nagios
members
grupo1.liate.edu,grupo2.liate.edu,grupo3.liat
e.edu,grupo4.liate.edu,grupo5.liate.edu,grup
44
o6.liate.edu,grupo7.liate.edu
45
}
En
este
archivo,
es
donde
podremos
crear
y/o
modificar
los
diferentes
servicios
que
queremos
monitorear
para
los
/etc/nagios3/conf.
dispositivos
d/services_nagio
#
Servicio
de
Ping,
para
equipos
de
que
nos
s2.cfg
28
laboratorio
interese.
29
define service {
   

Será

en

este

archivo

donde

declararemos

los

grupos

de

host

que

deseamos

monitorear

para

los

diferentes

servicios,

por

ejemplo:

Declaramos un

servicio

de

ping

para

los

equipos

que

pertenecen

al

grupo

de

30

hostgroup_name

servidores

"laboratorio"

31

service_description

PING

 
 

#

check_command

 

32

check_ping!100.0,20%!500.0,60%

 

check_command

 

33

check_ping!100.0,20%!500.0,60% -t 5

34

use

generic-service

 
 

notification_interval

0 ; set > 0 if

 

35

you want to be renotified

36

}

 

37

   

38

# Servicio de Web para los servidores

 

39

define service {

 

40

hostgroup_name

servidores

 

41

service_description

HTTP

 

42

check_command

check_http

 

43

use

generic-service

 
 

notification_interval

0 ; set > 0 if you want

 

44

to be renotified

45

}

 

46

 

47

#

Servicio de mysql

 

48

define service{

 

49

use generic-service

 

50

hostgroup_name

servidores

51

service_description MYSQL

 

52

check_command

mycheck_mysql

53

}

54

 
 

#

Servicio

de

Temperatura

para

los

55

servidores

 

56

#define service {

 
 

#

hostgroup_name

57

servidores

 
 

#

service_description

58

TEMPERATURA

 

#

check_command

59

check_cputemp

60

#

use

generic-service

 

#

notification_interval

0 ; set > 0 if you

61

want to be renotified

 

62

#}

63

 
 

#

Servicio

de

Temperatura

para

los

64

servidores

 

65

define service {

 

66

 

hostgroup_name

servidores

 

67

 

service_description

CPU

 

68

 

check_command

check_temperatura

69

 

use

generic-service

 
 

notification_interval

0 ; set > 0 if you want

70

to be renotified

 

71

}

72

 
 

#

Servicio

de

Temperatura

para

los

73

servidores

 

74

define service {

 

75

 

host_name

localhost

 
   

service_description

76

TEMPERATURA

 
   

check_command

77

check_cputemp

 

78

 

use

generic-service

 

notification_interval

0 ; set > 0 if you

79

want to be renotified

80

}

81

 

82

#

Servicio de DNS para el grupo 2

83

define service {

 

84

 

host_name

grupo2.liate.edu

85

 

service_description

DNS

86

 

check_command

check_dns

87

 

use

generic-service

 

notification_interval

0 ; set > 0 if you

88

want to be renotified

89

}

90

 

91

#

Servicio de Correo para el grupo 6

92

define service {

 

93

 

host_name

grupo6.liate.edu

94

 

service_description

SMTP

95

 

check_command

check_smtp

96

 

use

generic-service

 

notification_interval

0 ; set > 0 if you

97

want to be renotified

98

}

Dentro del directorio "/etc/nagios3/ /etc/nagios3/objet os/laboratorio/fw. # Este host es para el Firewall
Dentro del
directorio
"/etc/nagios3/
/etc/nagios3/objet
os/laboratorio/fw.
#
Este
host
es
para
el
Firewall
de
cfg
1
Laboratorio
objetos",
podremos
crear y ordenar
los archivos de
host, de la
forma en que
mas nos guste,
debido a que el
servidor
Nagios leerá
cualquier
archivo que
esté dentro de
esta ruta.
Por
lo tanto,
para llevar un
buen orden de
todos
los
dispositivos,
los
podemos
agrupar
por
clientes, tipos,
modelos,
importancia,
2
define host{
etc.
En
nuestro
caso,
crearemos
un
directorio
mas
llamado
servidores,
para poner allí,
todos
los
archivos
de
configuración
de
los
host_name
diferentes
3
grupo1.liate.edu
equipos
alias
LAMP de
4
Nagios
5
address
192.168.0.1
   

check_command

 

check-

6

host-alive

 

7

 

check_interval

 

5

8

 

retry_interval

 

1

9

 

max_check_attempts

 

5

10

 

check_period

 

24x7

11

 

process_perf_data

 

0

12

 

retain_nonstatus_information

0

13

 

contact_groups

 

liate

14

 

notification_interval

 

30

15

 

notification_period

 

24x7

16

 

notification_options

 

d,u,r

17

 

hostgroups

 

servidores

18

 

parents

 

gateway

   

icon_image

 

19

servidor.png

   

statusmap_image

 

20

servidor.png

 
   

action_url

 

21

https://192.168.0.1

 

22

 

}

23

 
 

#

Este

host

es

para

el

Firewall

de

24

Laboratorio

 

25

define host{

 
   

host_name

 

26

grupo2.liate.edu

   

alias

DNS de

27

Nagios

 
   

address

 

28

192.168.0.11

   

check_command

 

check-

29

host-alive

 

30

 

check_interval

 

5

31

 

retry_interval

 

1

32

 

max_check_attempts

 

5

33

 

check_period

 

24x7

34

 

process_perf_data

 

0

35

 

retain_nonstatus_information

0

36

 

contact_groups

 

liate

37

 

notification_interval

 

30

38

 

notification_period

 

24x7

39

 

notification_options

 

d,u,r

40

 

hostgroups

 

servidores

41

 

parents

 

gateway

   

icon_image

 

42

servidor.png

   

statusmap_image

 

43

servidor.png

 
   

action_url

 

44

https://192.168.0.11

 

45

 

}

46

 
 

#

Este

host

es

para

el

Firewall

de

47

Laboratorio

 

48

define host{

 
   

host_name

 

49

grupo3.liate.edu

   

alias

Proxy de

50

Nagios

 
   

address

 

51

192.168.0.21

   

check_command

 

check-

52

host-alive

 

53

 

check_interval

 

5

54

 

retry_interval

 

1

55

 

max_check_attempts

 

5

56

 

check_period

 

24x7

57

 

process_perf_data

 

0

58

 

retain_nonstatus_information

0

59

 

contact_groups

 

liate

60

 

notification_interval

 

30

61

 

notification_period

 

24x7

62

 

notification_options

 

d,u,r

63

 

hostgroups

 

servidores

64

 

parents

 

gateway

   

icon_image

 

65

servidor.png

   

statusmap_image

 

66

servidor.png

 
   

action_url

 

67

https://192.168.0.21

 

68

 

}

69

 
 

#

Este

host

es

para

el

Firewall

de

70

Laboratorio

 

71

define host{

 
   

host_name

 

72

grupo4.liate.edu

   

alias

FTP de

73

Nagios

 
   

address

 

74

192.168.0.31

   

check_command

 

check-

75

host-alive

 

76

 

check_interval

 

5

77

 

retry_interval

 

1

78

 

max_check_attempts

 

5

79

 

check_period

 

24x7

80

 

process_perf_data

 

0

81

 

retain_nonstatus_information

0

82

 

contact_groups

 

liate

83

 

notification_interval

 

30

84

 

notification_period

 

24x7

85

 

notification_options

 

d,u,r

86

 

hostgroups

 

servidores

87

 

parents

 

gateway

   

icon_image

 

88

servidor.png

   

statusmap_image

 

89

servidor.png

 
   

action_url

 

90

https://192.168.0.31

 

91

 

}

92

 
 

#

Este

host

es

para

el

Firewall

de

93

Laboratorio

 

94

define host{

 
   

host_name

 

95

grupo5.liate.edu

   

alias

LTSP de

96

Nagios

 
   

address

 

97

192.168.0.41

   

check_command

 

check-

98

host-alive

 

99

 

check_interval

 

5

100

 

retry_interval

 

1

101

 

max_check_attempts

 

5

102

 

check_period

 

24x7

103

 

process_perf_data

 

0

104

 

retain_nonstatus_information

0

105

 

contact_groups

 

liate

106

 

notification_interval

 

30

107

 

notification_period

 

24x7

108

 

notification_options

 

d,u,r

109

 

hostgroups

 

servidores

110

 

parents

 

gateway

   

icon_image

 

111

servidor.png

   

statusmap_image

 

112

servidor.png

 
   

action_url

 

113

https://192.168.0.41

 

114

 

}

115

 
 

#

Este

host

es

para

el

Firewall

de

116

Laboratorio

 

117

define host{

 
   

host_name

 

118

grupo6.liate.edu

   

alias

Correo de

119

Nagios

 
   

address

 

120

192.168.0.51

   

check_command

 

check-

121

host-alive

 

122

 

check_interval

 

5

123

 

retry_interval

 

1

124

 

max_check_attempts

 

5

125

 

check_period

 

24x7

126

 

process_perf_data

 

0

127

 

retain_nonstatus_information

0

128

 

contact_groups

 

liate

129

 

notification_interval

 

30

130

 

notification_period

 

24x7

131

 

notification_options

 

d,u,r

132

 

hostgroups

 

servidores

133

 

parents

 

gateway

   

icon_image

 

134

servidor.png

   

statusmap_image

 

135

servidor.png

 
   

action_url

 

136

https://192.168.0.51

 

137

 

}

138

 
 

#

Este

host

es

para

el

Firewall

de

139

Laboratorio

 

140

define host{

 
   

host_name

 

141

grupo7.liate.edu

   

alias

Emisora de

142

Radio de Nagios

 
   

address

 

143

192.168.0.61

   

check_command

 

check-

144

host-alive

 

145

check_interval

 

5

 

146

retry_interval

1

 

147

max_check_attempts

5

 

148

check_period

 

24x7

 

149

process_perf_data

 

0

 

150

retain_nonstatus_information

 

0

 

151

contact_groups

 

liate

 

152

notification_interval

 

30

 

153

notification_period

 

24x7

 

154

notification_options

 

d,u,r

 

155

hostgroups

 

servidores

 

156

parents

gateway

 
   

icon_image

 

157

servidor.png

   

statusmap_image

 

158

servidor.png

   

action_url

 

159

https://192.168.0.61

 

160

}

/usr/local/nagios/li

   

bexec/cpu_temp.

sh

1

#!/bin/bash

 

2

 
   

#Copyright

(C)<2010>

<Luis

Reyes>

3

<larlxz(at)gmail(dot)com>

 
   

#Copyright

(C)<2010>

<Administracin

 

de

4

Redes, LIATE>

 
 

5

 
 

6

# SINTAXIS:

 

#

[temperatura de advertencia] [temperatura

7

crtica] [host]

 

8

#

EJEMPLO:

 

9

#

./check_cputemp.sh 50 70 localhost

 
 

#

Script

de

Nagios

para

obtener

la

10

temperatura del CPU desde lm-sensors

 

#

Es

necesario agregar el comando en

11

/usr/lib/nagios/etc/nrpe.cfg

 
 

#

para poder ejecutar el comando en forma

12

remota

 

13

#

EJEMPLO:

 
 

#

[check_cputemp]=/usr/local/nagios/libexec/c

14

heck_cputemp.sh 60 80 localhost

 

15

 
 

#

Version 1.0 (Probando en Ubuntu 10.04 y

16

Nagios 3.2.0)

 
 

#

Por favor reporte los errores al correo

17

electrnico anterior

 

18

 

19

#Declaraciones

 

20

CPUTEMP=/usr/bin/sensors

 

21

OK=0

 

22

WARNING=1

 

23

CRITICAL=2

 

24

UNKNOWN=3

 

25

 

26

#Declaracin de entrada

 

27

WARN=$1

 

28

CRIT=$2

 

29

hostname=$3

 

30

 

31

#Verificar que haya ping

 
 

if [ `ping $hostname

-c

1

|grep

-c

"1

32

received"` -lt 1 ]

 

33

 

then

34

 

35

 

36

fi

37

 
 

# Asegurarse que temperatura crtica sea

38

mayor que temperatura de advertencia

 

39

if [ $WARN -ge $CRIT ]; then

 
 

echo "UNKNOWN: El valor WARN no

40

puede ser mayor o igual que CRIT #value"

41

exit $UNKNOWN

 

42

fi

43

 

44

#Obtener temperatura desde lm-sensors

 
 

#HEAT=`$CPUTEMP -A | grep CPU | grep

45

Temp | cut -c 15,16`

 
 

HEAT=`$CPUTEMP -A | grep temp1 | cut -c

46

15,16`

47

 
 

# Revisar temperatura y responder de

48

acuerdo a $CRIT y $WARN

 

49

if [ $HEAT -lt $WARN ]; then

 
 

echo "OK: La Temperatura del CPU es

50

$HEAT grados Celsius - LIATE"

 

51

exit $OK

 

52

elif [ $HEAT -lt $CRIT ]; then

 
 

echo

"WARNING:

La

Temperatura

del

53

CPU es $HEAT grados Celsius - LIATE"

54

exit $WARNING

 

55

elif [ $HEAT -ge $CRIT ]; then

 
 

echo

"CRITICAL:

La

Temperatura

del

56

CPU es $HEAT grados Celsius - LIATE"

57

exit $CRITICAL

 

58

else

 

echo "UNKNOWN: Error desconocido, por

59

favor revise y repare el codigo"

 

60

exit $UNKNOWN

 
 

61

fi

 
     

Agregar

el

comando para que funcione el

plugin

de

/usr/local/nagios/

command[check_cputemp]=/usr/local/nagios

temperatura en forma remota

etc/nrpe.cfg

204

/libexec/check_cputemp.sh 60 80 localhost

COMPARACIÓN CON OTROS SERVIDORES

Monitoreo de redes y servidores

CON OTROS SERVIDORES Monitoreo de redes y servidores Las redes de cómputo de las organizaciones, se

Las redes de cómputo de las organizaciones, se vuelven cada vez más complejas y la exigencia de la operación es cada vez más demandante.

Las redes, cada vez más, soportan aplicaciones y servicios estratégicos de las organizaciones. Por lo cual el análisis y monitoreo de redes se ha convertido en una labor cada vez más importante y de carácter pro-activo para evitar problemas.

Estos sistemas ayudan a detectar fallas que conllevan muchas veces a consecuencias grabes en una empresa.

Estas herramientas ayudan a alertar el fallo ocurrido para poder solventarlo lo más pronto posible.

Gracias a su verificación 24 X 7 se pueden estar monitoreando no solo servidores y equipo de comunicación fuera, si no también servicios caídos como también aspectos críticos como espacio en discos, procesador, memoria, vulnerabilidades, etc.

Algunas de las características son:

Monitoreo 24/7

Los problemas son resueltos y pueden ser detectados antes de que experimenten caídas.

Sin necesidad de invertir en nuevo Hardware.

Docenas de comprobaciones, cada 5 o 15 minutos.

Informes regulares para mantener un seguimiento de estado de sus redes.

Solución de monitoreo y administración remota.

¿Qué monitores de red puedo implementar hoy en día?

WhatsUp Gold

monitores de red puedo implementar hoy en día? WhatsUp Gold WhatsUp Gold permite monitorear la Red,

WhatsUp Gold permite monitorear la Red, incluyendo servidores, aplicaciones, servicios, dispositivos, etc.

WhatsUp Gold es la mas intuitiva y fácil de usar herramienta de monitoreo de redes, ofreciendo descubrimiento de los dispositivos, mapeo, monitoreo, alertas y reportes.

Factibilidad Técnica

Alerta de eventos de bajo nivel en tiempo real, proporcionando mayor seguridad y resolviendo los problemas con mayor rapidez.

El sistema de monitorización de eventos le permite analizar y resolver los problemas de red relacionando el tiempo de inactividad o la limitación de recursos de la red con un evento concreto que se haya producido recientemente.

Los mapas de red personalizados.

La característica Selective Discovery (descubrimiento selectivo)

La notificación por SMS.

Identifique las tendencias históricas.

SmartScan explora la red utilizando SNMP para descubrir dispositivos y generar mapas para los distintos niveles de la red.

Ahora WhatsUP utiliza SQL server para almacenar su base de datos de dispositivos, servicios, configuraciones y logs.

Requerimientos de Sistema Operativo

32-bit and 64-bit support for the following OS versions: Windows 7, Windows Vista Ultimate (SP2 recommended), Windows Vista Business (SP2 recommended), Windows XP Professional SP3, Windows Server 2003 SP2 (or later), Windows Server 2008 SP2, or Windows Server 2008

R2

Microsoft SQL Server 2005 Express Edition

IIS 6, IIS 7, or Ipswitch Web Server

Requerimientos Hardware

 

Recomendado

Requerido

Procesador

2 Ghz.

o +

2 Ghz.

Ram

4 GB

2 Ghz.

Espacio SQL

3 GB

2 GB

Tarjeta de red

1 Gbps

100 Mbps

Modem GSM

Para SMS

No

Factibilidad Económica

El licenciamiento ofrece versiones para monitorear hasta 100, 300, 500 e ilimitados dispositivos.

El service agreement ya está incluido con el producto, y ofrece 12 meses de upgrades junto a soporte técnico en Español vía email, permitiendo tener el producto siempre actualizado y respaldo técnico de primer nivel.

Licencia WhatsUp Gold 500

Dispositivos:

500

Precio:

$7,495.00

Monitorización de aplicaciones:

Incluido

Total Costo:

$7,495.00 (Q.59,960.00)

Gastos Incurridos

REQUERIMIENTOS

COSTO APROXIMADO

HP Proliant DL585

Q. 32,000.00

Windows Server 2003 SP 2

Q.2,000.00

Microsoft SQL Server 2005

Q.1,900

WhatsUp Gold 500

Q.59,960.00

Costo aproximado total del servicio:

Q.95,860.00

Más de 25 dispositivos

$2,195.00

Más de 100 dispositivos

$2,695.00

Más de 300 dispositivos

$4,995.00

Más de 500 dispositivos

$7,495.00

Análisis Costo Beneficio

 

Año 0

Año 1

Año 2

Año3

Costo Desarrollo

Q.95,860.00

Costo Operación

Q.2,400.00

Q.2,500.00

Q.2,600.00

Factor 11%

1.00

0.90

0.81

0.73

Costos Ajustados

Q.95,860.00

Q.2,000.00

Q.2,100.00

Q.2,200.00

Costos Acumulado

Q.95,860.00

Q.97,860.00

Q.99,960.00

Q.102,160.00

Beneficios

 

Q.60,000.00

Q.65,000.00

Q.70,000.00

Factor 11%

1.00

0.90

0.81

0.73

Benef. Ajustados

0.00

Q.59,360.00

Q.58,600.00

Q.56,400.00

Benef. Acumula.

0.00

Q.59,360.00

Q.117,960.00

Q.174,360.00

Beneficio - Costo

Q.-95,860

Q.-38,500

Q.18,000

Q.72,200

ROI

Ingresos

(-)

Costo Total Inv.

(/)

Costo Total Inv.

Total

Totales

ROI

Q.60,000.00

-

Q.95,860.00

/

Q.95,860.00

0.37 %

Tiempo

/

Costos

Costos

Beneficios

Beneficios

Años

Acumulados

Acumulados

0

Q.95,860

Q.2,000.00

1

Q.97,860

Q.2,100.00

Q.59,360

Q.58,600

2

Q.99,960

Q.2,200

Q.117,960

Q.56,400

3

Q.102,160

Q.174.360

60000 50000 40000 Tiempo / Años 30000 Costos Acumulados Beneficios Acumulados 20000 10000 0 1
60000
50000
40000
Tiempo / Años
30000
Costos Acumulados
Beneficios Acumulados
20000
10000
0
1
2
3
4

Nagios

NAGIOS es un sistema open source popular para monitorear una red. Monitorea los hosts y servicios que se especifiquen, alertando cuando algo sale mal y nuevamente cuando está bien.

cuando algo sale mal y nuevamente cuando está bien. Originalmente tuvo el nombre de Netsaint, fue

Originalmente tuvo el nombre de Netsaint, fue creado y es mantenido actualmente por Ethan Galstad, junto con un grupo de desarrolladores de software que mantienen también varios plugins.

Nagios fue originalmente diseñado para ser ejecutado en Linux, pero también se ejecuta bien en variantes de Unix.

Nagios está licenciada bajo la GNU General Public License Version 2 publicada por la Free Software Fundation.

Factibilidad Técnica

Monitoreo de servicios de red (SMTP, POP3, HTTP, NTTP, ICMP, SNMP).

Monitoreo de los recursos de un host (carga del procesador, uso de los discos, logs del sistema).

Monitoreo remoto, a través de túneles SSL.

Diseño simple de plugins, que permiten a los usuarios desarrollar sus propios chequeos de servicios dependiendo de sus necesidades.

Notificaciones a los contactos cuando ocurren problemas.

Interfaz web opcional, para observar el estado de la red actual, notificaciones, Historial de problemas, archivos de logs, etc.

SMS-gateway.

Requerimientos para instalar Nagios

Recomendado

Procesador:

PIV 1.8 Ghz.

RAM:

1 GB.

Tarjeta de red:

10/100/1000

Sistema O.P.

Linux

Factibilidad Económica

REQUERIMIENTOS

COSTO APROXIMADO

PC Intel DualCore

Q. 2,000.00

Apache, MySQL, PHP

---

Nagios

---

Instalación y Mantenimiento

---

Costo aproximado total del servicio:

Q.2,000.00

Licencia:

Nagios está bajo la GNU General Public License versión 2 publicada por la Free Software Foundation. Esto le da permiso legal de copiar, distribuir y/o modificar Nagios bajo ciertas condiciones. Lea el archivo 'LICENSE' en la distribución de Nagios o lea la versión en línea para mayores detalles.

Nagios es proporcionado COMO ES sin NINGUNA GARANTÍA DE NINGUN TIPO, INCLUYENDO GARANTÍA DE DISEÑO, COMERCIALIZACIÓN Y ADECUARSE PARA UN PROPOSITO EN PARTICULAR.

Análisis Costo Beneficio

 

Año 0

Año 1

Año 2

Año3

Costo Desarrollo

Q.2,000.00

Costo Operación

Q.1,200.00

Q.1,250.00

Q.1,300.00

Factor 11%

1.00

0.90

0.81

0.73

Costos Ajustados

Q.2,000.00

Q.1,000.00

Q.1,100.00

Q.1,200.00

Costos Acumulado

Q.2,000.00

Q.3,000.00

Q.4,100.00

Q.5,300.00

Beneficios

 

Q.50,000.00

Q.55,000.00

Q.60,000.00

Factor 11%

1.00

0.90

0.81

0.73

Benef. Ajustados

0.00

Q.49,360.00

Q.48,600.00

Q.46,400.00

Benef. Acumula.

0.00

Q.49,360.00

Q.97,960.00

Q.144,360.00

Beneficio - Costo

Q.-2,000.00

Q.19,360.00

Q.93,860.00

Q.139,060.00

ROI

Ingresos

(-)

Costo Total Inv.

(/)

Costo Total Inv.

Total

Totales

ROI

Q.50,000.00

-

Q.2,000.00

/

Q.2,000.00

0.24 %

(Esto indica que es un retorno de inversión del 240%)

Tiempo

Costos

Costos

Beneficios

Beneficios

/ Años

Acumulados

Acumulados

0

Q.2,000.00

Q.1,000.00

1

Q.3,000.00

Q.1,100.00

Q.49.360.00

Q.48,600.00

2

Q.4,100.00

Q.1,200.00

Q.97,960.00

Q.46,400.00

3

Q.5,300.00

Q.144.360.00

50000 45000 40000 35000 30000 Tiempo / Años 25000 Costos Acumulados 20000 Beneficios Acumulados 15000
50000
45000
40000
35000
30000
Tiempo / Años
25000
Costos Acumulados
20000
Beneficios Acumulados
15000
10000
5000
0
1
2
3
4

Zenoss

Zenoss Monitoreo de redes y servidores Uno de los principales problemas a la hora de trabajar

Monitoreo de redes y servidores

Uno de los principales problemas a la hora de trabajar con software de código abierto es la dificultad de la puesta en marcha de los mismos. Dependencias incumplidas, errores no documentados y posts en foros en busca de una mano salvadora son solo algunas de las actividades normales durante la instalación y configuración de herramientas open source.

Zenoss es una herramienta de monitoreo de redes y servidores basada en otras herramientas como cacti y nagios (ambas open source) que permite a los administradores tener un control completo sobre la infraestructura de red.

La administración de Zenoss se realiza desde una interface web lo que simplifica la tarea a personas novatas en la aplicación y posibilita la configuración de la herramienta prácticamente sin la necesidad de modificar archivos de configuración.

Zenoss nos permite realizar monitoreo de sistemas operativos windows y linux prácticamente sin la necesidad de instalar agentes en los sistemas operativos.

Sus principales características son:

Monitoreo de servicios

Monitoreo de procesos

Monitoreo de performance

Colección de logs

 Monitoreo de performance  Colección de logs Funcionalidades de Zenoss  Monitoreo de performance. 

Funcionalidades de Zenoss

Monitoreo de performance.

Administración y monitoreo de eventos.

Tablero de control web.

Reporte y alerta.

Remediación automática.

Visualización de red: a medida su red crece Zenoss incluye mapeo de dependencias.

Posibilidad de integrarse con Google Maps.

Reportes Comunitarios.

Zenoss incluye mapeo de dependencias.  Posibilidad de integrarse con Google Maps.  Reportes Comunitarios. que

que

Analisis Comparativo entre

NAGIOS y ZENOSS

NAGIOS

Creado durante los años 1999 2001, es probablemente haya sido padre de los sistemas de monitoreo bajo Linux, funciona con agentes encargados de monitorear los host de la red, estos se encargan de ir a traer información para actualizar el sistema gracias a los “plugins “ con los que cuenta NAGIOS se puede monitorear muchos servicios de los servidores dando gran flexibilidad al sistema.

ZENOSS

Creado por el año 2006, es un software que ha venido a competir con NAGIOS por su capacidad y diseño tecnológico.

Funciona en Linux, Mac Os, VMWare. FreeBSD, se distribuye en rpm para su instalación en RedHat, CentOs y Fedora y para los demás se distribuyen las fuentes para ser compilado.

Es capaz de detectar los equipos en la red automáticamente, puede importar los pulgins de NAGIOS, no necesita agentes en las maquinas remotas, pues ejecuta por SSH comandos necesarios para extraer la información.

CONCLUSIONES

Estas herramientas ayudan a alertar el fallo ocurrido para poder solventarlo lo más pronto posible.

Alerta de eventos de bajo nivel en tiempo real, proporcionando mayor seguridad y resolviendo los problemas con mayor rapidez.

RECOMENDACIONES

El sistema de monitorización de eventos le permite analizar y resolver los problemas de red relacionando el tiempo de inactividad o la limitación de recursos de la red con un evento concreto que se haya producido recientemente.

El service agreement ya está incluido con el producto, y ofrece 12 meses de upgrades junto a soporte técnico en Español vía email, permitiendo tener el producto siempre actualizado y respaldo técnico de primer nivel.

BIBLIOGRAFÍA

CALDERON, Natanel. Cómo Instalar NAGIOS 3 en Ubuntu 10.04 (Lucid Lynx) [en línea]. Febrero 2,010 [referencia de 30 de agosto 2,010]. Disponible en Web:

DEBIANHELP. Nagios Installation and configuration [en línea]. [Referencia de 30 de agosto 2,010]. Disponible en Web:

GALSTAD, Ethan. NRPE Documentation [en línea]. Mayo 2,007 [referencia de 30 de agosto 2,010]. Disponible en Web: