ELK日志分析平台
ELK关系:
ELK分别是:Elasticsearch Logstash Kibana Logstash收集日志存储到Elasticsearch再通过Kibana展示.
Elasticsearch 开源分布式搜索引擎,提供搜索,分析,存储数据三大功能; 主要负责将Logstash收集的日志数据索引并存储; 特点:分布式,零配置,自动发现,索引自动分片,索引副本机制,多数据源,自动搜索等; 数据以JSON文档的格式存储索引,不需要预先规定范式。
Logstash 主要负责日志的搜集,分析和过滤; 工作方式:C/S架构 工作流程: client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤、修改等操作,然后再发送到Elasticsearch
Kibana 为 Logstash 和ElasticSearch 提供日志分析的 Web 界面;
ELK优点: 处理方式灵活 配置相对简单 检索性能高效 集群线性扩展 前端操作绚丽
ELK常见架构体系
Elasticsearch + Logstash + Kibana 工作流程: Logstash搜集日志并进行过滤,分析日志数据——Elasticsearch存储数据——Kibana生成报表进行展示 具体流程: 将Logstash分布于各个节点上搜集相关日志、数据,并经过分析、过滤后发送给远端服务器上的Elasticsearch进行存储。 Elasticsearch将数据以分片的形式压缩存储并提供多种API供用户查询,操作。 Kibana根据Elasticsearch数据生成报表,通过Kibana web界面展示
Elasticsearch + Logstash + filebeat + Kibana 工作流程: filebeat采集日志——Logstash过滤,分析日志数据——Elasticsearch存储数据——Kibana生成报表进行展示
具体流程: 通过filebeat代理收集日志,再将日志数据输出到Logstash; Logstash对数据进行过滤,分析并发送到Elasticsearch进行存储 Kibana对Elasticsearch存储的数据进行可视化分析生成报表,通过Kibana web界面展示
Elasticsearch + Logstash + filebeat + kafka+ Kibana 工作流程: filebeat采集日志——kafka缓存日志数据——Logstash过滤,分析日志数据——Elasticsearch存储数据——Kibana生成报表进行展示 具体流程: filebeat采集日志,再将日志数据传递给消息队列kafka; kafka缓存日志数据,防止日志丢失 Logstash从消息队列kafka拿取日志数据进行过滤,分析并将数据发送到Elasticsearch进行存储 Kibana对Elasticsearch存储的数据进行可视化分析生成报表,通过Kibana web界面展示
|