Monitoreo

26
PLATAFORMAS ESTANDARES DE MONITOREO QUE ES GESTION Y MONITOREO DE RED Cuando se habla de gestión y monitoreo de redes de computadores se está haciendo referencia a dos conceptos diferentes. La gestión define el control de los recursos en una red con el fin de evitar que esta llegue a funcionar incorrectamente degradando sus prestaciones. El monitoreo define un proceso continuo de recolección y análisis de datos con el fin de anticipar problemas en la red. Así, los sistemas de gestión y monitoreo de redes permiten controlar los recursos hardware y software en una red a partir de monitoreos periódicos a los mismos. Un sistema de gestión y monitoreo de redes está diseñado para ver la red entera como una arquitectura unificada con direcciones y etiquetas asignadas a cada punto y con atributos específicos en cada elemento y enlace del sistema conocidos. Los sistemas gestión y monitoreo de redes tienen un conjunto de elementos clave: -Estación de Gestión o Gestor. -Agente. -Base de Datos de Información. -Protocolo de Gestión de Red. La Estación de Gestión o NMS (Network Monitoring System - Sistema de Monitoreo de Red) sirve como interfaz entre el Administrador de red humano y el sistema de gestión de red, y tiene una base de datos de información de gestión de red extraída de

Transcript of Monitoreo

Page 1: Monitoreo

PLATAFORMAS ESTANDARES DE MONITOREO

QUE ES GESTION Y MONITOREO DE RED

Cuando se habla de gestión y monitoreo de redes de computadores se está haciendo referencia a dos conceptos diferentes. La gestión define el control de los recursos en una red con el fin de evitar que esta llegue a funcionar incorrectamente degradando sus prestaciones. El monitoreo define un proceso continuo de recolección y análisis de datos con el fin de anticipar problemas en la red.

Así, los sistemas de gestión y monitoreo de redes permiten controlar los recursos hardware y software en una red a partir de monitoreos periódicos a los mismos.

Un sistema de gestión y monitoreo de redes está diseñado para ver la red entera como una arquitectura unificada con direcciones y etiquetas asignadas a cada punto y con atributos específicos en cada elemento y enlace del sistema conocidos.

Los sistemas gestión y monitoreo de redes tienen un conjunto de elementos clave:

-Estación de Gestión o Gestor.

-Agente.

-Base de Datos de Información.

-Protocolo de Gestión de Red.

La Estación de Gestión o NMS (Network Monitoring System - Sistema de Monitoreo de Red) sirve como interfaz entre el Administrador de red humano y el sistema de gestión de red, y tiene una base de datos de información de gestión de red extraída de las bases de datos de todas las entidades gestionadas en la red.

Otro elemento activo del sistema es el Agente que responde a las solicitudes de acción desde la estación de gestión y puede de una forma asíncrona, proporcionar a la estación de gestión información importante y no solicitada.

Es un modulo del software de gestión de red que reside en los dispositivos gestionados.

Page 2: Monitoreo

Para gestionar los recursos de red, estos se presentan como objetos, la colección de objetos de conoce como MIB (Management Information Base – Base de Información de Gestión).

La Estación de Gestión y el Agente están enlazados por el protocolo SNMP (Simple Network Management Protocol - Protocolo de Gestión de Red Simple), que tiene ciertas capacidades clave:

-Get: La Estación de Gestión obtiene del Agente valores específicos.

-Set: La Estación de Gestión estable valores específicos en el Agente.

-Notify: El agente notifica a la estación eventos significativos.

En relación con el tamaño de la red a monitorear, hay básicamente dos esquemas de gestión de red: centralizado y descentralizado.

En un esquema centralizado hay una única Estación de Gestión desde la que se lleva a cabo el control de los recursos de la red, este esquema es especialmente útil para redes LAN (Local Area Network – Red de Área Local).

En un esquema descentralizado pueden haber múltiples estaciones de gestión de nivel más alto, que se podrían denominar servidores de gestión. Cada uno de estos podría gestionar directamente una parte del conjunto total de agentes. Este tipo de arquitectura es muy usado en redes WAN (Wide Area Network – Red de Área Amplia).

