SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
Proyecto Final Master Felix Rodriguez Araujo
Master Experto en Cloud Computing U-TAD
Log -Analytics
con
Apache-Flume
Elasticsearch
HDFS
Kibana
DESCRIPCIÓN GLOBAL DEL PROYECTO
TECNOLOGÍAS USADAS
WORKFLOW DEL DATO A ALTO NIVEL
BIBLIOGRAFÍA
1
2
3
4
Con el crecimiento de los volúmenes de datos que estamos experimentando en los últimos años, nos hemos visto
obligados a buscar soluciones para poder tratar dicha información de manera ágil y eficiente.
E.T.L. está siendo una estrategia claramente en alza en los últimos tiempos,el cómo extraer los datos de múltiples
orígenes y sistemas, cargarlos en tablas de datos para luego,posteriormente tratarlos y poder sacar un provecho de
ellos.
En el ejemplo que quiero tratar con este proyecto, es la gestión de logs generados por los diferentes webservers que
tenemos por las diferentes regiones configuradas en AWS,para posteriormente visualizarlos de una manera eficiente y
práctica.
Transform
Extract
Load
Flume permite diseñar y ejecutar workflows ETL con un gran rendimiento, confiabilidad y una puesta en marcha rápida (sin necesidad
de programación)
Apache Flume es un sistema para la recolección agregación y transporte de cantidades masivas de información. Distribuido, confiable y
flexible.
Su capacidad de adaptación permite trabajar con fuentes de datos heterogéneas y con destinos variados.
Los datos se pueden transformar, parsear, enriquecer o normalizar al vuelo.
También pueden crearse topologías de despliegue sofisticadas, para resolver casos de uso más complejos.
Hadoop es un sistema que permite almacenar y procesar grandes datos en un entorno distribuido en clústeres de ordenadores
utilizando modelos de programación simple. Está diseñado para aumentar la escala de servidores individuales de miles de máquinas,
cada uno de ellos ofrece computación y almacenamiento local.
Características de los HDFS
● Es adecuado para el almacenamiento y procesamiento distribuido.
● Hadoop proporciona una interfaz de comandos para interactuar con HDFS.
● Los servidores de namenode datanode y ayudar a los usuarios a comprobar fácilmente el estado del clúster.
● Streaming el acceso a los datos del sistema de ficheros.
● HDFS proporciona permisos de archivo y la autenticación.
Hive es almacén de datos creado específicamente para Hadoop que nos facilita la tarea de sumarizar los datos pre-existentes en HDFS.
La idea principal de Hive es la de funcionar como capa externa a Hadoop a modo de envoltorio, donde vamos a poder realizar
consultas sobre el sistema de archivos que serán tratadas como MapReduces en modo nativo en HDFS.
Para poder realizar estas operaciones, fue creado un lenguaje de consultas a "base de datos" (recordemos que HDFS es un sistema de
ficheros) muy similar a SQL, que denominaron HiveQL o HQL (dependiendo de en que libro lo leas lo verás de una manera u otra).
ElasticSearch indexa cualquier documento que le envíes y escala horizontalmente con mucha facilidad.
ElasticSearch es un servidor de indexación y búsqueda schema-less con grandes capacidades de escalabilidad horizontal.
Schema-less significa que el esquema se puede actualizar sobre la marcha, en función de los documentos indexados.
ElasticSearch puede indexar cada campo de los documentos (full-text search) y genera agregaciones y agrupaciones automáticamente.
Registrar un nodo nuevo en el cluster es muy sencillo, con una gestión automática del reparto de los datos y peticiones.
Kibana permite sacar provecho de los datos indexados, diseñando dashboards en cuestión de minutos.
Kibana es el motor de visualización y análisis de ElasticSearch, que permite una integración nativa con los datos indexados.
Los dashboards de Kibana son fáciles de crear y permiten una exploración de los datos en tiempo real, pero también de históricos.
Su interfaz es muy flexible y potente, con capacidades de análisis que abarcan desde la visualización de widgets hasta el raw data, con
drill-down y estadísticas al vuelo de cada dato indexado.
Http requests and responses
Apache HTTP server
Flume Agent
Flume Messaging TCP PORT 4545
HDFS
Hive
Flume Agent
Loading to Elasticsearch
with Hive
Visualising the data
El primer paso, lógicamente será
recibir peticiones a nuestros
servidores web Apache.
Dicho tráfico configuraremos
para que loguee donde
consideremos oportuno. Http requests and responses
Apache HTTP server
Flume Agent
En cada web-server configuraremos
el agente flume, para que envie los
logs al HDFS.
El archivo de conf básica del flume en el web-server
Ruta de los logs a analizar
Ip HDFS +Puerto
PARA LEVANTAR EL AGENTE
/usr/lib/flume/bin/flume-ng agent -c conf -f conf/flume-src-agent.conf -n source_agent
Apache HTTP server
Flume Agent
Flume Messaging TCP PORT 4545
HDFS
Hive
Flume Agent
Una vez levantado el agente Flume en el servidor
origen,procederá a enviar al “collector” (servidor
destino) los logs que hemos configurado
previamente.
Path del HDFS donde guardamos
los logs enviados desde el source
START Agent: flume-ng agent -c conf -f /flume-ng/conf/flume-trg-agent.conf -n
collector
Una vez lanzados los agentes flumes tanto en el server target como source…..
Vemos como, efectivamente nuestro HDFS está recibiendo datos
Podemos ver de una manera mucho más gráfica los logs importados por flume en HDFS, usaremos la G.U.I. de
Hadoop, HUE.
Para poder conseguir nuestro objetivo final, debemos de empezar a tratar los logs con HIVE, para ello
vamos a “importar” los logs en tablas, para ello lo haremos desde HUE o también desde la consola
hive de un terminal SSH, con la siguiente query.
A continuación vamos a “inyectar” datos en ElasticSearch,ya que es un requisito fundamental para finalmente poder
verlo en Kibana.
Lo primero que debemos hacer es agregar el jar elasticsearch-hadoop a la query
Las queries necesarias para ello son las siguientes:
CREATE TABLE logs (type STRING, time STRING, ext STRING, ip STRING, req STRING, res INT, bytes INT,
phpmem INT, agent STRING)
ROW FORMAT DELIMITED FIELDS TERMINATED BY 't';
LOAD DATA INPATH '/pro/data/logs/apache_access_combined/150724' OVERWRITE INTO TABLE logs;
CREATE EXTERNAL TABLE felix_logses (time STRING, extension STRING, clientip STRING, request STRING,
response INT, agent STRING)
STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler'
TBLPROPERTIES('es.resource' = 'demo/hive',
'es.mapping.names' = 'time:@timestamp',
'es.nodes' = 'your_es_cluster_hostname');
INSERT OVERWRITE TABLE felix_logses SELECT s.time, s.ext, s.ip, s.req, s.res, s.agent FROM logs s;
Si todo ha ido bien, ya podemos empezar a tratar datos con Elasticsearch.
Para verlo no hay más que ejecutar esta sencilla query…...
Y ...Voila...vemos los datos correctamente
importados…….
El último paso de nuestro proyecto, es ofrecer una visualización de los logs que vamos y hemos importado.
Como dijimos antes, usaremos Kibana.
Lo primero que deberemos hacer es agregar el index creado en la tabla anteriormente en hive.
En este caso, el index creado se denomina felix, vemos que importa las tablas con sus campos y datos.
El último paso de nuestro proyecto, es ofrecer una visualización de los logs que vamos y hemos importado.
Como dijimos antes, usaremos Kibana.
Lo primero que deberemos hacer es agregar el index creado en la tabla anteriormente en hive.
En este caso, el index creado se denomina felix, vemos que importa las tablas con sus campos y datos.
Los siguientes pasos en Kibana, para no entrar mucho en detalle, es básicamente que debes personalizar tus
búsquedas en tus logs para que, posteriormente con los datos importados por Elasticsearch, te muestre los
gráficos deseados.
http://www.rittmanmead.com/2014/05/trickle-feeding-webserver-log-files-to-hdfs-using-apache-flume/
https://www.elastic.co/guide/en/elasticsearch/reference/1.6/cluster-nodes-info.html
https://github.com/hortonworks/hadoop-tutorials/blob/master/Community/T07_Elasticsearch_Hadoop_Integration.md
http://www.johnandcailin.com/blog/cailin/exploring-apache-log-files-using-hive-and-hadoop
https://www.elastic.co/downloads
http://ryrobes.com/systems/connecting-tableau-to-elasticsearch-read-how-to-query-elasticsearch-with-hive-sql-and-
hadoop/comment-page-1/
https://github.com/lmenezes/elasticsearch-kopf
https://www.digitalocean.com/community/tutorials/how-to-use-kibana-dashboards-and-visualizations
hortonworks.com/products/hortonworks-sandbox/#tuts-admins
Log Analytics con Flume Elasticsearch Kibana

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

