jueves, 24 de noviembre de 2016

Herramientas de monitoreo de servidores y redes

Herramientas de monitoreo de servidores y redes

A la hora de dar servicio en una organización, sus redes suelen ser uno de los principales elementos a tener muy en cuenta para evitar que dejen de dar servicio. Si las redes dejan de funcionar y no se transmiten datos el servicio deja de darse a los clientes de la organización.
Por esta razón, es muy importante hacer un correcto monitoreo de red. El objetivo de todo administrador de sistemas es el de mantener las redes en pleno funcionamiento el 100% del tiempo. Las herramientas de monitoreo de red nos ayudarán a detectar posibles problemas que provocarán el colapso y/o la caída de las redes.

Cada instalación es un mundo diferente y no todas las herramientas de red valen para un entorno determinado.
Características a tener en cuenta en nuestro software de monitoreo de red
·         Comunicación de las alertas.
·         Integraciones con servidores externos.
·         Usabilidad y presentación de los datos en el panel.
·         Flexibilidad a la hora de adaptarse a herramientas o software particulares.
·         API de acceso desde sistemas externos.
·         Detección de dispositivos de forma automática.
·         Integraciones con Bases de Datos
·         Multidispositivo
·         Escalado
·         Soporte del mayor número de protocolos de adquisición de datos posible
·         Seguridad
·         Integración con máquinas virtuales
·         Integraciones hardware
·         Control remoto
·         Inventario de Hardware y Software
·         Gelocalización
·         Monitorización de la nube

Monitoreo de Red Básico

 El control básico del monitoreo de red es el del control de los mensajes syslog y el control del ancho de banda.

¿Qué son los mensajes syslog?

Los mensajes syslog son mensajes generados por los equipos de comunicación y enviados a un servidor central donde se almacenan todos. La monitorización de los mensajes syslog se basará en la recolección de estos mensajes en un mismo servidor para su análisis y configuración de alarmas.
Por ejemplo, con nuestro servidor syslog podremos recibir todos los intentos fallidos de acceso a la web y lanzar una alarma cuando haya más de 10 accesos fallidos en un minuto.
nuestro monitor de red debe generen mensajes legibles (formato HTML) y que puedan ser enviados a distintos dispositivos (mail, móvil u otras herramientas) mediante diferentes protocolos (Whatsup, SMTP, push, etc).

Integración con sistemas externos

Es muy importante que nuestro sistema de monitoreo de red nos permita no sólo medir el ancho de banda y el estado de los enlaces de conexión entre máquinas. También es muy importante que esta herramienta sea capaz de monitorizar diferentes servidores como servidores de email, servidores de aplicaciones web, servidores de aplicaciones CRM, etc.

Nagios

Probablemente la herramienta libre más conocida. Desde 1996 trabajando en USA para construir este software de monitorización. Su core es la parte más importante de la herramienta y sobre el core se pueden construir plugins para monitorizar elementos particulares.
Nagios XI proporciona una monitorización de todos los componentes de la infraestructura de misión crítica, incluyendo aplicaciones, servicios, sistemas operativos, protocolos de red, métricas de sistemas y la infraestructura de red
Es interesante ver como la tendencia de la demanda en Internet ha ido disminuyendo con el paso del tiempo. Lo que antes fue una de las más potentes y conocidas herramientas de red está perdiendo terreno.
Su gran uso es debido a que fue el primer jugador que desarrolló una herramienta que cubría características indispensables en una monitorización de red. Por esta razón, Nagios fue muy popular. Además, debido a su gran penetración de mercado inicial sigue siendo muy utilizada.
Ventajas
·         Se encuentran muchos perfiles con experiencia Nagios
·         Si se tiene gran conocimiento de la herramienta, la configuración manual puede darle mucha potencia a la hora de monitorizar casos aislados y particulares.
·         Ofrece muchos plugins para adaptar Nagios a las necesidades del usuario
·         Para la configuración básica es muy fácil.
Inconvenientes
·         Configuración y edición compleja debido a la necesidad de hacer modificaciones de forma manual para dejar lista la herramienta.
·         El interfaz gráfico carece de una buena usabilidad
·         Coste de aprendizaje elevado
·         Cada instalación al final resulta un “puzzle” en el que más que un producto estándar tenemos una implementación propia, con cientos de parches, código propio o de terceros y complicada de evolucionar o de mantener por terceros.
·         Informes sencillos
·         Muy pobre en su tratamiento de SNMP, tanto de polling como de gestion de traps.