SNMP - Protocolo Simple de Gestión de Red

Acrónimo de Simple Network Managment Protocol, es el protocolo desarrollado para administrar nodos (servidores, clientes, routers, switches y concentradores, etc.) en una red IP. SNMP permite a los Administradores gestionar el rendimiento, encontrar y resolver problemas, y planear el crecimiento de la red.

Es un protocolo de la capa de aplicación que facilita el intercambio de información de administración entre dispositivos de red. Permite a los administradores supervisar el funcionamiento de la red, buscar y resolver sus problemas, y planear su crecimiento.

Las versiones de SNMP más utilizadas son SNMP versión 1 (SNMPv1) y SNMP versión 2 (SNMPv2).

Page 3: Monitoreo

SNMP en su última versión (SNMPv3) posee cambios significativos con relación a sus predecesores, sobre todo en aspectos de seguridad, sin embargo no ha sido mayoritariamente aceptado en la industria.

Actualmente, hay 3 versiones de SNMP definidas:

-SNMP v1 - Operaciones básicas:

GetUsed: Usado por el NMS para recuperar valores de una o mas instancias de objetos desde el agente.

GetNextUsed: Usado por el NMS para recuperar valores de la siguiente instancia de objeto en una tabla o lista en el agente.

SetUsed: Usado por el NMS para entregar valores a instancias de objetos dentro del agente.

TrapUsed: Usado por los agentes para informar asíncronamente eventos significativos al NMS.

-SNMP v2 - Operaciones adicionales:

-GetBulkUsed: Usado por el NMS para entregar eficientemente grandes bloques de datos.

InformAllows: Usado por un NMS para enviar información a otro NMS y recibir respuestas. Usado en esquemas SNMP descentralizados.

-SNMP v3 - Seguridad mejorada:

User-based Security Model (USM): Seguridad para los mensajes SNMP.

View-based Acces Control Model (VACM): Para el control de acceso. Dynamically: Configuración dinámica de los agentes SNMP usando comandos Set.

La Base de Información Gestionada (Management Information Base o MIB) Es un tipo de base de datos que contiene información jerárquica, estructurada en forma de árbol, de todos los dispositivos gestionados en una red de comunicaciones. Es parte de la gestión de red definida en el modelo OSI. Define las variables usadas por el protocolo SNMP para supervisar y controlar los componentes de una red. Está compuesta por una serie de objetos que representan los dispositivos (como enrutadores y conmutadores) en la red. Cada objeto manejado en un MIB tiene un identificador de objeto único e incluye el tipo de objeto (tal como

Page 4: Monitoreo

contador, secuencia o gauge), el nivel de acceso (tal como lectura y escritura), restricciones de tamaño, y la información del rango del objeto.

Front-end y back-end Son términos que se relacionan con el principio y el final de un proceso. Estos términos adquieren una relevancia mayor en ciertas áreas particulares.

Informática En diseño de software el front-end es la parte del software que interactúa con el o los usuarios y el back-end es la parte que procesa la entrada desde el front-end. La separación del sistema en "front ends" y "back ends" es un tipo de abstracción que ayuda a mantener las diferentes partes del sistema separadas. La idea general es que el front-end sea el responsable de recolectar los datos de entrada del usuario, que pueden ser de muchas y variadas formas, y procesarlas de una manera conforme a la especificación que el back-end pueda usar. La conexión del front-end y el back-end es un tipo de interfaz.

En diseño web (o desarrollo web) hace referencia a la visualización del usuario navegante por un lado (front-end), y del administrador del sitio con sus respectivos sistemas por el otro (back-end).

Muchos métodos conocidos de interactuar con computadoras pueden ser conceptualizados en términos de "front-end" y "back-end". Por ejemplo, un administrador de archivos gráfico como son Windows Explorer, Dolphin, Nautilus y Finder puede ser considerado como un front-end para el sistema de archivos de la computadora.

En un compilador el front-end traslada el lenguaje del código fuente a una representación intermedia que a su vez funciona con el back-end para producir en la salida el código.

En sintetizadores del habla, el front-end se refiere a la parte del sistema que convierte la entrada del texto en una representación simbólico-fonética y el back-end convierte la representación fonética y simbólica en el sonido.