ElasticSearch: la tenés atroden Google
ElasticSearch: la tenés atroden GoogleElasticSearch: la tenés atroden Google
ElasticSearch: la tenés atroden Google
 
Spark
SparkSpark
Spark
 
Primeros pasos con Apache Spark - Madrid Meetup
Primeros pasos con Apache Spark - Madrid MeetupPrimeros pasos con Apache Spark - Madrid Meetup
Primeros pasos con Apache Spark - Madrid Meetup
 
MapReduce en Hadoop
MapReduce en HadoopMapReduce en Hadoop
MapReduce en Hadoop
 
Tutorial en Apache Spark - Clasificando tweets en realtime
Tutorial en Apache Spark - Clasificando tweets en realtimeTutorial en Apache Spark - Clasificando tweets en realtime
Tutorial en Apache Spark - Clasificando tweets en realtime
 
Spark meetup barcelona
Spark meetup barcelonaSpark meetup barcelona
Spark meetup barcelona
 
Introduccion a Apache Spark
Introduccion a Apache SparkIntroduccion a Apache Spark
Introduccion a Apache Spark
 
Introducción a Hadoop
Introducción a HadoopIntroducción a Hadoop
Introducción a Hadoop
 
Formación apache Solr
Formación apache SolrFormación apache Solr
Formación apache Solr
 
