Agenda: ejercicios-nagios-IX-opcional.txt

File ejercicios-nagios-IX-opcional.txt, 8.4 KB (added by admin, 7 years ago)
Line 
1Instalaci—n y Configuraci—n de Nagios
2
3Notas:
4------
5* Los comandos precedidos por "$" implican que debe ejecutar el comando
6  como usuario genŽrico - no como root
7* Los comandos precedidos por "#" implican que deber’a estar trabajando
8  como usuario root.
9* Los comandos con inicios de l’nea m‡s espec’ficos como "RTR-GW>" o
10  "mysql>" indican que debe ejecutar los comandos en un equipo remoto,
11  o dentro otro programa
12
13
14Ejercicios
15---------
16
17PARTE IX
18Ejercicios Opcionales
19-------------------------------------------------------------------------------
20
211. Compruebe que Nagios est‡ activo
22--------------------------------------
23
24En vez de simplemente comprobar que un servidor est‡ operativo en las PCs
25virtuales, podr’amos tambien comprobar que el servicio de Nagios est‡
26disponible, solicitando el camino espec’fico /nagios3/. Esto implica que
27hay que pasar m‡s opciones al plugin de check_http.
28
29Para ver una descripci—n de las opciones disponibles, escriba esto:
30
31      # /usr/lib/nagios/plugins/check_http                      (ayuda breve)
32      # /usr/lib/nagios/plugins/check_http --help               (en detalle)
33
34y por supuesto, puede navegar hasta la documentaci—n de Nagios o buscar
35en Google sobre check_http. Puede incluso ejecutar el plugin a mano para
36realizar una comprobaci—n œnica:
37
38     # /usr/lib/nagios/plugins/check_http -H localhost -u /nagios3/
39
40As’ que la meta es configurar Nagios para ejecutar check_http de esta
41manera:
42
43        (pista: /etc/nagios-plugins/config/http.cfg)
44
45define command{
46        command_name    check_http_arg
47        command_line    /usr/lib/nagios/plugins/check_http -H '$HOSTADDRESS$' '$ARG1$'
48        }
49
50        (pista: /etc/nagios3/conf.d/services_nagios2.cfg_
51
52define service {
53        hostgroup_name                  nagios-servers
54        service_description             NAGIOS
55        check_command                   check_http_arg!-u /nagios3/
56        use                             generic-service
57}
58
59        y por supuesto, necesitar‡ crear un hostgroup llamado nagios-servers para
60        asignarle este servicio (pista: /etc/nagios3/conf.d/hostgroups_nagios2.cfg)
61
62        Una vez hecho esto, compruebe que Nagios le advierte sobre un fallo de
63        autenticaci—n (porque est‡ tratando de bajar la p‡gina sin proveer el usuario
64        y la clave). Hay un par‡metro extra que se puede pasar a check_http_arg para
65        proveer tal informaci—n. A ver si lo puede encontrar.
66       
67        ADVERTENCIA: en la tradici—n de "Debian lo sabe todo", la configuraci—n del
68        comando check_http en /etc/nagios-plugins/config/http.cfg *NO ES LA MISMA*
69        que se recomienda en la documentaci—n de Nagios. Le falta $ARG1$, as’ que
70        cualquier par‡metro que se pase a check_http es ignorado. As’ que usted
71        pensar‡ que est‡ monitorizando /nagios3/, pero en realidad est‡ monitorizando
72        a root!
73
74        Por esta raz—n es que tuvimos que crear una nueva definici—n de comando
75        "check_http_arg". Usted podr’a crear una m‡s espec’fica como "check_nagios",
76        o en su lugar podr’a modificar la definici—n de check_http de Ubuntu para
77        ajustarla al uso est‡ndar.
78
792. Compruebe que SNMP est‡ activo en el servidor NOC
80----------------------------------------------------
81
82    - Este ejercicio no funcionar‡ si no complet— la instalaci—n de MIBs SNMP
83        adicionales al comienzo de la semana, y si no configur— /etc/snmp/snmp.conf
84        apropiadamente. Si no est‡ seguro, Žstos eran los pasos:
85
86          # apt-get install wget
87          # cd /usr/share/mibs
88          # wget http://noc.ws.nsrc.org/mibs/sample-mibs.tar
89          # tar xvf sample-mibs.tar
90
91          * Edite el archivo /etc/snmp/snmp.conf
92
93      Cambie esta l’nea:
94       
95          mibs:
96       
97      ... a:
98
99          mibs ALL
100
101      Y agregue esta otra l’nea:
102
103          mibdirs /usr/share/mibs/cisco:/usr/share/mibs/iana
104
105 
106    - Primero tendr‡ que agregar un chequeo de servicio para SNMP en el archivo
107        /etc/nagios3/conf.d/services_nagios2.cfg. Aqu’ es donde Nagios es impresionante.
108        Hay cientos, si no miles, de chequeos de servicio disponibles a travŽs de los
109        diferentes sitios web sobre Nagios. Puede ver cu‡les plugins est‡n instalados
110        por Ubuntu via el paquete nagios3, mirando en el siguiente directorio:
111
112    # ls /usr/lib/nagios/plugins
113
114        Como podr‡ verificar, ya existe un plugin llamado check_snmp disponible. Si est‡
115        interesado en las opciones del plugin, puede ejecutarlo as’:
116
117    # /usr/lib/nagios/plugins/check_snmp                                (ayuda breve)
118    # /usr/lib/nagios/plugins/check_snmp --help                 (en detalle)
119
120        Puede usar el plugin check_snmp junto con Nagios para crear comprobaciones de
121        sistema muy complejas o espec’ficas.
122
123    - Ahora para ver los chequeos de servicio y host que se han creado con el plugin
124        check_snmp, puede echar un vistazo en /etc/nagios-plutins/config/snmp.cfg. Ver‡
125        una gran cantidad de chequeos pre-configurados que usan SNMP, incluyendo:
126
127      snmp_load
128      snmp_cpustats
129      snmp_procname
130      snmp_disk
131      snmp_mem
132      snmp_swap
133      snmp_procs
134      snmp_users
135      snmp_mem2
136      snmp_swap2
137      snmp_mem3
138      snmp_swap3
139      snmp_disk2
140      snmp_tcpopen
141      snmp_tcpstats
142      snmp_bgpstate
143      check_netapp_uptime
144      check_netapp_cupuload
145      check_netapp_numdisks
146      check_compaq_thermalCondition
147     
148        Y adem‡s, aœn mejor, puede crear chequeos de servicio muy f‡cilmente.
149        Para el caso de verificar que snmpd (el agente SNMP de Linux) est‡
150        activo usaremos una solicitud SNMP. Si no recibimos una respuesta, entonces
151        Nagios puede asumir que el servicio SNMP est‡ ca’do en tal nodo. Al usar
152        chequeos de servicio tales como check_http, check_ssh y check_telnet, Žsto
153        es lo que hacen tambiŽn.
154
155    - En nuestro caso, vamos a crear un nuevo chequeo de servicio y llamarlo
156        "check_system". Este chequeo se conectar‡ al nodo especificado, usar‡
157        una comunidad de s—lo lectura definida en clase y solicitar‡ via SNMP
158        una varialble, en particular la descripci—n del sistema, o el OID
159        "sysDescr.0".
160
161    - Para ello, comience por editar:
162
163    # editor /etc/nagios-plugins/config/snmp.cfg
164
165        Al comienzo (o al final, como quiera) agregue la siguiente entrada:
166
167# 'check_system' command definition
168define command{
169       command_name    check_system
170       command_line    /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o sysDescr.0
171        }
172     
173        COPIE Y PEGUE esto. No lo escriba a mano y asegœrese de que la l’nea "command_line"
174        es una sola l’nea.
175
176          Note que "command_line" es una sola l’nea. Si lo copia y pega en su editor,
177          la l’nea probablemente se partir‡ en dos, y tendr‡ que unirlas en una.
178         
179    - Ahora necesita editar otro archivo y agregar el chequeo de servicio. Haremos
180        esta comprobaci—n a todos los servidores de la clase, o al groupo "debian-servers".
181
182    # editor /etc/nagios3/conf.d/services_nagios2.cfg
183
184      Al final, agregue:
185
186# Comprobar que SNMP est‡ activo en todos los servidores
187define service {
188        hostgroup_name                  snmp-servers
189        service_description             SNMP
190        check_command                   check_system!xxxxxx
191        use                             generic-service
192        notification_interval           0 ; set > 0 if you want to be renotified
193}
194
195      "xxxxxx" es la comunidad definida anteriormente en clase.
196       
197        Note que hemos inclu’do nuestra propia comunidad aqu’ en lugar de
198        configurarla globalmente en el archivo snmp.cfg.
199       
200    - Ahora debemos crear el grupo "snmp-servers". Edite el fichero
201        /etc/nagios3/conf.d/hostgroups_nagios2.cfg y vaya al final. Agregue lo
202        siguiente:
203     
204# Lista de nodos con SNMP
205define hostgroup {
206           hostgroup_name       snmp-servers
207                   alias        snmp servers
208                   members      noc,localhost,pc1,pc2,pc3,pc4...pc36,rtr1,rtr2,rtr3...rtr9
209          }
210         
211        - Note que en "members" puede agregar todas las PCs y todos los enrutadores, ya
212          que todos deber’an tener SNMP activado en este momento. Recuerde EXCLUIR su PC
213          y usar localhost en su lugar.
214
215    - Ahora verifique que todos los cambios son correctos y reinicie Nagios.
216   
217      # service nagios3 restart
218
219    - *** DEFECTO en Ubutnu 12.04 LTS ***
220        El paquete net-snmp 5.6.x no se instala el MIB IANAifType-MIB. Esto va a causar un
221        error que va a causar que falla el plugin para snmp. Para rectifar la situacion
222        haz lo siguiente (como root):
223
224                # cd /usr/share/mibs
225                # wget http://www.iana.org/assignments/ianaiftype-mib/ianaiftype-mib
226                # mv ianaiftype-mib ianaiftype-mib.my
227
228       Y, ahora puede seguir.
229
230    - Si oprime el enlace "Service Detail" en el menœ, deber’a ver el chequeo de SNMP
231        para el nodo NOC, y para cualesquiera otros nodos haya colocado en la l’nea     
232        "members" de m‡s arriba.
233
234        FIN.
235