Muchos programas tienen su concepto de diseño dividido en front-ends y back-ends, pero en la mayoría de los casos, el back-end está oculto del usuario final y solo puede ser usado por el cliente intermedio o administrador, que se encargará de gestionar el sistema de información. Sin embargo, muchos programas están escritos para servir de simple front-end para otros que ya existen, como es el caso de las interfaces gráficas construidas sobre una interfaz de línea de comandos. Este tipo de front-

Page 5: Monitoreo

end es común en entornos de escritorio Unix (como los GUI), donde los programas son desarrollados siguiendo la filosofía de diseño de muchos programas pequeños capaces de ejecutarse independientemente o combinados.

Tecnología En radiotelescopios y antenas parabólicas, el front end consiste en un paquete que contiene a la antena de bocina y a la guía de ondas, como un requisito para que las antenas detecten la señal de radio. El back end se refiere al amplificador y al filtro que refina y modifica la señal antes de presentarla al usuario.

En la automatización de diseño electrónico, el ciclo del diseño, que es el front-end, equivale al diseño lógico y eléctrico (ej. captura esquemática, síntesis lógica). A veces el boceto de una estructura (del inglés floorplanning — véase en inglés floorplanning), es considerado como un front-end. Un place and route (del idioma inglés, un lugar y ruta) o un diseño personalizado de la capa de verificación física (design rule checking), o una disposición (layout) versus esquemática, son considerados como back-end.

Estructura del Protocolo:

SNMP es un protocolo de la capa de transporte que esta encapsulado en UDP. El formato general de los mensajes SNMP para todas las versiones define:

-Version: Número de la versión SNMP. El NMS y los agentes deben usar la misma versión de SNMP en una red. Los mensajes que contengan diferentes versiones SNMP son descartados sin ser procesados.

-Community: Nombre de la comunidad usada para autenticación del agente antes de acceder al NMS.

-PDU (Protocol Data Unit - Unidad de Datos de Protocolo): Son diferentes para cada versión de SNMP.

2 TABLA COMPARATIVA

COMPARACIÓN DE ALGUNOS SISTEMAS DE GESTIÓN Y MONITOREO DE REDES

Partiendo del conocimiento de los conceptos que involucran los Sistemas de gestión y monitoreo de redes de computadores, se estudia una comparación de algunos NMS's actuales en un artículo de Wikipedia (ver).

Page 6: Monitoreo

Algunos Sistemas de Gestión y Monitoreo de redes son:

-Hyperic: Provee un software open source para monitoreo de redes y operaciones IT. Auto descubre todos los recursos del sistema y sus métricas, incluyendo hardware, sistemas operativos, virtualización , bases de datos, aplicaciones y servicios. Vigila cuando hosts y servicios especificados generan alertas por mal funcionamiento. También provee gráficos del historial de los recursos permitiendo identificar rápidamente los problemas.

Tiene dos versiones: open source y comercial.

Esta desarrollado en J2EE y corre sobre el servidor de aplicaciones open source JBoss. Usa como backend's PostgreSQL, Oracle y MySQl.

Enlace: http://www.hyperic.com/

-Nagios: Sistema de monitoreo open source. Monitorea los hosts y servicios que se especifiquen, alertando cuando el comportamiento de la red no es el deseado.

Está licenciando bajo la GNU General Public License versión 2 por la Free Software Foundation.

Está escrito en PHP.

Enlace: http://www.nagios.org/

-OpenNMS: Es la primera plataforma de administración de red de grado empresarial en el mundo, desarrollado bajo el licenciamiento open source. Consiste de una comunidad que soporta el proyecto open source así como de una organización que se encarga de la parte comercial, es decir servicios, entrenamiento a los usuarios y soporte.

Esta desarrollado en J2EE y corre sobre el servidor de aplicaciones open source JBoss. Usa como backend a PostgreSQL.

Enlace: http://www.opennms.org/index.php

-OpenQRM: Es una plataforma open source para recolectar datos que cubre muchas facetas de administración. Provee una única consola de administración para la infraestructura IT completa de la organización y una buena API que puede ser usada para integrar herramientas de terceras partes.

