ELK简介以及新旧版架构介绍

ELK的简介

1. ELK简单介绍

 ELK是elastic公司提供的一套完整的日志收集、展示解决方案,是三个产品的首字母缩写。这三个产品分别是ElasticSearch、Logstash和Kibana,同时加入beats来优化Logstash。

  • ElasticSearch:是一个基于Lucene构建的分布式开源项目,采用的是RESTful搜索引擎。
  • Logstash:用于传输和处理日志、事务或其他数据。
  • Kibana:将ElasticSearch的数据分析并渲染为可视化的报表。

2.ELK的用途

 ELK主要用途于大型分布式系统的日志集中分析,通过ELK这套解决方案,可以实现日志收集、日志搜索和日志分析的功能。

3. ELK的优点

 互联网行业中日志数据非常重要,形式也多种多样。通过日志我们可以计算请求量、流量来源分析、了解用户行为。对于故障排除也是具有重要意义,故障问题的快速排除几乎都是通过快速的日志查询、定位、解决问题。对于实时性要求非常高。

  • 收集
     能够采集多种来源的日志数据。
  • 传输
     能够稳定的把日志数据传输到中央系统。
  • 转换
     能够对收集的日志数据进行转换处理。
  • 存储
     存储日志数据。
  • 分析
     可以支持UI分析。
  • 告警
     能够提供错误报告,监控机制。

4.ELK的旧版架构
ELK简介以及新旧版架构介绍_第1张图片
 旧版的ELK构架需要在每个项目的节点(也就是电脑节点)上部署logstash,然后收集起来发送给ElasticSearch。这样会造成一种情况就是系统的资源和CPU消耗的更严重,框架相对比较臃肿笨重。

5.ELK新版架构
ELK简介以及新旧版架构介绍_第2张图片
6. 新版ELK架构介绍

<1>Beat部件介绍
 Beats是单一用途的数据传输平台,它可以将多台机器的数据发送到Logstash或ElasticSearch。但Beats在新版的ELK的架构并不是不可或缺的一环。

  • Package Beat:用于收集包相关的日志记录。
  • Top Beat:用于收集系统相关(如CPU等)的日志记录。
  • File Beat:用于收集文件相关的日志记录。
  • your Beat:用于收集自定义相关的日志记录。

<2>Logstash
 Logstash是一个动态数据收集管道。支持TCP/UDP/HTTP多种方式收集数据,也可以接受Beats传输来的数据,并对数据做进一步丰富或提取字段处理。

<3>ElasticSearch
 ElasticSearch是一个基于JSON的分布式的搜索和分析引擎。作为ELK的核心,它集中存储数据。

<4>Kibana
 Kibana是ELK的用户界面。它将收集的数据通过各种报表或图形化数据进行可视化展示,并且提供配置、管理ELK的界面。

你可能感兴趣的:(分布式技术)