1 | Instalacin y Configuracin de Nagios |
---|
2 | |
---|
3 | Notas: |
---|
4 | ------ |
---|
5 | * Los comandos precedidos por "$" implican que debe ejecutar el comando |
---|
6 | como usuario genrico - no como root |
---|
7 | * Los comandos precedidos por "#" implican que debera estar trabajando |
---|
8 | como usuario root. |
---|
9 | * Los comandos con inicios de lnea ms especficos como "RTR-GW>" o |
---|
10 | "mysql>" indican que debe ejecutar los comandos en un equipo remoto, |
---|
11 | o dentro otro programa |
---|
12 | |
---|
13 | |
---|
14 | Ejercicios |
---|
15 | --------- |
---|
16 | |
---|
17 | PARTE IX |
---|
18 | Ejercicios Opcionales |
---|
19 | ------------------------------------------------------------------------------- |
---|
20 | |
---|
21 | 1. Compruebe que Nagios est activo |
---|
22 | -------------------------------------- |
---|
23 | |
---|
24 | En vez de simplemente comprobar que un servidor est operativo en las PCs |
---|
25 | virtuales, podramos tambien comprobar que el servicio de Nagios est |
---|
26 | disponible, solicitando el camino especfico /nagios3/. Esto implica que |
---|
27 | hay que pasar ms opciones al plugin de check_http. |
---|
28 | |
---|
29 | Para ver una descripcin 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 | |
---|
34 | y por supuesto, puede navegar hasta la documentacin de Nagios o buscar |
---|
35 | en Google sobre check_http. Puede incluso ejecutar el plugin a mano para |
---|
36 | realizar una comprobacin nica: |
---|
37 | |
---|
38 | # /usr/lib/nagios/plugins/check_http -H localhost -u /nagios3/ |
---|
39 | |
---|
40 | As que la meta es configurar Nagios para ejecutar check_http de esta |
---|
41 | manera: |
---|
42 | |
---|
43 | (pista: /etc/nagios-plugins/config/http.cfg) |
---|
44 | |
---|
45 | define 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 | |
---|
52 | define 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 | autenticacin (porque est tratando de bajar la pgina sin proveer el usuario |
---|
64 | y la clave). Hay un parmetro extra que se puede pasar a check_http_arg para |
---|
65 | proveer tal informacin. A ver si lo puede encontrar. |
---|
66 | |
---|
67 | ADVERTENCIA: en la tradicin de "Debian lo sabe todo", la configuracin del |
---|
68 | comando check_http en /etc/nagios-plugins/config/http.cfg *NO ES LA MISMA* |
---|
69 | que se recomienda en la documentacin de Nagios. Le falta $ARG1$, as que |
---|
70 | cualquier parmetro 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 razn es que tuvimos que crear una nueva definicin de comando |
---|
75 | "check_http_arg". Usted podra crear una ms especfica como "check_nagios", |
---|
76 | o en su lugar podra modificar la definicin de check_http de Ubuntu para |
---|
77 | ajustarla al uso estndar. |
---|
78 | |
---|
79 | 2. Compruebe que SNMP est activo en el servidor NOC |
---|
80 | ---------------------------------------------------- |
---|
81 | |
---|
82 | - Este ejercicio no funcionar si no complet la instalacin 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 lnea: |
---|
94 | |
---|
95 | mibs: |
---|
96 | |
---|
97 | ... a: |
---|
98 | |
---|
99 | mibs ALL |
---|
100 | |
---|
101 | Y agregue esta otra lnea: |
---|
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 travs de los |
---|
109 | diferentes sitios web sobre Nagios. Puede ver cules plugins estn 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 especficas. |
---|
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 adems, an mejor, puede crear chequeos de servicio muy fcilmente. |
---|
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 cado en tal nodo. Al usar |
---|
152 | chequeos de servicio tales como check_http, check_ssh y check_telnet, sto |
---|
153 | es lo que hacen tambin. |
---|
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 slo lectura definida en clase y solicitar via SNMP |
---|
158 | una varialble, en particular la descripcin 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 |
---|
168 | define 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 asegrese de que la lnea "command_line" |
---|
174 | es una sola lnea. |
---|
175 | |
---|
176 | Note que "command_line" es una sola lnea. Si lo copia y pega en su editor, |
---|
177 | la lnea 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 comprobacin 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 |
---|
187 | define 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 includo 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 |
---|
205 | define 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 deberan 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, debera ver el chequeo de SNMP |
---|
231 | para el nodo NOC, y para cualesquiera otros nodos haya colocado en la lnea |
---|
232 | "members" de ms arriba. |
---|
233 | |
---|
234 | FIN. |
---|
235 | |
---|