Page 7: Monitoreo

Esta desarrollado son Java, C, Javascript, Perl, PHP y shell's Unix. Usa como backend a MySQl y PostgreSQL.

Enlace: http://www.openqrm.com/

-PandoraFMS: En el mundo Es un software open source que sirve para monitorear y medir todo tipo de elementos. Monitorea sistemas, aplicaciones o dispositivos. Permite saber el estado de cada elemento de un sistema a lo largo del tiempo.

Está escrito en PHP y usa como backend a MySQL.

Enlace: http://pandora.sourceforge.net/

-JFFNMS: En un sistema de administración y monitoreo de red open source diseñado para monitorear redes SNMP. Puede ser usado para monitorear cualquier dispositivo que cumpla con el estándar SNMP, como servidores, routers y puertos TCP/IP.

Está escrito en PHP y usa como backend a MySQL.

Enlace: http://www.jffnms.org/

RAID: En informática, el acrónimo RAID (del inglés «conjunto redundante de discos independientes», anteriormente conocido como Redundant Array of Independent Disks, «conjunto redundante de discos independientes») hace referencia a un sistema de almacenamiento que usa múltiples discos duros o SSD entre los que se distribuyen o replican los datos. Dependiendo de su configuración (a la que suele llamarse «nivel»), los beneficios de un RAID respecto a un único disco son uno o varios de los siguientes: mayor integridad, mayor tolerancia a fallos, mayor throughput (rendimiento) y mayor capacidad. En sus implementaciones originales, su ventaja clave era la habilidad de combinar varios dispositivos de bajo coste y tecnología más antigua en un conjunto que ofrecía mayor capacidad, fiabilidad, velocidad o una combinación de éstas que un solo dispositivo de última generación y coste más alto.

En el nivel más simple, un RAID combina varios discos duros en una sola unidad lógica. Así, en lugar de ver varios discos duros diferentes, el sistema operativo ve uno solo. Los RAIDs suelen usarse en servidores y normalmente (aunque no es necesario) se implementan con unidades de disco de la misma capacidad. Debido al decremento en el precio de los discos duros y la mayor disponibilidad de las opciones RAID incluidas en los chipsets de las placas base, los RAIDs se encuentran también como

Page 8: Monitoreo

opción en las computadoras personales más avanzadas. Esto es especialmente frecuente en las computadoras dedicadas a tareas intensivas y que requiera asegurar la integridad de los datos en caso de fallo del sistema. Esta característica no está obviamente disponible en los sistemas RAID por software, que suelen presentar por tanto el problema de reconstruir el conjunto de discos cuando el sistema es reiniciado tras un fallo para asegurar la integridad de los datos. Por el contrario, los sistemas basados en software son mucho más flexibles (permitiendo, por ejemplo, construir RAID de particiones en lugar de discos completos y agrupar en un mismo RAID discos conectados en varias controladoras) y los basados en hardware añaden un punto de fallo más al sistema (la controladora RAID).

BACKUP: Una copia de seguridad o backup (su nombre en inglés) en tecnología de la información o informática es una copia de seguridad - o el proceso de copia de seguridad - con el fin de que estas copias adicionales puedan utilizarse para restaurar el original después de una eventual pérdida de datos. Fundamentalmente son útiles para dos cosas: Primero: recuperarse de una catástrofe informática, Segundo: recuperar una pequeña cantidad de archivos que pueden haberse eliminado accidentalmente o corrompido. La pérdida de datos es muy común: El 66% de los usuarios de internet han sufrido una seria pérdida de datos.

Ya que los sistemas de respaldo contienen por lo menos una copia de todos los datos que vale la pena salvar, deben de tenerse en cuenta los requerimientos de almacenamiento. La organización del espacio de almacenamiento y la administración del proceso de efectuar la copia de seguridad son tareas complicadas. Para brindar una estructura de almacenamiento es conveniente utilizar un modelo de almacenaje de datos. Actualmente (noviembre de 2010), existen muchos tipos diferentes de dispositivos para almacenar datos que son útiles para hacer copias de seguridad, cada uno con sus ventajas y desventajas a tener en cuenta para elegirlos, como duplicidad, seguridad en los datos y facilidad de traslado.

