1 | Gestion y Monitoreo de Redes |
---|
2 | Instalacion y Configuracion de Smokeping |
---|
3 | |
---|
4 | Notas: |
---|
5 | ------ |
---|
6 | * Comandos que empiezan con un "$" implica que deberia ejecutar el comando |
---|
7 | como un usuario general - no como root. |
---|
8 | * Comandos que empiezan con un "#" implica que deberia trabajar como el usuario root. |
---|
9 | * Comandos con lineas mas especificas (como "GW-RTR>" o "mysql>") implica que esta |
---|
10 | ejecutando el comando en un equipo remoto o dentro otro programa. |
---|
11 | * Si una linea termina con un "\" esto indica que el comando sigue en la proxima |
---|
12 | linea y Ud. deberia tratar el comando si como fuera en una sola linea. |
---|
13 | |
---|
14 | Ejercicios |
---|
15 | ----------- |
---|
16 | |
---|
17 | Ejercicios Parte I |
---|
18 | ------------------ |
---|
19 | |
---|
20 | 0. Haz un log in en su PC o abre una ventana de terminal como el usuario sysadmin. |
---|
21 | |
---|
22 | 1. Instalar Smokeping |
---|
23 | |
---|
24 | $ sudo apt-get install smokeping |
---|
25 | |
---|
26 | (Ya esta instalado en sus maquinas) |
---|
27 | |
---|
28 | 2. Configuracion initial |
---|
29 | |
---|
30 | $ cd /etc/smokeping/config.d |
---|
31 | $ ls -l |
---|
32 | |
---|
33 | -rwxr-xr-x 1 root root 578 2010-02-26 01:55 Alerts |
---|
34 | -rwxr-xr-x 1 root root 237 2010-02-26 01:55 Database |
---|
35 | -rwxr-xr-x 1 root root 413 2010-02-26 05:40 General |
---|
36 | -rwxr-xr-x 1 root root 271 2010-02-26 01:55 pathnames |
---|
37 | -rwxr-xr-x 1 root root 859 2010-02-26 01:55 Presentation |
---|
38 | -rwxr-xr-x 1 root root 116 2010-02-26 01:55 Probes |
---|
39 | -rwxr-xr-x 1 root root 155 2010-02-26 01:55 Slaves |
---|
40 | -rwxr-xr-x 1 root root 8990 2010-02-26 06:30 Targets |
---|
41 | |
---|
42 | Los archivos que tiene que cambiar (como minimo) son: |
---|
43 | |
---|
44 | * Alerts |
---|
45 | * General |
---|
46 | * Probes |
---|
47 | * Targets |
---|
48 | |
---|
49 | Abre Alerts |
---|
50 | |
---|
51 | $ sudo vi Alerts |
---|
52 | |
---|
53 | Actualizar el parte arriba en el archivo donde dice: |
---|
54 | |
---|
55 | *** Alerts *** |
---|
56 | to = alertee@address.somewhere |
---|
57 | from = smokealert@company.xy |
---|
58 | |
---|
59 | Y cambiar estes campos a: |
---|
60 | |
---|
61 | *** Alerts *** |
---|
62 | to = sysadmin@localhost |
---|
63 | from = smokeping-alert@localhost |
---|
64 | |
---|
65 | Si vas a crear pedidos de las alertas de Smokeping la direccion |
---|
66 | de "to" seria un alias por una cola en el sistema de pedidas |
---|
67 | (como "net" en Request Tracker). Vamos a hacer esto despues. |
---|
68 | |
---|
69 | Agrega una alerta nueva por mas tarde: |
---|
70 | |
---|
71 | +rttbadstart |
---|
72 | type = rtt |
---|
73 | # in milliseconds |
---|
74 | pattern = ==S,==U |
---|
75 | priority = 1 |
---|
76 | comment = fuera servicio al initializacion |
---|
77 | |
---|
78 | * "==S, ==U" signifcan "at Startup" y "not Up" |
---|
79 | * "priority = 1" significa si hay multiples alertas definidas por |
---|
80 | este nodo y si multiples alertas concuerdan, asi manda sola la |
---|
81 | alerta con la prioridad mas alta. |
---|
82 | |
---|
83 | Ahora graba el archivo, sale y abre otro archivo, "General": |
---|
84 | |
---|
85 | $ sudo vi General |
---|
86 | |
---|
87 | Cambia los siguiente lineas: |
---|
88 | |
---|
89 | owner |
---|
90 | contact |
---|
91 | cgiurl |
---|
92 | mailhost |
---|
93 | |
---|
94 | A algo asi: |
---|
95 | |
---|
96 | owner = Usuario de Administracion del Taller de Gestion de Redes |
---|
97 | contact = sysadmin@localhost |
---|
98 | cgiurl = http://localhost/cgi-bin/smokeping.cgi |
---|
99 | mailhost = localhost |
---|
100 | |
---|
101 | Ahora graba el archivo, sale y abre otro archivo, "Probes": |
---|
102 | |
---|
103 | $ sudo vi Probes |
---|
104 | |
---|
105 | La entrada corriente en el archivo de Probes esta bien, pero si quiere usar |
---|
106 | chequeos adicionales de Smokeping se puede agregarlos aqui, y se puede |
---|
107 | especificar su comportamiento por defecto. Tambien se puede especificar su |
---|
108 | comportamiento en Targes. |
---|
109 | |
---|
110 | Abajo es un ejemplo del archivo Probes que especificaria que usar para hacer |
---|
111 | un chequeo de HTTP y retardo de DNS y, tambien, el chequeo principal de |
---|
112 | FPing que se usa para ver el retardo de ping: |
---|
113 | |
---|
114 | *** Probes *** |
---|
115 | |
---|
116 | + FPing |
---|
117 | |
---|
118 | binary = /usr/bin/fping |
---|
119 | |
---|
120 | + EchoPingHttp |
---|
121 | |
---|
122 | + DNS |
---|
123 | binary = /usr/bin/dig |
---|
124 | pings = 5 |
---|
125 | step = 180 |
---|
126 | lookup = www.nsrc.org |
---|
127 | |
---|
128 | Cambia su archivo de Probes para que tiene las entradas arriba. Grabe el |
---|
129 | archivo y sale. |
---|
130 | |
---|
131 | Ahora reinitializamos el servicio de Smokeping para verificar que no hay |
---|
132 | errores en nuestros archvios de configuracion: |
---|
133 | |
---|
134 | $ sudo /etc/init.d/smokeping stop |
---|
135 | $ sudo /etc/init.d/smokeping start |
---|
136 | |
---|
137 | Tambien puede hacer: |
---|
138 | |
---|
139 | $ sudo /etc/init.d/smokeping restart |
---|
140 | |
---|
141 | o |
---|
142 | |
---|
143 | $ sudo /etc/init.d/smokeping reload |
---|
144 | |
---|
145 | _Pero_ hay un defecto en el escripto deinitializacion de Smokeping que no |
---|
146 | siempre termina todo los procesos de Smokeping si usa "restart" en vez d |
---|
147 | usar "stop" y "start". |
---|
148 | |
---|
149 | "Reload" es para recargar la configuracion en memoria. |
---|
150 | |
---|
151 | |
---|
152 | 3. Configurar el monitoreo de nodos |
---|
153 | |
---|
154 | La mayoria de su tiempo configurando Smokeping va a estar |
---|
155 | en el archivo /etc/smokeping/config.d/Targets. |
---|
156 | |
---|
157 | Por este taller vamos a hacer lo siguiente: |
---|
158 | |
---|
159 | |
---|
160 | Usa el chequeo de FPing para verificar: |
---|
161 | - todo los PCs |
---|
162 | - El NOC |
---|
163 | - Los conmutadores |
---|
164 | - Los enrutadores |
---|
165 | |
---|
166 | Puede usar el diagrama de nuestra Red (http://noc/trac/) o revisar las entradas |
---|
167 | en /etc/hosts en tu maquina para encontrar las direcciones de IP por cada nodo. |
---|
168 | |
---|
169 | Crea un poco jerarchia en sus menus de Smokeping. Por ejemplo: |
---|
170 | |
---|
171 | PCs |
---|
172 | Enrutadores |
---|
173 | Conmutadores |
---|
174 | |
---|
175 | Agrega un chequeo por retardo de HTTP or todo los PCs del curso. Asi tendra |
---|
176 | que agreagar otra categoria como: |
---|
177 | |
---|
178 | Servidor HTTP PCs |
---|
179 | |
---|
180 | Si tenga tiempo agrega algunas nodos externo a nuestra Red del curso. |
---|
181 | |
---|
182 | Mira a los chequeos adicionales de Smokeping y considera implementando |
---|
183 | algunos de ellos: |
---|
184 | |
---|
185 | http://oss.oetiker.ch/smokeping/probe/index.en.html |
---|
186 | |
---|
187 | Tratando de explicar todo los detalles de syntactico de archivos de |
---|
188 | Smokeping es sumamente dificil. Es mucho mas facil aprender esto a traves |
---|
189 | ejemplos. Asi, el NOC tiene un instante de Smokeping completamente |
---|
190 | configurado. |
---|
191 | |
---|
192 | Los archivos de configuracion por el NOC estan disponible aqui: |
---|
193 | |
---|
194 | http://noc/configs/etc/smokeping |
---|
195 | http://noc/configs/etc/smokeping/config.d |
---|
196 | |
---|
197 | Revisa estes archivos y intenta de hacer todo sugerido por arriba. |
---|
198 | |
---|
199 | Buena suerte! |
---|
200 | |
---|
201 | 4. Agrega un cheque de retardo de DNS |
---|
202 | |
---|
203 | Agrega una entrada en la jerarchia del menu por retardo de DNS. Chequea |
---|
204 | una direccion externa a nuestro curso (nsrc.org, por ejemplo) - y una |
---|
205 | direccion interna (noc). Esta se vea asi en el archivo de Targets: |
---|
206 | |
---|
207 | $ sudo vi /etc/smokeping/config.d/Targets |
---|
208 | |
---|
209 | ++ DNS |
---|
210 | probe = DNS |
---|
211 | menu = Chequeo de retardo de DNS |
---|
212 | title = DNS Latency |
---|
213 | |
---|
214 | +++ nsrc |
---|
215 | host = nsrc.org |
---|
216 | |
---|
217 | +++ noc |
---|
218 | host = noc.aroc |
---|
219 | |
---|
220 | Graba el archivo Targets y sale. |
---|
221 | |
---|
222 | Reinitializar Smokeping para ver los cambios: |
---|
223 | |
---|
224 | $ sudo /etc/init.d/smokeping stop |
---|
225 | $ sudo /etc/init.d/smokeping start |
---|
226 | |
---|
227 | |
---|
228 | 5. Manda alertas de Smokeping a la cola Net en Request Tracker |
---|
229 | |
---|
230 | Ya hicemos esto en RT y en /etc/aliases. Solo tiene que apuntar las |
---|
231 | alertas de Smokeping a nuestra instalacion de RT. Abre el archvio |
---|
232 | Alerts: |
---|
233 | |
---|
234 | $ sudo vi /etc/smokeping/config.d/Alerts |
---|
235 | |
---|
236 | Y cambia: |
---|
237 | |
---|
238 | to = sysadmin@localhost |
---|
239 | |
---|
240 | a |
---|
241 | |
---|
242 | to = net@localhost |
---|
243 | |
---|
244 | Ahora cuando Smokeping manda un correo de alerta el correo va a terminar |
---|
245 | como un pedido en la cola de Net en Request Tracker. |
---|
246 | |
---|
247 | Ahora defina alertas por algunos nodos. Puede initializar alertas por |
---|
248 | un chequeo (Probe) en el archivo /etc/smokeping/config.d/Probes, o por |
---|
249 | un nodo individualmente en el archivo Targets (esto es similar al concepto |
---|
250 | de Nagios...). |
---|
251 | |
---|
252 | En nuestro caso vamos a editor Targets y initializar una alerta por nuestro |
---|
253 | chequeo de retardo de DNS. Adicionalmente, si agregamos un chequeo por retardo |
---|
254 | de DNS que no existe podemos ver un pedido en RT mas rapido (es artificial, per |
---|
255 | bueno como ejemplo): |
---|
256 | |
---|
257 | $ sudo vi /etc/smokeping/config.d/Targets |
---|
258 | |
---|
259 | Busca lo siguiente en el archivo: |
---|
260 | |
---|
261 | ++ DNS |
---|
262 | probe = DNS |
---|
263 | menu = External DNS Check |
---|
264 | title = DNS Latency |
---|
265 | |
---|
266 | +++ nsrc |
---|
267 | host = nsrc.org |
---|
268 | |
---|
269 | +++ noc |
---|
270 | host = noc.aroc |
---|
271 | |
---|
272 | Y, despues que la entrada por "noc" agrega: |
---|
273 | |
---|
274 | +++ noexist |
---|
275 | host = does.not.exist |
---|
276 | alerts = rttbadstart |
---|
277 | |
---|
278 | Graba el archivo y sale. Reinitializa Smokeping: |
---|
279 | |
---|
280 | $ sudo /etc/init.d/smokeping stop |
---|
281 | $ sudo /etc/init.d/smokeping start |
---|
282 | |
---|
283 | Vas a ver el siguiente error en su pantalla: |
---|
284 | |
---|
285 | WARNING: Hostname 'does.not.exist' does currently not resolve to |
---|
286 | an IPv6 or IPv4 address |
---|
287 | |
---|
288 | Esto es esperado porque el nodo "does.not.exist" no es valido. Pero, Smokeping |
---|
289 | va a initializar y la alerta de "rttbadstart" va a mandar un correo a la cola |
---|
290 | de Net en Request Tracker. |
---|
291 | |
---|
292 | Abre su navegador a: |
---|
293 | |
---|
294 | http://localhost/rt/ |
---|
295 | |
---|
296 | Y haz un login como "sysadmin" para ver el pedido nuevo. El pedido deberia ver |
---|
297 | como asi: |
---|
298 | |
---|
299 | "[SmokeAlert] rttbadstart is active on |
---|
300 | AROC.DNSProbe.RT-test" |
---|
301 | |
---|
302 | |
---|
303 | 6. Graficos de MultiHost |
---|
304 | |
---|
305 | Despues que ha definido un grupo de nodos bajo un solo chequeo en su archivo |
---|
306 | /etc/smokeping/config.d/Targes Ud. puede crear un solo grafico que muestra los |
---|
307 | resultados de todo las pruebas de Smokeping por todo los nodos que ya ha |
---|
308 | definido. |
---|
309 | |
---|
310 | La ventaja es que puede comparar, por ejemplo, un grupo de nodos que estas |
---|
311 | monitoreando con un solo chequeo. |
---|
312 | |
---|
313 | La definicion de graficos de Multihost es _muy_ maoso - asi, adelante prestando |
---|
314 | mucha atencion! ;-) |
---|
315 | |
---|
316 | Pare crear un grafico MultiHost abre el archivo Targets: |
---|
317 | |
---|
318 | $ sudo vi /etc/smokeping/config.d/Targets |
---|
319 | |
---|
320 | Si tiene una seccion por los chequeos de FPing definido asi (esto es solo un |
---|
321 | ejemplo! Su archivo de Targets, probablemente se vea diferente): |
---|
322 | |
---|
323 | + Local |
---|
324 | menu = Local |
---|
325 | title = Red Local |
---|
326 | |
---|
327 | ++ MaquinaLocal |
---|
328 | menu = Maquina Local |
---|
329 | title = Nodo de Smokeping |
---|
330 | host = localhost |
---|
331 | |
---|
332 | ++ pc1 |
---|
333 | menu = pc1 |
---|
334 | title = pc1 |
---|
335 | host = pc1 |
---|
336 | |
---|
337 | ++ pc2 |
---|
338 | menu = pc2 |
---|
339 | title = pc2 |
---|
340 | host = pc2 |
---|
341 | |
---|
342 | ++ pc3 |
---|
343 | menu = pc3 |
---|
344 | title = pc3 |
---|
345 | host = pc3 |
---|
346 | |
---|
347 | Podria hacer una definicion de MultiHost directamente despues la ultima entrada |
---|
348 | de nodo usando el chequeo de FPing: |
---|
349 | |
---|
350 | + MultiHostPCs |
---|
351 | menu = Ping de MultiHost |
---|
352 | title = Tiempo de Respuesta Consolidada de Ping |
---|
353 | host = /Local/MaquinaLocal /Local/pc1 /Local/pc2 \ |
---|
354 | /Local/pc3 |
---|
355 | |
---|
356 | Nota como puede poner la definicion en multiples lineas usando el caracter "\" |
---|
357 | para especificar una linea nueva. |
---|
358 | |
---|
359 | Graba el archivo, sale y reinitializa Smokeping: |
---|
360 | |
---|
361 | $ sudo /etc/init.d/smokeping stop |
---|
362 | $ sudo /etc/init.d/smokeping start |
---|
363 | |
---|
364 | Deberia ver un grafico nuevo debajo el menu "Ping de MultiHost" en su interfaz de |
---|
365 | Smokeping. Este grafico tendra lineas de diferente colores por cada nodo que |
---|
366 | definiste. |
---|
367 | |
---|
368 | |
---|
369 | 7. Instancias Salve (Esclavo) |
---|
370 | |
---|
371 | Esto es solo descripcion por ser caso si quiere intentar este tipo de |
---|
372 | configuracion despues que el taller termina. |
---|
373 | |
---|
374 | La idea detras de correr mas de un instante de de Smokeping en varias |
---|
375 | lugares es que esto le permite monitorear un solo host y/o servicio con |
---|
376 | varios puntos de vista. Para hacer esto tiene que armar una instalacion de |
---|
377 | Smoekping que corre normalmente. Despues, arma otra instalacion de Smokeping |
---|
378 | en otro lugar que mide algunos nodos y/o servicios en comun. Esta instalacion |
---|
379 | de Smokeping puede mandar los resultados de su monitorizacion al servidor |
---|
380 | "master" de Smokeping - y, el servidor master puede mostrar los resultados |
---|
381 | juntos en un solo grafico. |
---|
382 | |
---|
383 | Esto te permite ver como el mundo vea su Red y/o servicios desde otro |
---|
384 | puntos de vista. |
---|
385 | |
---|
386 | Esto puede ser una herramienta bien poderosa para resolver problemas de |
---|
387 | nodos, en su red y/o con servicios si solamente tiene informacion local. |
---|
388 | |
---|
389 | En forma grafica se vea asi: |
---|
390 | |
---|
391 | [esclavo 1] [esclavo 2] [esclavo 3] |
---|
392 | | | | |
---|
393 | +-------+ | +--------+ |
---|
394 | | | | |
---|
395 | v v v |
---|
396 | +---------------+ |
---|
397 | | master | |
---|
398 | +---------------+ |
---|
399 | |
---|
400 | Puede ver ejemplos de este tipo de configuracion aqui: |
---|
401 | |
---|
402 | http://oss.oetiker.ch/smokeping-demo/ |
---|
403 | |
---|
404 | Mira a los graficos. Nota que varios graficos tiene multiple lineas con |
---|
405 | colores y el indice de colores indicando valores como "median RTT from |
---|
406 | mipsrv01" - Estes no son graficos de MultiHost, pero graficos con datos |
---|
407 | de servidores de Smokeping externos (esclavos). |
---|
408 | |
---|
409 | Para configurar Smokeping en forma "master/slave" puede ver la documentacion |
---|
410 | aqui: |
---|
411 | |
---|
412 | |
---|
413 | http://oss.oetiker.ch/smokeping/doc/smokeping_master_slave.en.html |
---|
414 | |
---|
415 | Tambien tenemos un ejemplo con los pasos en el archivo |
---|
416 | sample-smokeping-master-slave.txt. Hay un enlace a este archivo en la |
---|
417 | agenda del curso. |
---|
418 | |
---|