Introducción a Apache Spark
Introducción a Apache SparkIntroducción a Apache Spark
Introducción a Apache Spark
 
Conferencia 5: Extendiendo Solr
Conferencia 5: Extendiendo SolrConferencia 5: Extendiendo Solr
Conferencia 5: Extendiendo Solr
 
Couch db
Couch dbCouch db
Couch db
 
Apache spark meetup
Apache spark meetupApache spark meetup
Apache spark meetup
 
Federacion Repositorios Objetos de Aprendizaje
Federacion Repositorios Objetos de AprendizajeFederacion Repositorios Objetos de Aprendizaje
Federacion Repositorios Objetos de Aprendizaje
 
Hadoop
HadoopHadoop
Hadoop
 
Seminario Apache Solr
Seminario Apache SolrSeminario Apache Solr
Seminario Apache Solr
 
Serarch engines y Solr, JUG Argentina
Serarch engines y Solr, JUG ArgentinaSerarch engines y Solr, JUG Argentina
Serarch engines y Solr, JUG Argentina
 
Redis, base de datos NoSQL clave-valor
Redis, base de datos NoSQL clave-valorRedis, base de datos NoSQL clave-valor
Redis, base de datos NoSQL clave-valor
 
Mejorando la búsqueda Web con Apache Solr
Mejorando la búsqueda Web con Apache SolrMejorando la búsqueda Web con Apache Solr
Mejorando la búsqueda Web con Apache Solr
 
Taller hadoop
Taller hadoopTaller hadoop
Taller hadoop
 

Destacado

Warhorse pride vol 2 issue 11 20140523
Warhorse pride vol 2 issue 11 20140523Warhorse pride vol 2 issue 11 20140523
Warhorse pride vol 2 issue 11 20140523warhorsepao
 
MONITORIZACIÓN Y ANÁLISIS DE TRÁFICO DE RED CON APACHE HADOOP
MONITORIZACIÓN Y ANÁLISIS DE TRÁFICO DE RED CON APACHE HADOOPMONITORIZACIÓN Y ANÁLISIS DE TRÁFICO DE RED CON APACHE HADOOP
MONITORIZACIÓN Y ANÁLISIS DE TRÁFICO DE RED CON APACHE HADOOPJorge E. López de Vergara Méndez
 
TECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION II
TECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION IITECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION II
TECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION IIChristian Garcia Gamio
 
G te c sesion3b- mapreduce
G te c sesion3b- mapreduceG te c sesion3b- mapreduce
G te c sesion3b- mapreduceVictoria López
 
Comparacion Entre Rmi Y Api De Sockets
Comparacion Entre Rmi Y Api De SocketsComparacion Entre Rmi Y Api De Sockets
Comparacion Entre Rmi Y Api De Socketsmallita
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetosNanda Moran
 
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...Joseph Lopez
 
Big Data a traves de una implementación
Big Data a traves de una implementaciónBig Data a traves de una implementación
Big Data a traves de una implementaciónDiego Krauthamer
 
Analisando eventos de forma inteligente para detecção de intrusos usando ELK
Analisando eventos de forma inteligente para detecção de intrusos usando ELKAnalisando eventos de forma inteligente para detecção de intrusos usando ELK
Analisando eventos de forma inteligente para detecção de intrusos usando ELKSegInfo
 
nerdear.la 2016 - Docker workshop
nerdear.la 2016 - Docker workshopnerdear.la 2016 - Docker workshop
nerdear.la 2016 - Docker workshopRestorando
 
Herramientas y ejemplos de trabajos MapReduce con Apache Hadoop
Herramientas y ejemplos de trabajos MapReduce con Apache HadoopHerramientas y ejemplos de trabajos MapReduce con Apache Hadoop
Herramientas y ejemplos de trabajos MapReduce con Apache HadoopDavid Albela Pérez
 
Como de grandes son tus datos
Como de grandes son tus datosComo de grandes son tus datos
Como de grandes son tus datosAntonio Rodriguez
 
Polybase
PolybasePolybase
PolybaseSolidQ
 
¿Por que cambiar de Apache Hadoop a Apache Spark?
¿Por que cambiar de Apache Hadoop a Apache Spark?¿Por que cambiar de Apache Hadoop a Apache Spark?
¿Por que cambiar de Apache Hadoop a Apache Spark?Socialmetrix
 
Monta una Infraestructura para Big Data en tu Empresa
Monta una Infraestructura para Big Data en tu EmpresaMonta una Infraestructura para Big Data en tu Empresa
Monta una Infraestructura para Big Data en tu EmpresaUrko Zurutuza
 
Creación de un clúster de Hadoop con Cloudera
Creación de un clúster de Hadoop con ClouderaCreación de un clúster de Hadoop con Cloudera
Creación de un clúster de Hadoop con ClouderaDavid Albela Pérez
 

Destacado (20)

Warhorse pride vol 2 issue 11 20140523
Warhorse pride vol 2 issue 11 20140523Warhorse pride vol 2 issue 11 20140523
Warhorse pride vol 2 issue 11 20140523
 
MONITORIZACIÓN Y ANÁLISIS DE TRÁFICO DE RED CON APACHE HADOOP
MONITORIZACIÓN Y ANÁLISIS DE TRÁFICO DE RED CON APACHE HADOOPMONITORIZACIÓN Y ANÁLISIS DE TRÁFICO DE RED CON APACHE HADOOP
MONITORIZACIÓN Y ANÁLISIS DE TRÁFICO DE RED CON APACHE HADOOP
 
TECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION II
TECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION IITECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION II
TECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION II
 
G te c sesion3b- mapreduce
G te c sesion3b- mapreduceG te c sesion3b- mapreduce
G te c sesion3b- mapreduce
 
