一、什么是ELK?
ELK 是 Elasticsearch、Logstash、Kibana 三大开源框架的首字母大写简称。市面上也被称为Elastic Stack。其中 Elasticsearch 是一个基于Lucene、分布式、通过Restful方式进行交互的近实时搜索平台框架。像类似百度、谷歌这种大数据全文搜索引擎的场景都可以使用 Elasticsearch作为底层支持的框架,可见 **Elasticsearch 提供的搜索能力确实强大,市面上很多时候我们称Elasticsearch 为 es。Logstash **是 **ELK 的中央数据流引擎,用于从不同目标(文件/数据存储/MQ)收集的不同格式数据,经过过滤后支持输出到不同目的地(文件/MQ/Redis/Elasticsearch/Kafka等)。Kibana **可以将 **Elasticsearch **的数据通过友好的页面展示出来,提供实时分析的功能。
**ELK 是三个软件的统称,即 Elasticsearch、Logstash **和 **Kibana **三个开源软件的缩写。这三款软件都是开源软件,通常配合使用,并且都先后归于 Elastic.co 企业名下,故被简称为 **ELK 协议栈。ELK **主要用于部署在企业架构中,收集多台设备上多个服务的日志信息,并将其统一整合后提供给用户。
市面上很多开发只要提到 **ELK **能够一致说出它是一个日志分析架构技术栈总称,但实际上 **ELK **不仅仅适用于日志分析,它还可以支持其它任何数据分析和收集的场景,日志分析和收集只是更具有代表性,并非唯一性。
ELK官网:https://www.elastic.co/cn/
其页面如下所示:
二、ELK简介
2.1 E -- ElasticSearch
**Elasticsearch 是一个分布式、RESTful **风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。作为 **Elastic Stack 的核心,Elasticsearch **会集中存储您的数据,让您飞快完成搜索,微调相关性,进行强大的分析,并轻松缩放规模。
ElasticSearch官网
2.2 L -- Logstash
集中、转换和存储数据
**Logstash **是免费且开放的服务器端数据处理管道,能够从多个来源采集数据,转换数据,然后将数据发送到您最喜欢的“存储库”中。
**Logstash **能够动态地采集、转换和传输数据,不受格式或复杂度的影响。利用 Grok 从非结构化数据中派生出结构,从 IP 地址解码出地理坐标,匿名化或排除敏感字段,并简化整体处理过程。
Logstash官网
2.3 K -- Kibana
**Kibana **是一个免费且开放的用户界面,能够让您对 **Elasticsearch **数据进行可视化,并让您在 **Elastic Stack **中进行导航。您可以进行各种操作,从跟踪查询负载,到理解请求如何流经您的整个应用,都能轻松完成。
Kibana官网
三、ELK优点
1、处理方式灵活: Elasticsearch 是全文索引,具有强大的搜索能力。
2、配置相对简单: Kibana 的配置非常简单,Elasticsearch 则全部使用Json接口,配置也不复杂,Logstash 的配置使用模块的方式,配置也相对简单。
3、检索性能高:ELK 架构通常可以达到百亿级数据的查询秒级响应。
4、集群线性扩展:Elasticsearch 本身没有单点的概念,自动默认集群模式,Elasticsearch 和Logstash 都可以灵活扩展。
5、页面美观: **Kibana **的前端设计美观,且操作简单。
完结!
版权归原作者 No8g攻城狮 所有, 如有侵权,请联系我们删除。