客户端同学应该理解的 ELK Stack 组件知识

客户端同学应该理解的 ELK Stack 组件知识,第1张

传统的日志分析是直接从日志文件中 grep / awk 日志信息,这种方式文本搜索慢,难以多维度查询。在大型系统中,往往采用的是分布式部署的架构(不同服务模块部署在不同的服务器节点上)。在出现问题时,需要一套集中化的日志管理工具来收集 / 分析所有节点上的日志,提高定位问题的效率。

ELK Stack 组件包含 Elasticsearch、Logstash、Beats 和 Kibana。早期版本的 ELK 组件只包含 Elasticsearch、Logstash 和 Kibana 三个组件,这就是 “ELK” 三个字母的来源。在 2015 年,ELK 组件增加了 Beats,为了命名方便,以后 ELK 组件的更新迭代版本都统称为 ELK Stash。 依据

下面简单介绍几个组件的负责的职能,因为我们是客户端同学,只要理解大概的用途即可。

另外,ELK Stack 组件往往还需要配合 Kafka 或 Redis 消息队列,这是为了降低数据丢失隐患。在没有消息队列的情况下,如果服务侧组件出现故障,那么会出现数据丢失。而引入消息队列的情况下,在出现故障时数据会被存储下来,降低了数据丢失隐患。

对于客户端同学,更关心的应该在面向分析侧的 Kibana,这一节我们就着重来总结 Kibana 的使用。

数据搜索是 Kibana 最基础也是最主要的功能,在数据探索(Discover)页面可以交互式地探索你的数据。

简单熟悉下页面中的几块区域:

在数据展示区,你可以看到所有筛选后的数据。展开具体一条数据,其中的 msg 字段值就是你的项目中上报的数据(payload)。

在可视化(Visualize)页面可以创建可视化控件,在仪表盘(Dashboards)页面可以把你创建的多个可视化控件整合在一起展示。

日志分析领域有关ELK产品的探讨、争议也是非常多的。
zd|先说ELK在日志分析的优:
1 强大的搜索功能,elasticsearch可以以分布式搜索的方式快速检索,而且支持DSL的语法来进行搜索,简单的说,就是通过类似配置的语言,快速筛选数据。
2 完美的展示功能,可以展示非常详细的图表信息,而且可以定制展示内容,将数据可视化发挥的淋漓尽致。
3 分布式功能,能够解决大型集群运维工作很多问题,包括监控、预警、日志收集解析等。
再说说缺点:
尽管研究一段时间,可以实现部署、测试。但对于中大型企业来说,功能点:告警、权限管理、关联分析等还是差之千里。团队支出需要多少成本,技术人才、时间的投入。
ELK产品需要部署多个产品。ELK指的是多个产品。
推荐一下日志分析领域日志易——可视化的海量日志(实时)搜索分析引擎。目前已经服务上百家大型企业,产品的优点呢是:实时、海量、智能运维、关联分析、权限管理、告警等;可以集群化部署!
缺点也有:收费 ,提供SaaS版的免费体验500MB/天

“ELK”是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch、Logstash 和 Kibana。Elasticsearch 是一个搜索和分析引擎。Logstash 是服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到诸如 Elasticsearch 等“存储库”中。Kibana 则可以让用户在 Elasticsearch 中使用图形和图表对数据进行可视化。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10593599.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-09
下一篇 2023-05-09

发表评论

登录后才能评论

评论列表(0条)

保存