Antes de que los datos sean enviados a su lugar de almacenamiento se lo debe seleccionar, extraer y manipular. Se han desarrollado muchas técnicas diferentes para optimizar el procedimiento de efectuar los backups. Estos procedimientos incluyen entre otras optimizaciones para trabajar con archivos abiertos y fuentes de datos en uso y también incluyen procesos de compresión, cifrado, y procesos de duplicación, entendiéndose por esto último a una forma específica de compresión donde los datos superfluos son eliminados. Muchas organizaciones e individuos tratan de asegurarse que el proceso de backup se efectúe de la

Page 9: Monitoreo

manera esperada y trabajan en la evaluación y la validación de las técnicas utilizadas. También es importante reconocer las limitaciones y los factores humanos que están involucrados en cualquier esquema de backup que se utilice. Las copias de seguridad garantizan dos objetivos: integridad y disponibilidad

REDUNDANCIA DE DATOS: Una base de datos o banco de datos (en ocasiones abreviada con la sigla BD o con la abreviatura b. d.) es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso. En este sentido, una biblioteca puede considerarse una base de datos compuesta en su mayoría por documentos y textos impresos en papel e indexados para su consulta. Actualmente, y debido al desarrollo tecnológico de campos como la informática y la electrónica, la mayoría de las bases de datos están en formato digital (electrónico), que ofrece un amplio rango de soluciones al problema de almacenar datos.

Existen programas denominados sistemas gestores de bases de datos, abreviados SGBD, que permiten almacenar y posteriormente acceder a los datos de forma rápida y estructurada. Las propiedades de estos SGBD, así como su utilización y administración, se estudian dentro del ámbito de la informática.

Las aplicaciones más usuales son para la gestión de empresas e instituciones públicas. También son ampliamente utilizadas en entornos científicos con el objeto de almacenar la información experimental.

Aunque las bases de datos pueden contener muchos tipos de datos, algunos de ellos se encuentran protegidos por las leyes de varios países. Por ejemplo, en España los datos personales se encuentran protegidos por la Ley Orgánica de Protección de Datos de Carácter Personal (LOPD).

DNS Y DIRECTORIO ACTIVO

Page 10: Monitoreo

WEB

FTP

Page 11: Monitoreo

EXCHANGE

DHCP

Page 12: Monitoreo

OPEN MANAGER- MONITOREO

Page 13: Monitoreo
Page 14: Monitoreo
Page 15: Monitoreo
Page 16: Monitoreo
Page 17: Monitoreo
Page 18: Monitoreo

MAPA MENTAL SNMP

copia de seguridad servidor web

Para ilustrar una forma sencilla de generar copias de seguridad desde un sistema Linux, se parte de un sistema Linux (centos) que está conectado en red a una máquina con Windows Server 2008 r2

El medio de almacenamiento para las copias de seguridad será un disco duro extraible que se conectará mediante usb a la máquina con Windows Server 2008 r2. La forma de compartir en red un recurso en sistemas Windows es muy sencilla: una vez que el sistema reconoce el nuevo medio conectado, basta con pulsar el botón derecho del ratón sobre el medio a compartir, y seleccionar la opción Compartir y seguridad.

En el diálogo emergente seleccionar la opción Compartir esta carpeta. Establecer el nombre deseado para el recurso compartido en el campo Recurso compartido.

por último, habilitar los permisos para poder escribir sobre este medio. Pulsar el botón Permisos e indicar los permisos pertinentes. Una vez seleccionados los permisos (Control total en este caso, para poder leer y escribir) pulsar el botón Aceptar para finalizar el proceso.

El disco duro extraible conectado a la máquina con Windows Server 2008 r2 ya está compartido en red, y puede ser accedido por la máquina Linux para almacenar las copias de seguridad.

De esta forma, la estructura de conexiones del sistema con el que se trabajará sera la siguiente:

Page 19: Monitoreo

Montar la unidad extraible desde LinuxEn primer lugar, se procederá a instalar sobre la máquina Linux un cliente de Samba, a fin de poder visualizar los recursos de la máquina Windows accesibles. Para ello se teclea el siguiente comando:

