Logstash – ELK 堆栈
Logstash – ELK 堆栈
ELK 代表Elasticsearch、Logstash和Kibana。在 ELK 堆栈中,Logstash 从不同的输入源中提取日志数据或其他事件。它处理事件,然后将其存储在 Elasticsearch 中。Kibana 是一个 Web 界面,它访问来自 Elasticsearch 的日志数据并将其可视化。
Logstash 和 Elasticsearch
Logstash 提供了输入输出 Elasticsearch 插件来读写日志事件到 Elasticsearch。Elasticsearch 公司也推荐将 Elasticsearch 作为输出目的地,因为它与 Kibana 兼容。Logstash 通过 http 协议将数据发送到 Elasticsearch。
Elasticsearch 提供批量上传功能,有助于将来自不同来源或 Logstash 实例的数据上传到集中式 Elasticsearch 引擎。ELK 与其他 DevOps 解决方案相比具有以下优势 –
-
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 收集的大量事件的变化。这种可视化使预测或查看输入源的错误或其他重要事件趋势的变化变得容易。