(18)go-micro微服务ELK介绍

一 什么是ELK

ELK是三个[开源软件]的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件,新增了一个Beats

  • Elasticsearch :是分布式搜索引擎,提供搜集、分析、存储数据三大功能

    • 主要特点 实时分析 分布式实时文件存储,并将每一个字段都编入索引 文档导向,所有的对象全部是文档 高可用性,易扩展,支持集群(Cluster)、分片和复制(Shards 和 Replicas)。
  • Logstash :主要是用来日志的搜集、分析、过滤日志的工具

    • 几乎可以访问任何数据
    • 可以和多种外部应用结合
    • 支持弹性扩展
  • Kibana :提供友好的Web界面,可以帮助汇总分析和搜索数据

    • Kibana是一款基于 Apache开源协议,使用 JavaScript语言编写,为 Elasticsearch提供分析和可视化的 Web 平台。它可以在Elasticsearch的索引中查找,交互数据,并生成各种维度的表图.
  • Beats :是一-个轻量级的日志收集处理工具(Agent)

    • ELK 协议栈的新成员,一个轻量级开源日志文件数据搜集器。在需要采集日志数据的 server 上安装Filebeat,并指定日志目录或日志文件后,Filebeat就能读取数据,发送到Logstash进行解析,或直接发送到 Elasticsearch进行集中式存储和分析。

二 Beats的六种工具

  • Packetbeat :网络数据(收集网络流量数据)

  • Metricbeat :指标( 收集系统、进程和文件系统级别数据)

  • Filebeat: 日志文件(收集文件数据)

  • Winlogbeat : windows事件日志(收集Windows事件日志数据)

  • Auditbeat :审计数据(收集审计日志)

  • Heartbeat :运行时间监控(收集系统运行时的数据)

三 ELK系统的特点

  • 强大的收集能力:能够采集多种来源的日志数据

  • 稳定的传输能力 :能够把日志数据传输到中央系统

  • 分布式存储:可根据业务需求存储日志数据,可动态扩容

  • 分析&展示&提醒:具备数据分析能力,数据展示能力和告警能力

四 ELK+beats系统架构

Logstash 通过Filebeat从多种数据源(比如日志文件、标准输入 Stdin 等)获取数据,再经过滤插件加工数据,然后经 Elasticsearch 输出插件输出到 Elasticsearch,通过 Kibana 展示。

clipboard.png

五 ELK优点

  • 处理方式灵活: elasticsearch是实时全文索引,具有强大的搜索功能

  • 配置相对简单:elasticsearch全部使用JSON 接口,logstash使用模块配置,kibana的配置文件部分更简单。

  • 检索性能高效:基于优秀的设计,虽然每次查询都是实时,但是也可以达到百亿级数据的查询秒级响应。

  • 集群线性扩展:elasticsearch和logstash都可以灵活线性扩展

  • 前端操作良好:kibana的前端设计比较绚丽,而且操作简单。Kibana 界面上,只需要点击鼠标,就可以完成搜索、聚合功能,生成炫丽的仪表板。

六 最后

  • 至此,go-micro微服务ELK介绍工作就正式完成。

  • 接下来就开始filebeat收集日志的代码编写了,希望大家关注博主和关注专栏,第一时间获取最新内容,每篇博客都干货满满。

猜你喜欢

转载自blog.csdn.net/weixin_53795646/article/details/128749915