yum install smbclientUna vez instalado el cliente de Samba, se podrán visualizar los recursos de la máquina Windows accesibles por la máquina Linux. Para ello, basta con teclear el siguiente comando:

smbclient -L [IP_MAQUINA_WINDOWS]En este caso, mostrará el disco extraible que se compartió en red anteriormente.

Para montar via red la unidad extraíble de la máquina Windows sobre la máquina Linux, es necesario instalar la herramienta smbfs, invocando el siguiente comando en la máquina Linux:

yum install smbfsUna vez instalada la herramienta smbfs, ya se puede montar el disco extraible de la máquina Windows en la máquina Linux utilizando la red. Antes de invocar el comando correspondiente, debe crearse un directorio en el directorio /mnt donde se montarán los archivos del disco extraible. Para ello, teclear el siguiente comando en la máquina Linux:

mkdir /mnt/iomegaUna vez creado este directorio, ya se puede invocar el comando smbmount para montar el disco extraible conectado a la máquina Windows sobre el directorio /mnt/iomega de la máquina Linux. Ejecutar este comando como se indica a continuación:

smbmount //[IP_MAQUINA_WINDOWS]/extraible /mnt/iomega

A partir de este momento se puede acceder al disco extraible conectado a la máquina Windows desde el directorio /mnt/iomega de la máquina Linux. En este caso, el acceso será necesario para almacenar las copias de seguridad

que se procederán a programar.

Implementar script para realizar la copia de seguridadEl siguiente paso será realizar un script para que sea invocado por una tarea cron de forma periódica.

La funcionalidad del script es muy sencilla: simplemente debe comprimir los archivos a salvar (por ejemplo, con tar) y copiarlo al medio de almacenamiento

Page 20: Monitoreo

elegido (disco extraible del equipo con Windows montado en el directorio /mnt/iomega de la máquina Windows). Por mayor claridad, en el nombre del fichero se especificará la fecha de realización de la copia de seguridad.

En este caso, el script para Linux podría contener la siguiente línea:

tar -cvzf /mnt/iomega/backup/backup-`date +%Y-%m-%d`.tgz /home/alberto

Este comando comprimirá en un fichero de nombre backup-YYYY-MM-DD.tgz el contenido de la carpeta /home/alberto de la máquina Linux. El directorio destino será el directorio de nombre backup de la unidad extraible conectada a la máquina Windows, que se encuentra montada en el directorio /mnt/iomega de la máquina Linux.

Este script se almacenará en el fichero /home/alberto/backup.sh . Este script es el que se invocará desde el proceso de cron que se programará en el apartado siguiente.

Automatizar la tarea utilizando CronPara automatizar la ejecución de este script periódicamente, se utilizará el cron del sistema Linux. Se programará la ejecución de dicho script todos los jueves a las 0:00. Para establecer esta programación a la lista de tareas del cron se ejecuta el siguiente comando:

crontab -eEn este caso, la máquina Linux con Debian arranca el editor vi para añadir la nueva tarea programada. Se recuerda que la sintaxis de la línea a añadir en este archivo para programar una nueva tarea es:

[hora] [minuto] [dia_del_mes] [mes] [dia_de_la_semana] [comando]

De esta forma, para programar la tarea de backup todos los jueves a las 0:00, la línea a añadir en el archivo abierto por vi con las tareas de cron asociadas al usuario, deberá ser la siguiente:

0 0 * * 4 sh /home/alberto/backup.shEl símbolo asterísco ( * ) significa que abarcará todos los dias, horas, etc según el campo que se especifique.

En este punto ya se tiene programada una tarea de backup desde la máquina Linux, utilizando como medio de almacenamiento el disco extraible conectado a la maquina Windows (compartido en red). El proceso de backup se resume en el siguiente gráfico:

Para recuperar la información, bastará con descomprimir el archivo de backup deseado utilizando el comando tar en la máquina Linux. Para ello, tomando el

Page 21: Monitoreo

fichero de backup generado en el ejemplo del gráfico anterior, podría ejecutarse la siguiente sentencia desde el directorio donde se encuentre:

tar -xvzf backup-2006-04-14.tgz