es/日志分析集群.md

2.8 KiB
Raw Blame History

日志分析集群


一:组件介绍

1. Elasticsearch

主要用来日志存储

是一个基于Lucene的搜索服务器。提供搜集、分析、存储数据三大功能。它提供了一个分布式多用户能力的全文搜索引擎基于RESTful web接口。Elasticsearch是用Java开发的并作为Apache许可条款下的开放源码发布是当前流行的企业级搜索引擎。设计用于云计算中能够达到实时搜索稳定可靠快速安装使用方便。

2. Logstash

主要用来日志的搜集

主要是用来日志的搜集、分析、过滤日志的工具。用于管理日志和事件的工具,你可以用它去收集日志、转换日志、解析日志并将他们作为数据提供给其它模块调用,例如搜索、存储等。

3. Kibana

主要用于日志的展示

是一个优秀的前端日志展示框架,它可以非常详细的将日志转化为各种图表,为用户提供强大的数据可视化支持,它能够搜索、展示存储在 Elasticsearch 中索引数据。使用它可以很方便的用图表、表格、地图展示和分析数据。

4. Kafaka

是一种高吞吐量的分布式发布订阅消息系统。具有峰值处理能力,使用消息队列能够使关键组件顶住突发的访问压力,而不会因为突发的超负荷的请求而完全崩溃。

5. Filebeat

隶属于Beats,轻量级数据收集引擎。基于原先 Logstash-fowarder 的源码改造出来。换句话说Filebeat就是新版的 Logstash-fowarder也会是 ELK Stack 在 Agent 的第一选择常见的Beat有

  • Packetbeat搜集网络流量数据
  • Metricbeat搜集系统、进程和文件系统级别的 CPU 和内存使用情况等数据)
  • Filebeat搜集文件数据
  • Winlogbeat搜集 Windows 事件日志数据)

二:集群构建

1. 架构

基础架构

单一的架构logstash作为日志搜集器从数据源采集数据并对数据进行过滤格式化处理然后交由Elasticsearch存储kibana对日志进行可视化处理。

多节点部署Logstash架构

这种架构模式适合需要采集日志的客户端不多且各服务端cpu,内存等资源充足的情况下。因为每个节点都安装Logstash, 非常消耗节点资源。其中logstash作为日志搜集器将每一台节点的数据发送到Elasticsearch上进行存储再由kibana进行可视化分析。

2. 官网地址

官网地址:https://www.elastic.co

官网搭建:https://www.elastic.co/guide/index.html