日志分析系统:ELK

什么是ELK

ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件。新增了一个FileBeat,它是一个轻量级的日志收集处理工具(Agent),Filebeat占用资源少,适合于在各个服务器上搜集日志后传输给Logstash,官方也推荐此工具。也可以不用FileBeat

Elasticsearch是个开源分布式搜索引擎,提供搜集、分析、存储数据三大功能。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。

Logstash主要是用来日志的搜集、分析、过滤日志的工具,支持大量的数据获取方式。一般工作方式为c/s架构,client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤、修改等操作在一并发往elasticsearch上去。

Kibana也是一个开源和免费的工具,Kibana可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助汇总、分析和搜索重要数据日志。

ELK实现原理

通过FileBeat:
在这里插入图片描述
也可以不用FileBeat,logstash支持多种数据输入:
在这里插入图片描述
flume vs logstash:
在这里插入图片描述

filebeat的由来

Logstash是ELK(ElasticSearch、Logstash、Kibana)组件中的一个。这三个组件往往是配合使用的:ES负责数据的存储和索引,Logstash负责数据采集和过滤转换,Kibana则负责图形界面处理;之后,这三个组件又先后被收购于Elastic.co公司名下

因为logstash是jvm跑的,资源消耗比较大,所以后来作者又用go写了一个功能较少但是资源消耗也小的轻量级logstash-forwarder。因为es公司本身还收购了另一个开源项目packetbeat,而这个项目专门就是用go语言的,所以es公司干脆把logstash-forwarder的开发工作也合并到同一个团队,于是新的项目就叫filebeat了。

logstash 和filebeat都具有日志收集功能,filebeat更轻量,占用资源更少。filebeat可以发送到logstash,进一步进行日志清洗和过滤。

参考:
https://cloud.tencent.com/developer/article/1492759
https://zhuanlan.zhihu.com/p/109409873
https://www.jianshu.com/p/f0b25ce6dd17
https://www.daimajiaoliu.com/daima/479582421900400

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值