ELK简介
ELK 是一个用于日志处理和分析的开源解决方案,ELK代表的是:E就是ElasticSearch,L就是Logstach,K就是kibana。
如下图所示:
ELK组成
ELK 是由三个主要的开源软件组成,分别是:ElasticSearch、Logstash 、Kibana。
1.ElasticSearch
ElaticSearch,简称为ES, 是一款大数据场景下的分布式全文搜索引擎,是建立在全文搜索引擎 Apache Lucene基础上的搜索引擎。
ElasticSearch 通常作为 ELK(ElasticSearch、Logstash 和 Kibana)堆栈的一部分,用于存储和检索大规模的日志和事件数据。
2.Logstash
Logstash 是一个开源的数据采集工具,用于从多种数据源,比如:日志文件、数据库、消息队列等中收集数据。
Logstash 主要用于日志数据的采集和处理,特别适用于实时日志分析、系统监控、安全事件检测等场景。
通过将数据采集、转换和传输整合在一个工具中,Logstash 简化了数据流的处理流程。
3.Kibana
Kibana 是一个开源的数据可视化和分析平台,通常与 ElaticSearch结合使用。
Kibana 提供了丰富的功能,使用户可以通过创建仪表盘、图表和可视化来实时监控、分析和可视化数据。
ELK工作流程
ELK日志分析工作流程,如下图所示:
第一步:Logstash采集日志
首先是Logstash采集日志,日志主要包括:系统日志、应用程序日志、以及安全日志等。
第二步:使用ElasticSearch存储数据
接着,将过滤后的日志发送给Broker,然后Logstash Indexer将存放在Broker中的数据再写入Elasticsearch。
日志采集之后,我们可以使用ElasticSearch来作为数据存储,以及搜索使用。
第三步:使用Kibana来展示界面
Kibana为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助汇总、分析和搜索重要数据日志。
陈睿mikechen
10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。
关注「mikechen」公众号,获取更多技术干货!
后台回复【面试】即可获取《史上最全阿里Java面试题总结》,后台回复【架构】,即可获取《阿里架构师进阶专题全部合集》