Comparacion Entre Rmi Y Api De Sockets
Comparacion Entre Rmi Y Api De SocketsComparacion Entre Rmi Y Api De Sockets
Comparacion Entre Rmi Y Api De Sockets
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Hadoop
HadoopHadoop
Hadoop
 
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de datos empresariales (EDW) y Windows Azure (SQL Databas...
 
Big data, Hadoop, HDInsight
Big data, Hadoop, HDInsightBig data, Hadoop, HDInsight
Big data, Hadoop, HDInsight
 
Big Data a traves de una implementación
Big Data a traves de una implementaciónBig Data a traves de una implementación
Big Data a traves de una implementación
 
Analisando eventos de forma inteligente para detecção de intrusos usando ELK
Analisando eventos de forma inteligente para detecção de intrusos usando ELKAnalisando eventos de forma inteligente para detecção de intrusos usando ELK
Analisando eventos de forma inteligente para detecção de intrusos usando ELK
 
Aula virtual apache_hadoop_v3 1
Aula virtual apache_hadoop_v3 1Aula virtual apache_hadoop_v3 1
Aula virtual apache_hadoop_v3 1
 
nerdear.la 2016 - Docker workshop
nerdear.la 2016 - Docker workshopnerdear.la 2016 - Docker workshop
nerdear.la 2016 - Docker workshop
 
Herramientas y ejemplos de trabajos MapReduce con Apache Hadoop
Herramientas y ejemplos de trabajos MapReduce con Apache HadoopHerramientas y ejemplos de trabajos MapReduce con Apache Hadoop
Herramientas y ejemplos de trabajos MapReduce con Apache Hadoop
 
Como de grandes son tus datos
Como de grandes son tus datosComo de grandes son tus datos
Como de grandes son tus datos
 
Polybase
PolybasePolybase
Polybase
 
¿Por que cambiar de Apache Hadoop a Apache Spark?
¿Por que cambiar de Apache Hadoop a Apache Spark?¿Por que cambiar de Apache Hadoop a Apache Spark?
¿Por que cambiar de Apache Hadoop a Apache Spark?
 
Monta una Infraestructura para Big Data en tu Empresa
Monta una Infraestructura para Big Data en tu EmpresaMonta una Infraestructura para Big Data en tu Empresa
Monta una Infraestructura para Big Data en tu Empresa
 
Introducción a Docker
Introducción a DockerIntroducción a Docker
Introducción a Docker
 
Creación de un clúster de Hadoop con Cloudera
Creación de un clúster de Hadoop con ClouderaCreación de un clúster de Hadoop con Cloudera
Creación de un clúster de Hadoop con Cloudera
 

Similar a Log Analytics con Flume Elasticsearch Kibana

On-the-fly ETL con EFK: ElasticSearch, Flume, Kibana
On-the-fly ETL con EFK: ElasticSearch, Flume, KibanaOn-the-fly ETL con EFK: ElasticSearch, Flume, Kibana
On-the-fly ETL con EFK: ElasticSearch, Flume, KibanaStratio
 
OpenAnalytics 04/2015 - Data Analytics con Hadoop
OpenAnalytics 04/2015 - Data Analytics con HadoopOpenAnalytics 04/2015 - Data Analytics con Hadoop
OpenAnalytics 04/2015 - Data Analytics con HadoopOpenAnalytics Spain
 
Introducción a polybase en SQL Server
Introducción a polybase en SQL ServerIntroducción a polybase en SQL Server
Introducción a polybase en SQL ServerEduardo Castro
 
Pablo Doval | Plain Concepts | Open Data
Pablo Doval | Plain Concepts | Open DataPablo Doval | Plain Concepts | Open Data
Pablo Doval | Plain Concepts | Open DataSmash Tech
 
Hadoop, Cloud y Spring
Hadoop, Cloud y Spring Hadoop, Cloud y Spring
Hadoop, Cloud y Spring Miguel Pastor
 
Apache nifi_introduccion_v1.0
Apache nifi_introduccion_v1.0Apache nifi_introduccion_v1.0
Apache nifi_introduccion_v1.0Victor Martinez
 
Construyendo Aplicaciones Web con PHP + LUA + REDIS
Construyendo Aplicaciones Web con PHP + LUA + REDISConstruyendo Aplicaciones Web con PHP + LUA + REDIS
Construyendo Aplicaciones Web con PHP + LUA + REDISGonzalo Chacaltana
 
Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...Joseph Lopez
 
Conociendo los servicios adicionales en big data
Conociendo los servicios adicionales en big dataConociendo los servicios adicionales en big data
Conociendo los servicios adicionales en big dataSpanishPASSVC
 

Similar a Log Analytics con Flume Elasticsearch Kibana (20)

On-the-fly ETL con EFK: ElasticSearch, Flume, Kibana
On-the-fly ETL con EFK: ElasticSearch, Flume, KibanaOn-the-fly ETL con EFK: ElasticSearch, Flume, Kibana
On-the-fly ETL con EFK: ElasticSearch, Flume, Kibana
 
Best hadoop bigdata architecture resume
Best hadoop bigdata architecture resume Best hadoop bigdata architecture resume
Best hadoop bigdata architecture resume
 
Guia LAPP
Guia LAPPGuia LAPP
Guia LAPP
 
Open analytics. data analytics con hadoop
Open analytics. data analytics con hadoopOpen analytics. data analytics con hadoop
Open analytics. data analytics con hadoop
 
OpenAnalytics 04/2015 - Data Analytics con Hadoop
OpenAnalytics 04/2015 - Data Analytics con HadoopOpenAnalytics 04/2015 - Data Analytics con Hadoop
OpenAnalytics 04/2015 - Data Analytics con Hadoop
 
Introducción a polybase en SQL Server
Introducción a polybase en SQL ServerIntroducción a polybase en SQL Server
Introducción a polybase en SQL Server
 
Pablo Doval | Plain Concepts | Open Data
Pablo Doval | Plain Concepts | Open DataPablo Doval | Plain Concepts | Open Data
Pablo Doval | Plain Concepts | Open Data
 
Hadoop, Cloud y Spring
Hadoop, Cloud y Spring Hadoop, Cloud y Spring
Hadoop, Cloud y Spring
 
Apache nifi_introduccion_v1.0
Apache nifi_introduccion_v1.0Apache nifi_introduccion_v1.0
Apache nifi_introduccion_v1.0
 
HDFS
HDFSHDFS
HDFS
 
Construyendo Aplicaciones Web con PHP + LUA + REDIS
Construyendo Aplicaciones Web con PHP + LUA + REDISConstruyendo Aplicaciones Web con PHP + LUA + REDIS
Construyendo Aplicaciones Web con PHP + LUA + REDIS
 
Base de Datos
Base de DatosBase de Datos
Base de Datos
 
Tipos de servidores
Tipos de servidoresTipos de servidores
Tipos de servidores
 
Tipos servidores
Tipos  servidoresTipos  servidores
Tipos servidores
 
Clase Hadoop
Clase HadoopClase Hadoop
Clase Hadoop
 
Actividad n 5.3 http ftp
Actividad n 5.3 http ftpActividad n 5.3 http ftp
Actividad n 5.3 http ftp
 
Actividad n 5.3 http ftp
Actividad n 5.3 http ftpActividad n 5.3 http ftp
Actividad n 5.3 http ftp
 
Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...
Big Data, Almacenes de Datos Empresariales (EDW) y Windows Azure (SQL Databas...
 
Conociendo los servicios adicionales en big data
Conociendo los servicios adicionales en big dataConociendo los servicios adicionales en big data
Conociendo los servicios adicionales en big data
 
Big Data en Azure: Azure Data Lake
Big Data en Azure: Azure Data LakeBig Data en Azure: Azure Data Lake
Big Data en Azure: Azure Data Lake
 

Último

Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdfBetianaJuarez1
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfcristianrb0324
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptxHugoGutierrez99
 
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdftecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdflauralizcano0319
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersIván López Martín
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888ElianaValencia28
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024u20211198540
 
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfTENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfJoseAlejandroPerezBa
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar24roberto21
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)JuanStevenTrujilloCh
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointValerioIvanDePazLoja
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaYeimys Ch
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerenciacubillannoly
 
Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024anasofiarodriguezcru
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfKarinaCambero3
 
Trabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalTrabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalEmanuelCastro64
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfFernandoOblitasVivan
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxCarolina Bujaico
 
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskbydaniela5
 

Último (20)

Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdf
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
 
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdftecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 Testcontainers
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
 
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfTENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power Point
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerencia
 
Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdf
 
Trabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalTrabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamental
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdf
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptx
 
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
 

Log Analytics con Flume Elasticsearch Kibana

  • 1. Proyecto Final Master Felix Rodriguez Araujo Master Experto en Cloud Computing U-TAD Log -Analytics con Apache-Flume Elasticsearch HDFS Kibana
  • 2. DESCRIPCIÓN GLOBAL DEL PROYECTO TECNOLOGÍAS USADAS WORKFLOW DEL DATO A ALTO NIVEL BIBLIOGRAFÍA 1 2 3 4
  • 3.
  • 4. Con el crecimiento de los volúmenes de datos que estamos experimentando en los últimos años, nos hemos visto obligados a buscar soluciones para poder tratar dicha información de manera ágil y eficiente. E.T.L. está siendo una estrategia claramente en alza en los últimos tiempos,el cómo extraer los datos de múltiples orígenes y sistemas, cargarlos en tablas de datos para luego,posteriormente tratarlos y poder sacar un provecho de ellos. En el ejemplo que quiero tratar con este proyecto, es la gestión de logs generados por los diferentes webservers que tenemos por las diferentes regiones configuradas en AWS,para posteriormente visualizarlos de una manera eficiente y práctica. Transform Extract Load
  • 5.
  • 6. Flume permite diseñar y ejecutar workflows ETL con un gran rendimiento, confiabilidad y una puesta en marcha rápida (sin necesidad de programación) Apache Flume es un sistema para la recolección agregación y transporte de cantidades masivas de información. Distribuido, confiable y flexible. Su capacidad de adaptación permite trabajar con fuentes de datos heterogéneas y con destinos variados. Los datos se pueden transformar, parsear, enriquecer o normalizar al vuelo. También pueden crearse topologías de despliegue sofisticadas, para resolver casos de uso más complejos.
  • 7. Hadoop es un sistema que permite almacenar y procesar grandes datos en un entorno distribuido en clústeres de ordenadores utilizando modelos de programación simple. Está diseñado para aumentar la escala de servidores individuales de miles de máquinas, cada uno de ellos ofrece computación y almacenamiento local. Características de los HDFS ● Es adecuado para el almacenamiento y procesamiento distribuido. ● Hadoop proporciona una interfaz de comandos para interactuar con HDFS. ● Los servidores de namenode datanode y ayudar a los usuarios a comprobar fácilmente el estado del clúster. ● Streaming el acceso a los datos del sistema de ficheros. ● HDFS proporciona permisos de archivo y la autenticación.
  • 8. Hive es almacén de datos creado específicamente para Hadoop que nos facilita la tarea de sumarizar los datos pre-existentes en HDFS. La idea principal de Hive es la de funcionar como capa externa a Hadoop a modo de envoltorio, donde vamos a poder realizar consultas sobre el sistema de archivos que serán tratadas como MapReduces en modo nativo en HDFS. Para poder realizar estas operaciones, fue creado un lenguaje de consultas a "base de datos" (recordemos que HDFS es un sistema de ficheros) muy similar a SQL, que denominaron HiveQL o HQL (dependiendo de en que libro lo leas lo verás de una manera u otra).
  • 9. ElasticSearch indexa cualquier documento que le envíes y escala horizontalmente con mucha facilidad. ElasticSearch es un servidor de indexación y búsqueda schema-less con grandes capacidades de escalabilidad horizontal. Schema-less significa que el esquema se puede actualizar sobre la marcha, en función de los documentos indexados. ElasticSearch puede indexar cada campo de los documentos (full-text search) y genera agregaciones y agrupaciones automáticamente. Registrar un nodo nuevo en el cluster es muy sencillo, con una gestión automática del reparto de los datos y peticiones.
  • 10. Kibana permite sacar provecho de los datos indexados, diseñando dashboards en cuestión de minutos. Kibana es el motor de visualización y análisis de ElasticSearch, que permite una integración nativa con los datos indexados. Los dashboards de Kibana son fáciles de crear y permiten una exploración de los datos en tiempo real, pero también de históricos. Su interfaz es muy flexible y potente, con capacidades de análisis que abarcan desde la visualización de widgets hasta el raw data, con drill-down y estadísticas al vuelo de cada dato indexado.
  • 11.
  • 12. Http requests and responses Apache HTTP server Flume Agent Flume Messaging TCP PORT 4545 HDFS Hive Flume Agent Loading to Elasticsearch with Hive Visualising the data
  • 13. El primer paso, lógicamente será recibir peticiones a nuestros servidores web Apache. Dicho tráfico configuraremos para que loguee donde consideremos oportuno. Http requests and responses Apache HTTP server Flume Agent En cada web-server configuraremos el agente flume, para que envie los logs al HDFS. El archivo de conf básica del flume en el web-server Ruta de los logs a analizar Ip HDFS +Puerto PARA LEVANTAR EL AGENTE /usr/lib/flume/bin/flume-ng agent -c conf -f conf/flume-src-agent.conf -n source_agent
  • 14. Apache HTTP server Flume Agent Flume Messaging TCP PORT 4545 HDFS Hive Flume Agent Una vez levantado el agente Flume en el servidor origen,procederá a enviar al “collector” (servidor destino) los logs que hemos configurado previamente. Path del HDFS donde guardamos los logs enviados desde el source START Agent: flume-ng agent -c conf -f /flume-ng/conf/flume-trg-agent.conf -n collector
  • 15. Una vez lanzados los agentes flumes tanto en el server target como source….. Vemos como, efectivamente nuestro HDFS está recibiendo datos
  • 16. Podemos ver de una manera mucho más gráfica los logs importados por flume en HDFS, usaremos la G.U.I. de Hadoop, HUE.
  • 17. Para poder conseguir nuestro objetivo final, debemos de empezar a tratar los logs con HIVE, para ello vamos a “importar” los logs en tablas, para ello lo haremos desde HUE o también desde la consola hive de un terminal SSH, con la siguiente query.
  • 18. A continuación vamos a “inyectar” datos en ElasticSearch,ya que es un requisito fundamental para finalmente poder verlo en Kibana. Lo primero que debemos hacer es agregar el jar elasticsearch-hadoop a la query Las queries necesarias para ello son las siguientes: CREATE TABLE logs (type STRING, time STRING, ext STRING, ip STRING, req STRING, res INT, bytes INT, phpmem INT, agent STRING) ROW FORMAT DELIMITED FIELDS TERMINATED BY 't'; LOAD DATA INPATH '/pro/data/logs/apache_access_combined/150724' OVERWRITE INTO TABLE logs; CREATE EXTERNAL TABLE felix_logses (time STRING, extension STRING, clientip STRING, request STRING, response INT, agent STRING) STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler' TBLPROPERTIES('es.resource' = 'demo/hive', 'es.mapping.names' = 'time:@timestamp', 'es.nodes' = 'your_es_cluster_hostname'); INSERT OVERWRITE TABLE felix_logses SELECT s.time, s.ext, s.ip, s.req, s.res, s.agent FROM logs s;
  • 19. Si todo ha ido bien, ya podemos empezar a tratar datos con Elasticsearch. Para verlo no hay más que ejecutar esta sencilla query…... Y ...Voila...vemos los datos correctamente importados…….
  • 20. El último paso de nuestro proyecto, es ofrecer una visualización de los logs que vamos y hemos importado. Como dijimos antes, usaremos Kibana. Lo primero que deberemos hacer es agregar el index creado en la tabla anteriormente en hive. En este caso, el index creado se denomina felix, vemos que importa las tablas con sus campos y datos.
  • 21. El último paso de nuestro proyecto, es ofrecer una visualización de los logs que vamos y hemos importado. Como dijimos antes, usaremos Kibana. Lo primero que deberemos hacer es agregar el index creado en la tabla anteriormente en hive. En este caso, el index creado se denomina felix, vemos que importa las tablas con sus campos y datos.
  • 22. Los siguientes pasos en Kibana, para no entrar mucho en detalle, es básicamente que debes personalizar tus búsquedas en tus logs para que, posteriormente con los datos importados por Elasticsearch, te muestre los gráficos deseados.
  • 23.