大数据技术之_20_Elasticsearch学习_02_ELK 简介以及新旧版架构介绍

2019-05-14 16:35:49 浏览数 (1)

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 构架需要在每个项目的节点(也就是电脑节点)上部署 Logstash,然后收集起来发送给 ElasticSearch。这样会造成一种情况就是系统的资源和 CPU 消耗的更严重,框架相对比较臃肿笨重。

5. ELK 新版架构

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 的界面。

0 人点赞