| 1 | Gestion y Monitoreo de Redes |
|---|
| 2 | Instalacion y Configuracion de Nagios |
|---|
| 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 | |
|---|
| 23 | 1. Para instalar Nagios version 3 en Ubuntu podria hacer esto como el usuario |
|---|
| 24 | sysadmin usando "sudo" o como root: |
|---|
| 25 | |
|---|
| 26 | # apt-get install nagios3 |
|---|
| 27 | |
|---|
| 28 | Ya esta instalado Version 3 de Nagios, pero puede correr el comando si quiere. |
|---|
| 29 | |
|---|
| 30 | 2. Nagios deberia estar corriendo ya |
|---|
| 31 | |
|---|
| 32 | - En un Navegador vaya al: |
|---|
| 33 | |
|---|
| 34 | http://localhost/nagios3/ |
|---|
| 35 | |
|---|
| 36 | - Cuando pregunta por un usuario y clave usa: |
|---|
| 37 | |
|---|
| 38 | user: nagiosadmin |
|---|
| 39 | pass: <clave del taller> |
|---|
| 40 | |
|---|
| 41 | 3. Miramos a los archivos instalados... |
|---|
| 42 | |
|---|
| 43 | # cd /etc/nagios3/ |
|---|
| 44 | |
|---|
| 45 | # ls -l |
|---|
| 46 | -rw-r--r-- 1 root root 1882 2008-12-18 13:42 apache2.conf |
|---|
| 47 | -rw-r--r-- 1 root root 10524 2008-12-18 13:44 cgi.cfg |
|---|
| 48 | -rw-r--r-- 1 root root 2429 2008-12-18 13:44 commands.cfg |
|---|
| 49 | drwxr-xr-x 2 root root 4096 2009-02-14 12:33 conf.d |
|---|
| 50 | -rw-r--r-- 1 root root 26 2009-02-14 12:36 htpasswd.users |
|---|
| 51 | -rw-r--r-- 1 root root 42539 2008-12-18 13:44 nagios.cfg |
|---|
| 52 | -rw-r----- 1 root nagios 1293 2008-12-18 13:42 resource.cfg |
|---|
| 53 | drwxr-xr-x 2 root root 4096 2009-02-14 12:32 stylesheets |
|---|
| 54 | |
|---|
| 55 | # ls -l conf.d/ |
|---|
| 56 | |
|---|
| 57 | -rw-r--r-- 1 root root 1695 2008-12-18 13:42 contacts_nagios2.cfg |
|---|
| 58 | -rw-r--r-- 1 root root 418 2008-12-18 13:42 extinfo_nagios2.cfg |
|---|
| 59 | -rw-r--r-- 1 root root 1152 2008-12-18 13:42 generic-host_nagios2.cfg |
|---|
| 60 | -rw-r--r-- 1 root root 1803 2008-12-18 13:42 generic-service_nagios2.cfg |
|---|
| 61 | -rw-r--r-- 1 root root 210 2009-02-14 12:33 host-gateway_nagios3.cfg |
|---|
| 62 | -rw-r--r-- 1 root root 976 2008-12-18 13:42 hostgroups_nagios2.cfg |
|---|
| 63 | -rw-r--r-- 1 root root 2167 2008-12-18 13:42 localhost_nagios2.cfg |
|---|
| 64 | -rw-r--r-- 1 root root 1005 2008-12-18 13:42 services_nagios2.cfg |
|---|
| 65 | -rw-r--r-- 1 root root 1609 2008-12-18 13:42 timeperiods_nagios2.cfg |
|---|
| 66 | |
|---|
| 67 | Archivos con un "2" en su nombre no han cambiado desde version 2 de Nagios. |
|---|
| 68 | El archivo host-gateway_nagios3.cfg fue cambiado entre versiones, asi tiene |
|---|
| 69 | un nombre nuevo. |
|---|
| 70 | |
|---|
| 71 | PARTE II |
|---|
| 72 | Configurando Equipos en Nagios |
|---|
| 73 | ----------------------------------------------------------------------------- |
|---|
| 74 | |
|---|
| 75 | 0. El Orden de la Configuracion |
|---|
| 76 | |
|---|
| 77 | Conceptualmente vamos a construir nuestra configuracion desde arriba por abajo de nuestra Red. |
|---|
| 78 | Asi, vamos a definir entradas por los rutadores y conmutadores (switches) primero. Despues esto |
|---|
| 79 | empezamos con los PCs, etc... |
|---|
| 80 | |
|---|
| 81 | Llendo desde arriba por abajo habra definido los dispositivos que acutan como parientes por el |
|---|
| 82 | resto de los dispositvos primero. |
|---|
| 83 | |
|---|
| 84 | 1. Configurar Nagios monitorear las rutadores del curso |
|---|
| 85 | |
|---|
| 86 | # cd /etc/nagios3/conf.d/ |
|---|
| 87 | |
|---|
| 88 | # vi routers.cfg |
|---|
| 89 | |
|---|
| 90 | define host { |
|---|
| 91 | use generic-host |
|---|
| 92 | host_name gw-rtr |
|---|
| 93 | alias rutador del borde |
|---|
| 94 | address 10.10.10.1 |
|---|
| 95 | } |
|---|
| 96 | |
|---|
| 97 | Now define entries for our two group routers: |
|---|
| 98 | |
|---|
| 99 | define host { |
|---|
| 100 | use generic-host |
|---|
| 101 | host_name grupo1-rtr |
|---|
| 102 | alias rutador del grupo 1 |
|---|
| 103 | address 10.10.10.65 |
|---|
| 104 | } |
|---|
| 105 | |
|---|
| 106 | define host { |
|---|
| 107 | use generic-host |
|---|
| 108 | host_name grupo2-rtr |
|---|
| 109 | alias rutador del grupo 2 |
|---|
| 110 | address 10.10.10.129 |
|---|
| 111 | } |
|---|
| 112 | |
|---|
| 113 | Graba y salga del archivo /etc/nagios3/conf.d/routers.cfg |
|---|
| 114 | |
|---|
| 115 | |
|---|
| 116 | 2. Configuramos los Conmutadores (Switches) |
|---|
| 117 | |
|---|
| 118 | Nota que cada switch tendra una relacion de pariente con uno de las rutadores. |
|---|
| 119 | |
|---|
| 120 | # vi switches.cfg |
|---|
| 121 | |
|---|
| 122 | Primero el switch de "backbone" |
|---|
| 123 | |
|---|
| 124 | define host { |
|---|
| 125 | use generic-host |
|---|
| 126 | host_name bb-sw |
|---|
| 127 | alias switch de backbone |
|---|
| 128 | address 10.10.10.2 |
|---|
| 129 | parents gw-rtr |
|---|
| 130 | } |
|---|
| 131 | |
|---|
| 132 | Nota las entradas de "parents" - Ya hicimos las entradas de los "parents" en |
|---|
| 133 | el archivo rutadores.cfg, asi esto funciona. |
|---|
| 134 | |
|---|
| 135 | Ahora los dos switches de los dos grupos del taller: |
|---|
| 136 | |
|---|
| 137 | define host { |
|---|
| 138 | use generic-host |
|---|
| 139 | host_name grupo1-sw |
|---|
| 140 | alias conmutador del grupo 1 |
|---|
| 141 | address 10.10.10.66 |
|---|
| 142 | parents grupo1-rtr |
|---|
| 143 | } |
|---|
| 144 | |
|---|
| 145 | define host { |
|---|
| 146 | use generic-host |
|---|
| 147 | host_name grupo2-sw |
|---|
| 148 | alias conmutador del grupo 2 |
|---|
| 149 | address 10.10.10.130 |
|---|
| 150 | parents grupo2-rtr |
|---|
| 151 | } |
|---|
| 152 | |
|---|
| 153 | Graba y salga del archivo /etc/nagios3/conf.d/switches.cfg |
|---|
| 154 | |
|---|
| 155 | |
|---|
| 156 | 3. Actualizar el archivo routers.cfg con entradas de "parents" |
|---|
| 157 | |
|---|
| 158 | El rutador de borde no tendra un pariente porque tenemos que decidir a parar de hacer monitoreo |
|---|
| 159 | en algun parte de la topologia de la Red. |
|---|
| 160 | |
|---|
| 161 | Los does rutaders de los grupos si tienen parientes. Revisa el diagrama de la Red: |
|---|
| 162 | |
|---|
| 163 | http://noc/trac/wiki/DiagramaRed |
|---|
| 164 | |
|---|
| 165 | si no entiendes porque son los dos rutadores de los grupos. |
|---|
| 166 | |
|---|
| 167 | # vi /etc/nagios3/conf.d/routers.cfg |
|---|
| 168 | |
|---|
| 169 | Agrega "parents" a las dos entradas de los rutadores de los grupos: |
|---|
| 170 | |
|---|
| 171 | define host { |
|---|
| 172 | use generic-host |
|---|
| 173 | host_name grupo1-rtr |
|---|
| 174 | alias rutador del grupo 1 |
|---|
| 175 | address 10.10.10.65 |
|---|
| 176 | parents bb-sw |
|---|
| 177 | } |
|---|
| 178 | |
|---|
| 179 | define host { |
|---|
| 180 | use generic-host |
|---|
| 181 | host_name grupo2-rtr |
|---|
| 182 | alias rutador del grupo 2 |
|---|
| 183 | address 10.10.10.129 |
|---|
| 184 | parents bb-sw |
|---|
| 185 | } |
|---|
| 186 | |
|---|
| 187 | Graba y salga del archivo /etc/nagios3/conf.d/routers.cfg |
|---|
| 188 | |
|---|
| 189 | |
|---|
| 190 | 4. Create entries for each PC in the classroom |
|---|
| 191 | |
|---|
| 192 | Ahora en un solo archivo vamos a definir todo los PCs en la sala. Puede hacer esto en varios archivos |
|---|
| 193 | (grupo1-pcs.cfg, grupo2-pcs.cfg) si quiere, pero por nuestro curso usamos un solo archivo. |
|---|
| 194 | |
|---|
| 195 | Abajo hay tres entradas de ejemplo. Usa estos para hacer las entradas por todo los PCs |
|---|
| 196 | |
|---|
| 197 | Nota los parientes (parents) de cada uno. PCs de grupo 1 tienen como pariente el switch del grupo 1, |
|---|
| 198 | o grupo1-sw. PCs de grupo 2 tienen como pariente el switch del grupo 2 or grupo2-sw. |
|---|
| 199 | |
|---|
| 200 | IMPORTANTE! No agrega una entrada por tu PC! Esto ya esta hecho en el archivo |
|---|
| 201 | /etc/nagios3/conf.d/localhost_nagios2.cfg - En este archivo puede definir el "parent" por el localhost |
|---|
| 202 | para que el instante de Nagios aparesca bien en los graficos de su Red. |
|---|
| 203 | |
|---|
| 204 | Puede ver el archivo /etc/hosts para ver todo los PCs, conmutadores y rutatores de la sala. No todo los |
|---|
| 205 | PCs definied in /etc/hosts estan funcionando, pero haz una entrada por cada uno. |
|---|
| 206 | |
|---|
| 207 | Grupo 1 |
|---|
| 208 | ------- |
|---|
| 209 | pc1 a pc18 |
|---|
| 210 | |
|---|
| 211 | Grupo 2 |
|---|
| 212 | ------- |
|---|
| 213 | pc19 a pc33 |
|---|
| 214 | |
|---|
| 215 | Ahora, hacemos las entradas: |
|---|
| 216 | |
|---|
| 217 | # vi pcs.cfg |
|---|
| 218 | |
|---|
| 219 | # Nuestro NOC |
|---|
| 220 | |
|---|
| 221 | define host { |
|---|
| 222 | use generic-host |
|---|
| 223 | host_name noc |
|---|
| 224 | alias Centro de Operaciones |
|---|
| 225 | address 10.10.10.5 |
|---|
| 226 | parents bb-sw |
|---|
| 227 | } |
|---|
| 228 | |
|---|
| 229 | # PCs de Grupo 1 |
|---|
| 230 | |
|---|
| 231 | define host { |
|---|
| 232 | use generic-host |
|---|
| 233 | host_name pc1 |
|---|
| 234 | alias pc1 grupo 1 |
|---|
| 235 | address 10.10.10.71 |
|---|
| 236 | parents grupo1-sw |
|---|
| 237 | } |
|---|
| 238 | |
|---|
| 239 | # PCs de Grupo 2 |
|---|
| 240 | |
|---|
| 241 | define host { |
|---|
| 242 | use generic-host |
|---|
| 243 | host_name pc19 |
|---|
| 244 | alias pc19 grupo 2 |
|---|
| 245 | address 10.10.10.139 |
|---|
| 246 | parents grupo2-sw |
|---|
| 247 | } |
|---|
| 248 | |
|---|
| 249 | Ahora sigue y agrega entradas por todo los PCs. |
|---|
| 250 | |
|---|
| 251 | Graba y salga del archivo /etc/nagios3/conf.d/pcs.cfg |
|---|
| 252 | |
|---|
| 253 | Ahora verificamos que nuestros archivos estan bien configurados |
|---|
| 254 | |
|---|
| 255 | |
|---|
| 256 | 5. Verificamos que nuestros archivos estan bien configurados |
|---|
| 257 | |
|---|
| 258 | # nagios3 -v /etc/nagios3/nagios.cfg |
|---|
| 259 | |
|---|
| 260 | ... Deberia ver : |
|---|
| 261 | |
|---|
| 262 | Total Warnings: NN (aviso de falta de chequeo de servicios. No se preocupa.) |
|---|
| 263 | Total Errors: 0 |
|---|
| 264 | |
|---|
| 265 | Things look okay - No serious problems were detected during the check. |
|---|
| 266 | |
|---|
| 267 | |
|---|
| 268 | 5. Recargar / Reinicializar Nagios |
|---|
| 269 | |
|---|
| 270 | # /etc/init.d/nagios3 stop |
|---|
| 271 | # /etc/init.d/nagios3 start |
|---|
| 272 | |
|---|
| 273 | Puede hacer "restart" pero no es 100% confiable. |
|---|
| 274 | |
|---|
| 275 | 6. Vaya al interfaz de la Web (http://localhost/nagios3) y verifica que las |
|---|
| 276 | entradas (PCs, conmutadores, rutadores) estan visibles. Apreta "Host Detail" |
|---|
| 277 | por la izquierda en Nagios para ver todo esto. |
|---|
| 278 | |
|---|
| 279 | |
|---|
| 280 | PART III |
|---|
| 281 | Configurar un Chequeo de Servicio por el NOC del Taller |
|---|
| 282 | ----------------------------------------------------------------------------- |
|---|
| 283 | |
|---|
| 284 | 0. Configurando |
|---|
| 285 | |
|---|
| 286 | Ahora que tenemos el hardware configurado vamos a configurar monitoreo de services, hacer grupos |
|---|
| 287 | de hardware y servicios, etc. |
|---|
| 288 | |
|---|
| 289 | 1. Associar un chequeo de servicio por el NOC del Taller |
|---|
| 290 | |
|---|
| 291 | # vi hostgroups_nagios2.cfg |
|---|
| 292 | |
|---|
| 293 | - Busca el hostgroup con nombre "ssh-servers". En la linea de "Members" cambia la linea: |
|---|
| 294 | |
|---|
| 295 | members localhost |
|---|
| 296 | |
|---|
| 297 | a |
|---|
| 298 | |
|---|
| 299 | members localhost,noc |
|---|
| 300 | |
|---|
| 301 | Salga y graba el archivo. |
|---|
| 302 | |
|---|
| 303 | Verifica que todo esta bien: |
|---|
| 304 | |
|---|
| 305 | # nagios3 -v /etc/nagios3/nagios.cfg |
|---|
| 306 | |
|---|
| 307 | Reinitializar Nagios para ver los servicios nuevos asociado con el PC noc: |
|---|
| 308 | |
|---|
| 309 | # /etc/init.d/nagios3 Restart |
|---|
| 310 | |
|---|
| 311 | Apreta "Service Detail" para ver su entrada nueva. |
|---|
| 312 | |
|---|
| 313 | |
|---|
| 314 | PART IV |
|---|
| 315 | Definir Servicios por todo sus PCs |
|---|
| 316 | ----------------------------------------------------------------------------- |
|---|
| 317 | |
|---|
| 318 | 1. Determinar que servicios estan corriendo por que dispositivos |
|---|
| 319 | |
|---|
| 320 | - Esto es la clave de como uno usa Nagios y las herramientas de monitoreo. |
|---|
| 321 | Ahora decidimos que servicios vamos a monitorear para cada PC en nuestra sala: |
|---|
| 322 | |
|---|
| 323 | - En nuestro casa tenemos: |
|---|
| 324 | |
|---|
| 325 | rutadores: corriendo ssh y snmp |
|---|
| 326 | conmutadores: corriendo telnet y/o ssh y snmp |
|---|
| 327 | pcs: Corriendo ssh, http y snmp |
|---|
| 328 | |
|---|
| 329 | Configuramos Nagios hacer checqueos por estes servicios en las maquinas de la |
|---|
| 330 | sala |
|---|
| 331 | |
|---|
| 332 | |
|---|
| 333 | 2.) Verificar que SSH esta corriendo en los rutadores y en los PCs |
|---|
| 334 | |
|---|
| 335 | - En el archivo /etc/nagios3/conf.d/hostgroups_nagios2.cfg ya hay una entrada por |
|---|
| 336 | el chequeo del servicio de SSH. Solo tiene que redefinirlo. Al principio la |
|---|
| 337 | entrada se vea asi: |
|---|
| 338 | |
|---|
| 339 | # A list of your ssh-accessible servers |
|---|
| 340 | define hostgroup { |
|---|
| 341 | hostgroup_name ssh-servers |
|---|
| 342 | alias SSH servers |
|---|
| 343 | members localhost |
|---|
| 344 | } |
|---|
| 345 | |
|---|
| 346 | Que deberiamos cambiar? Si, la linea de "members". Va a ser largo con todo los PCs listado |
|---|
| 347 | _menos_ su PC. Por ejemplo: |
|---|
| 348 | |
|---|
| 349 | define hostgroup { |
|---|
| 350 | hostgroup_name ssh-servers |
|---|
| 351 | alias SSH servers |
|---|
| 352 | members localhost,pc1,pc2,pc3,pc4....,bb-rtr,grupo1-rtr,grupo2-rtr |
|---|
| 353 | } |
|---|
| 354 | |
|---|
| 355 | Pero, incluye todo los PCs |
|---|
| 356 | |
|---|
| 357 | - Ahora salga y graba el archivo y verifica que todo esta bien: |
|---|
| 358 | |
|---|
| 359 | # nagios3 -v /etc/nagios3/nagios.cfg |
|---|
| 360 | |
|---|
| 361 | - Si todo esta bien haz: |
|---|
| 362 | |
|---|
| 363 | # /etc/init.d/nagios3 stop |
|---|
| 364 | # /etc/init.d/nagios3 start |
|---|
| 365 | |
|---|
| 366 | y revisa todo en la pagina web de Nagios. |
|---|
| 367 | |
|---|
| 368 | 3.) Verifica que http esta corriendo en todo los PCs de la sala. |
|---|
| 369 | |
|---|
| 370 | - Esto es casi igual que el ejercicio anterior. Solo haz el cambio por el servicio |
|---|
| 371 | HTTP agregando los miembros de cada PC (rutadores y conmutadores no). Recuerda de |
|---|
| 372 | no agregar tu maquina porque ya esta configurado como "localhost" |
|---|
| 373 | |
|---|
| 374 | |
|---|
| 375 | PART V |
|---|
| 376 | Crear mas Grupos del Host |
|---|
| 377 | ----------------------------------------------------------------------------- |
|---|
| 378 | |
|---|
| 379 | 1. Actualizar /etc/nagios3/conf.d/hostgroups_nagios2.cfg |
|---|
| 380 | |
|---|
| 381 | - Por los ejercicios que vienen es muy util tener hech los grupos de hosts: |
|---|
| 382 | |
|---|
| 383 | debian-servers |
|---|
| 384 | routers |
|---|
| 385 | switches |
|---|
| 386 | |
|---|
| 387 | Abre el archivo /etc/nagios3/conf.d/hostgroups_nagios2.cfg y vas a ver una |
|---|
| 388 | entra para debian-servers que solo incluya el localhost. Actualizar esto |
|---|
| 389 | para incluir todo los PCs en la sala. |
|---|
| 390 | |
|---|
| 391 | # vi /etc/nagios3/conf.d/hostgroups_nagios2.cfg |
|---|
| 392 | |
|---|
| 393 | Actualizar la entrada que dice: |
|---|
| 394 | |
|---|
| 395 | # A list of your Debian GNU/Linux servers |
|---|
| 396 | define hostgroup { |
|---|
| 397 | hostgroup_name debian-servers |
|---|
| 398 | alias Debian GNU/Linux Servers |
|---|
| 399 | members localhost |
|---|
| 400 | } |
|---|
| 401 | |
|---|
| 402 | Para que "members" contiene todo los pcs. Mas o menos asi: |
|---|
| 403 | |
|---|
| 404 | members localhost,pc1,pc2,pc3,pc4,pc5,pc6,pc7,pc8,pc9 |
|---|
| 405 | pc10,pc11,pc12,pc13,pc14,pc15,pc16,pc17,pc18, etc... |
|---|
| 406 | |
|---|
| 407 | - La linea no puede tener un break. Tiene que seguir como una sola linea. |
|---|
| 408 | |
|---|
| 409 | - Despues agrega entradas por "routers" y uno por "switches" - Usa los |
|---|
| 410 | nombres "routers" y "switches" |
|---|
| 411 | |
|---|
| 412 | - Cuando terminas verifica que todo esta bien, recarga Nagios y vea los |
|---|
| 413 | cambos en el interfaz Web. |
|---|
| 414 | |
|---|
| 415 | PART V |
|---|
| 416 | Extended Host Information ("making your graphs pretty") |
|---|
| 417 | Informacion Extendida de los Hosts (maquinas) - "O, hacer los graficos bonitos" |
|---|
| 418 | ------------------------------------------------------------------------------- |
|---|
| 419 | |
|---|
| 420 | 1. Actualizar extinfo_nagios2.cfg |
|---|
| 421 | |
|---|
| 422 | - Si quiere usar iconos en los opciones de graficos que tiene Nagios |
|---|
| 423 | (el Statusmap) esto es el archivo donde se define esto. Tenemos tres |
|---|
| 424 | tipos de maquinas: |
|---|
| 425 | |
|---|
| 426 | Rutadores |
|---|
| 427 | Conmutadores |
|---|
| 428 | Servidores |
|---|
| 429 | |
|---|
| 430 | Hay un repositorio bastante grande de imagenes de iconos disponible aqui: |
|---|
| 431 | |
|---|
| 432 | /usr/share/nagios/htdocs/images/logos/ |
|---|
| 433 | |
|---|
| 434 | Estan instalado por defecto cuando instalamos Nagios en Ubuntu. Hay iconos |
|---|
| 435 | muy especifico de varios modelos de equipos, pero para hacer las cosas mas |
|---|
| 436 | simples vamos a usar los siguiente iconos: |
|---|
| 437 | |
|---|
| 438 | /usr/share/nagios/htodcs/images/logos/base/debian.* |
|---|
| 439 | /usr/share/nagios/htdocs/images/logos/cook/router.* |
|---|
| 440 | /usr/share/nagios/htdocs/images/logos/cook/switch.* |
|---|
| 441 | |
|---|
| 442 | - El proximo paso es editar el archivo /etc/nagios3/conf.d/extinfo_nagios2.cfg |
|---|
| 443 | y decir a Nagios que icons usar por cada maquina. |
|---|
| 444 | |
|---|
| 445 | # vi /etc/nagios3/conf.d/extinfo_nagios2.cfg |
|---|
| 446 | |
|---|
| 447 | Aqui es una muestra de como se vea una entrad para los rutadores. Ya hay una |
|---|
| 448 | entrada por debian-servers que funciona como esta. El modelo de rutador listado |
|---|
| 449 | no esta importante. El imagen es generico. |
|---|
| 450 | |
|---|
| 451 | define hostextinfo { |
|---|
| 452 | hostgroup_name routers |
|---|
| 453 | icon_image cook/router.png |
|---|
| 454 | icon_image_alt Cisco Routers (3600) |
|---|
| 455 | vrml_image router.png |
|---|
| 456 | statusmap_image cook/router.gd2 |
|---|
| 457 | } |
|---|
| 458 | |
|---|
| 459 | Ahora agrega una entrada por tus conmutadores. Recuerda que llamaste el grupo |
|---|
| 460 | "switches". Despues, graba el archivo, verifica que todo esta bien y revise el |
|---|
| 461 | Status Map en la interfaz web para ver como esta todo. |
|---|
| 462 | |
|---|
| 463 | |
|---|
| 464 | PART VI |
|---|
| 465 | Crear Grupos de Servicio |
|---|
| 466 | ----------------------------------------------------------------------------- |
|---|
| 467 | |
|---|
| 468 | 1. Crear un grupo de servicio para ssh y http for cada PC. |
|---|
| 469 | |
|---|
| 470 | - La idea es crear dos grupos de services. Es un dispositivo y los servicios |
|---|
| 471 | asociado con el dispostivo por los dos grupos. Para hacer esto tiene que |
|---|
| 472 | crear un archivo nuevo: |
|---|
| 473 | |
|---|
| 474 | # vi /etc/nagios3/conf.d/servicegroups.cfg |
|---|
| 475 | |
|---|
| 476 | Una muestra para el grupo 1 (no es completo): |
|---|
| 477 | |
|---|
| 478 | define servicegroup { |
|---|
| 479 | servicegroup_name servidores-grupo1 |
|---|
| 480 | alias Servidores de Grupo 1 |
|---|
| 481 | members pc1,SSH,pc1,HTTP,pc2,SSH,pc2,HTTP,pc3,SSH,pc3,HTTP,pc4,SSH,pc4,HTTP,pc5,SSH, |
|---|
| 482 | pc5,HTTP,pc6,SSH,pc6,HTTP,pc7,SSH,pc7,HTTP,pc8,SSH,pc8,HTTP,pc9,SSH,pc9,HTTP |
|---|
| 483 | } |
|---|
| 484 | |
|---|
| 485 | - La linea es una sola linea. No puede tener un break. |
|---|
| 486 | |
|---|
| 487 | - SSH y FTP estan en mayuscalas porque asi es como la "service_description" esta escrito en el |
|---|
| 488 | archivo /etc/nagios3/conf.d/services_nagios2.cfg. |
|---|
| 489 | |
|---|
| 490 | - Haz una entrada por los servidores de Grupo 2. |
|---|
| 491 | |
|---|
| 492 | - Graba sus cambios y salga del archivo. Verifica que todo esta bien y recarga Nagios. |
|---|
| 493 | |
|---|
| 494 | - Vea los grupos en el interfaz web bajo los menus "Servicegroup" |
|---|
| 495 | |
|---|
| 496 | |
|---|
| 497 | PART VII |
|---|
| 498 | Configurar acceso a "Guest" por el Interfaz Web de Nagios |
|---|
| 499 | ----------------------------------------------------------------------------- |
|---|
| 500 | |
|---|
| 501 | 1. Abre el archivo /etc/nagios3/cgi.cfg para dar acceso de solo leer (r/o) a |
|---|
| 502 | un usuario "guest" por el interfaz de Web. |
|---|
| 503 | |
|---|
| 504 | - Por defecto el usuario nagiosadmin tiene acceso leer y escribir (r/w) |
|---|
| 505 | a traves el interfaz Web de Nagios. Si quiere permitir otros usuarios |
|---|
| 506 | ver el estatus de su Red pero sin tener acceso de escribir (ejecutar |
|---|
| 507 | comandos, etc.) tenemos que hacer algunos cambios en el archivo de |
|---|
| 508 | cgi.cfg. |
|---|
| 509 | |
|---|
| 510 | - Primero hacemos el usuario "guest" con un clave en el archivo do htpasswd.user. |
|---|
| 511 | |
|---|
| 512 | # cd /etc/nagios3 |
|---|
| 513 | # htpasswd /etc/nagios3/htpasswd.users guest |
|---|
| 514 | |
|---|
| 515 | Puede usar cualquier clave, pero uno de "guest" no es tan malo... |
|---|
| 516 | |
|---|
| 517 | - Ahora abre el archivo /etc/nagios3.cfg and busca el tipo de acceso que quiere |
|---|
| 518 | dar. Vas a ver esto (hemos sacado todo los comentarios que haya en el archivo): |
|---|
| 519 | |
|---|
| 520 | authorized_for_system_information=nagiosadmin |
|---|
| 521 | authorized_for_configuration_information=nagiosadmin |
|---|
| 522 | authorized_for_system_commands=nagiosadmin |
|---|
| 523 | authorized_for_all_services=nagiosadmin |
|---|
| 524 | authorized_for_all_hosts=nagiosadmin |
|---|
| 525 | authorized_for_all_service_commands=nagiosadmin |
|---|
| 526 | authorized_for_all_host_commands=nagiosadmin |
|---|
| 527 | |
|---|
| 528 | Cambia estas entradas para permitir que el usuario "guest" tiene acceso a todo |
|---|
| 529 | la informacion que da Nagios, pero que no tiene acceso para hacer cambios. Lo |
|---|
| 530 | siguiente es tipico de acceso solo leer: |
|---|
| 531 | |
|---|
| 532 | authorized_for_system_information=nagiosadmin,guest |
|---|
| 533 | authorized_for_configuration_information=nagiosadmin,guest |
|---|
| 534 | authorized_for_system_commands=nagiosadmin |
|---|
| 535 | authorized_for_all_services=nagiosadmin,guest |
|---|
| 536 | authorized_for_all_hosts=nagiosadmin,guest |
|---|
| 537 | authorized_for_all_service_commands=nagiosadmin |
|---|
| 538 | authorized_for_all_host_commands=nagiosadmin |
|---|
| 539 | |
|---|
| 540 | - Haz los cambios, graba el archivo, salga del archivo, verifica que todo esta bien |
|---|
| 541 | y recargar Nagios. |
|---|
| 542 | |
|---|
| 543 | - Para ver si esta funcionando vay a http://localhost/nagios3 y en tu navegador tiene |
|---|
| 544 | que limpiar los "cookies" para que recibes el dialogo de login por Nagios. Haz un |
|---|
| 545 | recargar de la pagina y intenta de entrar como el usuario guest. |
|---|
| 546 | |
|---|
| 547 | |
|---|
| 548 | |
|---|
| 549 | |
|---|
| 550 | OPCIONAL (No traducido) |
|---|
| 551 | ----------------------- |
|---|
| 552 | |
|---|
| 553 | 1.) Verifica que SNMP esta corriendo en el NOC |
|---|
| 554 | |
|---|
| 555 | - Esto es mas complicado. Tiene que |
|---|
| 556 | |
|---|
| 557 | - First you will need to add in the appropriate service check for SNMP in the file |
|---|
| 558 | /etc/nagios3/conf.d/services_nagios2.cfg. This is where Nagios is impressive. There |
|---|
| 559 | are hundreds, if not thousands, of service checks available via the various Nagios |
|---|
| 560 | sites on the web. You can see what plugins are installed by Ubuntu in the nagios3 |
|---|
| 561 | package that we've installed by looking in the following directory: |
|---|
| 562 | |
|---|
| 563 | # ls /usr/lib/nagios/plugins |
|---|
| 564 | |
|---|
| 565 | As you'll see there is already a check_snmp plugin available to us. If you are |
|---|
| 566 | interested in the options the plugin takes you can execute the plugin from the |
|---|
| 567 | command line by typing: |
|---|
| 568 | |
|---|
| 569 | # /usr/lib/nagios/plugins/check_snmp |
|---|
| 570 | |
|---|
| 571 | to see what options are available, etc. You can use the check_snmp plugin and |
|---|
| 572 | Nagios to create very complex or specific system checks. |
|---|
| 573 | |
|---|
| 574 | - Now to see all the various service/host checks that have been created using the |
|---|
| 575 | check_snmp plugin you can look in /etc/nagios-plugins/config/snmp.cfg. You will |
|---|
| 576 | see that there are a lot of preconfigured checks using snmp, including: |
|---|
| 577 | |
|---|
| 578 | snmp_load |
|---|
| 579 | snmp_cpustats |
|---|
| 580 | snmp_procname |
|---|
| 581 | snmp_disk |
|---|
| 582 | snmp_mem |
|---|
| 583 | snmp_swap |
|---|
| 584 | snmp_procs |
|---|
| 585 | snmp_users |
|---|
| 586 | snmp_mem2 |
|---|
| 587 | snmp_swap2 |
|---|
| 588 | snmp_mem3 |
|---|
| 589 | snmp_swap3 |
|---|
| 590 | snmp_disk2 |
|---|
| 591 | snmp_tcpopen |
|---|
| 592 | snmp_tcpstats |
|---|
| 593 | snmp_bgpstate |
|---|
| 594 | check_netapp_uptime |
|---|
| 595 | check_netapp_cupuload |
|---|
| 596 | check_netapp_numdisks |
|---|
| 597 | check_compaq_thermalCondition |
|---|
| 598 | |
|---|
| 599 | And, even better, you can create additional service checks quite easily. |
|---|
| 600 | For the case of verifying that snmpd (the SNMP service on Linux) is running we |
|---|
| 601 | need to ask SNMP a question. If we don't get an answer, then Nagios can assume |
|---|
| 602 | that the SNMP service is down on that host. When you use service checks such as |
|---|
| 603 | check_http, check_ssh and check_telnet this is what they are doing as well. |
|---|
| 604 | |
|---|
| 605 | - In our case, let's create a new service check and call it "check_system". This |
|---|
| 606 | service check will connect with the specified host, use the private community |
|---|
| 607 | string we have defined in class and ask a question of snmp on that ask - in this |
|---|
| 608 | case we'll ask about the System Description, or the OID "sysDescr.0" - |
|---|
| 609 | |
|---|
| 610 | - To do this start by editing the file /etc/nagios-plugins/config/snmp.cfg: |
|---|
| 611 | |
|---|
| 612 | # vi /etc/nagios-plugins/config/snmp.cfg |
|---|
| 613 | |
|---|
| 614 | At the top (or the bottom, your choice) add the following entry to the file: |
|---|
| 615 | |
|---|
| 616 | # 'check_system' command definition |
|---|
| 617 | define command{ |
|---|
| 618 | command_name check_system |
|---|
| 619 | command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C |
|---|
| 620 | '$ARG1$' -o sysDescr.0 |
|---|
| 621 | } |
|---|
| 622 | |
|---|
| 623 | You may wish to copy and past this vs. trying to type this out. |
|---|
| 624 | |
|---|
| 625 | Note that "command_line" is a single line. If you copy and paste in vi the line |
|---|
| 626 | may not wrap properly and you may have to manually add the part: |
|---|
| 627 | |
|---|
| 628 | '$ARG1$' -o sysName.0 |
|---|
| 629 | |
|---|
| 630 | to the end of the line. |
|---|
| 631 | |
|---|
| 632 | - Now you need to edit the file /etc/nagios3/conf.d/services_nagios2.cfg and add |
|---|
| 633 | in this service check. We'll run this check against all our servers in the |
|---|
| 634 | classroom, or the hostgroup "debian-servers" |
|---|
| 635 | |
|---|
| 636 | - Edit the file /etc/nagios3/conf.d/services_nagios2.cfg |
|---|
| 637 | |
|---|
| 638 | # vi /etc/nagios3/conf.d/services_nagios2.cfg |
|---|
| 639 | |
|---|
| 640 | At the bottom of the file add the following definition: |
|---|
| 641 | |
|---|
| 642 | # check that snmp is up on all servers |
|---|
| 643 | define service { |
|---|
| 644 | hostgroup_name snmp-servers |
|---|
| 645 | service_description SNMP |
|---|
| 646 | check_command check_system!public |
|---|
| 647 | use generic-service |
|---|
| 648 | notification_interval 0 ; set > 0 if you want to be renotified |
|---|
| 649 | } |
|---|
| 650 | |
|---|
| 651 | The "xxxxxx" is the community string previously (or to be) defined in class. |
|---|
| 652 | In our case this is "public" for our PCs. |
|---|
| 653 | |
|---|
| 654 | For our routers and switches the community string is "unan-ro" - Create another |
|---|
| 655 | service entry like this: |
|---|
| 656 | |
|---|
| 657 | # check that snmp is up on all servers |
|---|
| 658 | define service { |
|---|
| 659 | hostgroup_name snmp-routers-switches |
|---|
| 660 | service_description SNMP |
|---|
| 661 | check_command check_system!unan-ro |
|---|
| 662 | use generic-service |
|---|
| 663 | notification_interval 0 ; set > 0 if you want to be renotified |
|---|
| 664 | } |
|---|
| 665 | |
|---|
| 666 | Note that we have included our private community string here vs. hard-coding |
|---|
| 667 | it in the snmp.cfg file earlier. |
|---|
| 668 | |
|---|
| 669 | - Now we must create the "snmp-servers" group in our hostgroups_nagios2.cfg file. |
|---|
| 670 | Edit the file /etc/nagios3/conf.d/hostgroups_nagios2.cfg and go to the end of the |
|---|
| 671 | file. Add in the following hostgroup definition: |
|---|
| 672 | |
|---|
| 673 | # A list of snmp-enabled devices on which we wish to run the snmp service check |
|---|
| 674 | define hostgroup { |
|---|
| 675 | hostgroup_name snmp-servers |
|---|
| 676 | alias snmp servers |
|---|
| 677 | members noc,pc1,pc2,pc3,pc4,pc5, etc... |
|---|
| 678 | } |
|---|
| 679 | |
|---|
| 680 | And for our routers and switches: |
|---|
| 681 | |
|---|
| 682 | define hostgroup { |
|---|
| 683 | hostgroup_name snmp-routers-switches |
|---|
| 684 | alias snmp on our network infrastructure |
|---|
| 685 | members gw-rtr,grupo1-rtr,grupo2-rtr,grupo1-sw,grupo2-sw |
|---|
| 686 | } |
|---|
| 687 | |
|---|
| 688 | - Now verify that your changes are correct and restart Nagios. |
|---|
| 689 | |
|---|
| 690 | - If you click on the Service Detail menu choice in web interface you should see |
|---|
| 691 | the SNMP check appear. |
|---|
| 692 | |
|---|
| 693 | - After we do the SNMP presentation and exercises in class, then you could come |
|---|
| 694 | back to this exercise and add in all the classroom PCs to the members list in the |
|---|
| 695 | hostgroups_nagios2.cfg file, snmp-servers hostgroup definition. Remember to list |
|---|
| 696 | your PC as "localhost". |
|---|
| 697 | |
|---|
| 698 | |
|---|
| 699 | Ultima actualizacion 3 de Agosto 2010 por HA |
|---|