Agenda: ejercicios-smokeping.txt

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