作为一个程序员,新入职一家公司,给了一个任务是分析一下日志分析架构。
日志处理发展
日志的处理分为三个阶段,
V1 V2 V3
数据集中 rslog + mysql + phplogcon corn + nginx
数据集中+索引 Spark + HadoopKafka Storm Flume
数据集中+索引+展示 ELK Hbase
1. Spark
2. Hadoop
3. Kafka
4. Storm
5. ELK
L E K
Corn + Nginx
方案一:rsyslog+mysql+phplogcon
方案二:Rsyslog+LogAnalyzer+MySQL
方案三:热门的三件套=Logstash+ElasticSearch+Kibana
方案四:大数据组件高并发集群可扩展
HDFS KafkaFlume Spark Hadoop
ELK
1. ELK功能概述
ELK Stack 是开源日志处理平台解决方案,背后的商业公司是 Elastic(https://www.elastic.co/)。它由日志采集解析工具 Logstash、基于 Lucene 的全文搜索引擎 Elasticsearch、分析可视化平台 Kibana 组成。目前 ELK 的用户有 Adobe、Microsoft、Mozilla、Facebook、Stackoverflow、Cisco、ebay、Uber 等诸多知名厂商。
2. Elasticsearch (ES)
The Heart of theElastic Stack
Elasticsearch isa distributed, RESTful search and analytics engine capable of solving a growingnumber of use cases. As the heart of the Elastic Stack, it centrally storesyour data so you can discover the expected and uncover the unexpected.
ES是基于Lucene的全文搜索引擎,作用相当于数据库,主要用于数据存储。
3. Logstash
Logstash 是一种功能强大的信息采集工具,类似于 Hadoop 生态圈里的 Flume。通常在其配置文件规定 Logstash 如何处理各种类型的事件流,一般包含 input、filter、output 三个部分。Logstash 为各个部分提供相应的插件,因而有 input、filter、output 三类插件完成各种处理和转换;另外 codec 类的插件可以放在 input 和 output 部分通过简单编码来简化处理过程
4. Kibana
5. ELK使用场景总结