Logstash - ELK 堆栈

ELK 代表 Elasticsearch、LogstashKibana。在 ELK 堆栈中,Logstash 从不同的输入源提取日志数据或其他事件。它处理事件,然后将其存储在 Elasticsearch 中。Kibana 是一个 Web 界面,它访问 Elasticsearch 中的日志数据并将其可视化。

ELK

Logstash 和 Elasticsearch

Logstash 提供输入和输出 Elasticsearch 插件,用于读取和写入日志事件到 Elasticsearch。Elasticsearch 公司还推荐使用 Elasticsearch 作为输出目标,因为它与 Kibana 兼容。 Logstash 通过 http 协议将数据发送到 Elasticsearch。

Elasticsearch 提供批量上传功能,可帮助将来自不同来源或 Logstash 实例的数据上传到集中式 Elasticsearch 引擎。与其他 DevOps 解决方案相比,ELK 具有以下优势 −

  • ELK 堆栈更易于管理,可扩展以处理 PB 级事件。

  • ELK 堆栈架构非常灵活,并提供与 Hadoop 的集成。Hadoop 主要用于存档目的。 Logstash 可以通过 flume 直接连接到 Hadoop,Elasticsearch 提供了一个名为 es-hadoop 的连接器来连接 Hadoop。

  • ELK 的总拥有成本远低于其他替代方案。

Logstash 和 Kibana

Kibana 不直接与 Logstash 交互,而是通过数据源(即 ELK 堆栈中的 Elasticsearch)进行交互。Logstash 从每个来源收集数据,Elasticsearch 以极快的速度对其进行分析,然后 Kibana 提供对该数据的可操作见解。

Kibana 是一个基于 Web 的可视化工具,可帮助开发人员和其他人分析 Elasticsearch 引擎中 Logstash 收集的大量事件的变化。这种可视化可以轻松预测或查看输入源的错误或其他重要事件趋势的变化。