ELK 是什么
在项目初期的时候,大家都是赶着上线,一般来说对日志没有过多的考虑,当然日志量也不大,所以用log4j就够了,随着应用的越来越多,日志散落在各个服务器的logs文件夹下,确实有点不大方便。
当我们需要日志分析的时候你大概会这么做:直接在日志文件中 grep、awk 就可以获得自己想要的信息。
那你们想过这种方式的问题吗?
1.日志量太大如何归档、文本搜索太慢怎么办、如何多维度查询
2.应用太多,面临数十上百台应用时你该怎么办
3.随意登录服务器查询log对系统的稳定性及安全性肯定有影响
4.如果使用人员对Linux不太熟练那面对庞大的日志简直要命。
ELK因此就应运而生,那么为什么要用ELK呢?ELK又能给我们解决哪些问题呢?
1. 日志统一的收集和管理,访问。查找问题比较方便,安全。收集的日志放到搜索引擎中。也就是 es 中(分布式搜索引擎存储库)---- 其核心是倒排索引库,可存TB级的数据。解决文本检索,高效率的查找。
2. 可以对收集起来的 log 进行分析。L:Logstash,就是用收集日志。会部署到应用服务器上面。还可以提供过滤,清除功能。
3. 使用简单,可以大大提高定位问题的效率:一个页面搞定所有查询。K:kibana。
4. 能够提供错误报告,监控机制
ELK 架构(Logstash 部署在应用服务上)
![](https://img.haomeiwen.com/i15495530/9d11d1c2ea5b08cb.png)
EFLK 架构(Filebeat 部署在应用服务上,建议日志 TB 级数,维护成本高,logstash
支持多台部署。分布部署)
![](https://img.haomeiwen.com/i15495530/189a03d8a2b65973.png)
网友评论