ELK代表 Elasticsearch,Logstash,和 Kibana .在ELK堆栈中,Logstash从不同的输入源中提取日志记录数据或其他事件.它处理事件并稍后将其存储在Elasticsearch中. Kibana是一个Web界面,它从Elasticsearch访问日志数据并将其可视化.
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的可视化工具,可以帮助开发人员和其他人来分析Loglast在Elasticsearch引擎中收集的大量事件的变化.此可视化使您可以轻松预测或查看输入源的错误趋势或其他重要事件的变化.