En resumen, Nagios fue el origen de la monitorización y de hecho, muchas nuevas herramientas de monitoreo de redes han heredado el código de Nagios y lo han evolucionado. Aunque tienes muchos perfiles en el mercado, estos deben tener un conocimiento muy técnico y tu instalación dependerá de ellos al 100%. La futura migración podrá ser complicada.
MRTG
MRTG (Multi Router Traffic Grapher) es una herramienta, escrita en C y Perl por Tobias Oetiker y Dave Rand, que se utiliza para supervisar la carga de tráfico de interfaces de red. MRTG genera un informe en formato HTML con gráficas que proveen una representación visual de la evolución del tráfico a lo largo del tiempo.
Para recolectar la información del tráfico del dispositivo (habitualmente routers) la herramienta utiliza el protocolo SNMP (Simple Network Management Protocol). Este protocolo proporciona la información en crudo de la cantidad de bytes que han pasado por ellos distinguiendo entre entrada y salida. Esta cantidad bruta deberá ser tratada adecuadamente para la generación de informes

Funcionamiento


MRTG ejecuta como un demonio o invocado desde las tareas programadas del cron. Por defecto, cada cinco minutos recolecta la información de los dispositivos y ejecuta los scripts que se le indican en la configuración.

En un primer momento, MRTG consultaba la información, la procesaba y generaba el informe y las gráficas. En las últimas versiones, esta información es almacenada en una base de datos gestionada por RRDtool a partir de la cual, y de forma separada, se generan los informes y las gráficas.

MRTG consiste en un script en Perl que utiliza SNMP para leer los contadores de tráfico de sus routers y un programa rápido C que registra los datos de tráfico y crea bellos gráficos que representan el tráfico en la conexión de red monitorizada. Estos gráficos están incrustados en páginas web que se pueden ver desde cualquier navegador web moderno.
Ventajas de mrtg
·         Es un programa realmente popular, asi que es bastante sencillo encontrar ayuda o scripts ya creados y listos para recoger datos de los diferentes elementos que queramos tener bajo control.
·         Esta escrito en perl. aso que es un programa que funciona en multiples plataformas, incluyendo Windows NT/2000 (Los scripts de terceros suelen ser especificos para una plataforma concreta)
·         No es complicado de configurar, pudiendo tener una configuracion funcional en menos de 30 minutos
·         Permite establecer alarmas
·         Soporta IPv6
·         La recogida de datos es altamente configurable, puediendo usar SNMP o plugins

Desventajas de mrtg

