Monitorización en tiempo real, Elasticsearch, Logstash y Kibana

agosto 10, 2016 — por David Mataró0

main

Assoc. Cat. VirtualitzacióConsultoríaDevOpsEstrategia de EmpresaMetodología

Monitorización en tiempo real, Elasticsearch, Logstash y Kibana

agosto 10, 2016 — por David Mataró0

Si analizamos la infraestructura que gestionamos veremos que tenemos multitud de datos en forma de logs o de emails de sistema. Normalmente cada uno de estos logs con su propia aplicación de acceso y o  formato y sin ninguna relación con el resto de sistemas. A menudo, solo utilizamos esta información para evaluar lo sucedido después de una incidencia. Pero la verdad, es que si pudiéramos disponer de todos estos datos dispersos centralizados y normalizados en un formato común, dispondríamos de una fuente de información muy valiosa para gestionar nuestra infraestructura.

Existen diferentes herramientas que permiten centralizar todos estos datos y normalizar su formato. Estas herramientas facilitan el acceso a estos datos y permiten la generación de métricas de gestión y también la generación de alertas. Una de estas herramientas es ELK (Elasticsearch, Logstash y Kibana). Esta herramienta nació de la unión de los proyectos open source Elasticsearch, Logstash y Kibana que gestiona la empresa elastic…

  • Elastisearch es un sistema distribuido de almacenamiento de documentos JSON con un sistema de búsqueda de datos basado en Apache Lucene.
  • Logstash es un sistema para la centralización de logs que permite procesar estos logs y almacenarlos en Elasticsearch entre otros sistemas de almacenamiento.
  • Kibana es un a interface web para acceder a los datos almacenados en Elasticsearch de forma rápida y ordenada.

Lo que inicialmente era una herramienta de gestión de logs centralizada a evolucionado hacia un sistema capaz de captar datos de cualquier fuente, en cualquier formato y analizarlos, establecer correlaciones y mostrarlos en tiempo real. Actualmente, el núcleo de la herramienta esta formado por Elasticsearch, Logstash, Kibana y Beats, todos open source. Este último, Beats, es una plataforma para la recolección y envío de datos a Elasticsearch, datos que podrán ser visualizados en Kibana de forma ordenada. De base existen cuatro tipos de Beats, Filebeats, Packebeats, Topbeats o Metricbeats y Winlogbeats.

  • Filebeats permite recoger ficheros de log, preprocesarlos y enviarlos a Elasticsearch.
  • Packetbeat permite recoger el tráfico de red de cualquier protocolo como por ejemplo http o mysql y enviarlo a Elastisearch para ser analizado.
  • Topbeats (Metricbeats en las siguientes versiones) recoge información de sistema como uso de ram, cpu, espacio de disco, etc. a intervalos definidos (10 segundos por ejemplo) y enviarlos a Elasticsearch para ser analizados.
  • Winlogbeats permite recoger información de sistema, de aplicación y de seguridad del registro de eventos de Windows y enviarlo a Elasticsearch.

La plataforma Beats, no se limita a Filebeat, Packetbeat, Topbeat y Winlogbeat, sino que dispone de una librería open source llamada Libbeat que permite definir nuestros propios Beats de recogida de datos para enviarlos a Elasticsearch.

elastic search

Top Dashboard: Fuente www.elastic.co

Este tipo de herramientas como ELK, permiten definir una nueva aproximación a la monitorización de  infraestructuras y aplicaciones, basada en la generación de gráficas en tiempo real, el disparo de alertas cuando se produce un evento y la correlación de datos de diferentes fuentes. A título de ejemplo, con Elasticsearch podemos disponer de estadísticas en tiempo real  de uso de los recursos (cpu, ram, disco, …) de lo servidores físicos, virtuales o en cloud, estadísticas de errores HTTP y de rendimiento del servidor web, estadísticas de rendimiento del servidor de base de datos, estadísticas de usuarios conectados, etc. Y todo esto con la posibilidad de correlar diferentes fuentes de información.

Dejar comentario

Tu dirección de correo no será publicada Los campos requeridos están marcados con *

16 + 1 =