·         En maquinas actuales quiza no sea algo que se note demasiado, pero el hecho de estar escrito en perl y que gran parte de los scripts de recoleccion de datos tambien esten en perl hace que en maquinas pequeñas el rendimiento se resienta.
·         Es un programa monolitico y secuencial. Incluso con las partes que hay escritas en C, el programa es lento. El codigo del programa principal son 1700 lineas, donde se mezcla el parser del archivo de configuracion, las rutinas de SNMP, la gestion del log clasico y de las bases de datos round-robib. Tras la recoleccion de los datos, se llama inmediatamente a rateup, programa encargado de actualizar los logs y generar las graficas. Este planteamiento hace que las graficas se generen siempre, vayan a ser vistas o no y que haya que procesa una parte del mrtg.pl que quiza ni siquiera vayamos a usar. Parte del problema de cargar cada X minutos el interprete de perl y partes del codigo que no se vayan a usar, puede amortiguarse usando el mrtg en modo daemon.
·         No es cliente/servidor. Bien, este problema se puede paliar de diferentes formas: teniendo un mrtg central y N daemons de snmp corriendo en el resto de maquinas, o bien teniendo varios mrtg locales a cada maquina y sincronizando los cambios en las graficas mediante rsync para poder verlos en la "consola de administracion"
·         Las graficas que hace estan "desaprovechadas", por decirlo de alguna manera. Rateup solo pinta dos variables en un grafico, tipicamente bytes/s de entrada y de salida debido al origen del programa, asi que si necesitamos poner mas variables (por ejemplo, controlar el tamaño de 3 particiones de un HDD), deberemos usar dos graficas.
·         Solo puede usarse con valores enteros, por lo que para usar valores en coma flotante, como la carga de una maquina tal y como la ofrece `uptime`, hay que pasarlo a coma fija.

Actualmente este sistema es utilizado en muchas empresas de nuestro país las cuales monitorean el tráfico de sus redes y subredes, además de que permite tener la información online y al momento del estado de la red.

NTOP
Ntop es una herramienta que permite monitorizar en tiempo real una red. Es útil para controlar los usuarios y aplicaciones que están consumiendo recursos de red en un instante concreto y para ayudarnos a detectar malas configuraciones de algún equipo, facilitando la tarea ya que. justo al nombre del equipo, aparece sale un banderín amarillo o rojo, dependiendo si es un error leve o grave, o a nivel de servicio.
Posee un microservidor web desde el que cualquier usuario con acceso puede ver las estadísticas del monitoreo. El software está desarrollado para plataformas Unix y Windows.
En modo web, actúa como un servidor de Web, volcando en HTML el estado de la red. Viene con un recolector/emisor NetFlow/sFlow, una interfaz de cliente basada en HTTP para crear aplicaciones de monitoreo centradas en top, y RRD para almacenar persistentemente estadísticas de tráfico.
Los protocolos que es capaz de monitorizar son: TCP/UDP/ICMP, (R)ARP, IPX, DLC, Decnet, AppleTalk, Netbios, y ya dentro de TCP/UDP es capaz de agruparlos por FTP, HTTP, DNS, Telnet, SMTP/POP/IMAP, SNMP, NFS, X11.

Solarwinds
Heramienta de monitoreo de redes que destaca por su automático mapeo de redes y nodos sin necesidad de acciones manuales. Interfaz gráfico bastante potente en el que se puede ver fácilmente la topología de red y el estado de la misma. Solarwinds permite integrar máquinas virtuales en su monitorización
Su tendencia demuestra que tras haber tenido un éxito aplastador en 2004 y 2005, desde entonces se ha producido un descenso el cual ahora se encuentra relativamente estancado.
Ventajas
·         Gran interfaz gráfico
·         Muy buena comunidad detrás de SolarWinds.
·         Acceso desde dispositivos móviles
Desventajas
·         Configuración de alertas manual y por fichero
·         Se debe mejorar el sistema de generación de informes
·         No se integra con aplicaciones en la nube como Amazon
·         No se pueden realizar todas las operaciones desde el mismo panel y hay que acceder a otras herramientas.
·         Su licencia hace que cada haya que estar mirando cada chequeo, ya que se licencia por cada uno de ellos.
Pros:
§  Excelente diseño de interfaz de usuario
§  , La cartografía de la red automatizado Personalizable
§  Gran apoyo de la comunidad proporcionado por Thwack
§  Acceso móvil
§  Soporte VMware nativo
Contras:
§  No se puede configurar alertas de la web de la consola;
§  Configuración Clumsy “Grupo de Dependencia”
§  Módulo de informes necesita mejores informes ad-hoc;
§  No hay soporte nativo para Microsoft Hyper-V. Características SNMP solamente.