logstack 日志技术栈-01-ELK/EFK 入门介绍 ELK+filebeta

常见日志收集方案

1.1、EFK

​在Kubernetes集群上运行多个服务和应用程序时,日志收集系统可以帮助你快速分类和分析由Pod生成的大量日志数据。

Kubernetes中比较流行的日志收集解决方案是Elasticsearch、Fluentd和Kibana(EFK)技术栈,也是官方推荐的一种方案。

1)Elasticsearch:是一个实时的,分布式的,可扩展的搜索引擎,它允许进行全文本和结构化搜索以及对日志进行分析。它通常用于索引和搜索大量日志数据,也可以用于搜索许多不同种类的文档。

2)Kibana:Elasticsearch通常与Kibana一起部署,kibana可以把Elasticsearch采集到的数据通过dashboard(仪表板)可视化展示出来。Kibana允许你通过Web界面浏览Elasticsearch日志数据,也可自定义查询条件快速检索出elasticccsearch中的日志数据。

3)Fluentd:是一个流行的开源数据收集器,我们在 Kubernetes 集群节点上安装 Fluentd,通过获取容器日志文件、过滤和转换日志数据,然后将数据传递到 Elasticsearch 集群,在该集群中对其进行索引和存储。

1.2、ELK Stack

1)Elasticsearch:日志存储和搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。

2)Logstash:是一个完全开源的工具,他可以对你的日志进行收集、过滤,并将其存储供以后使用(支持动态的从各种数据源搜集数据,并对数据进行过滤、分析、丰富、统一格式等操作。)。

3)Kibana :是一个开源和免费的工具,Kibana可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。

ELK

考虑到聚合端(日志处理、清洗等)负载问题和采集端传输效率,一般在日志量比较大的时候在采集端和聚合端增加队列,以用来实现日志消峰。

1.3、ELK+filebeat

ELK+filebeat

Filebeat(采集)---> Logstash(聚合、处理)---> ElasticSearch (存储+检索)--->Kibana (展示)

1.4、其他方案

ELK日志流程可以有多种方案(不同组件可自由组合,根据自身业务配置),常见有以下:

1)Logstash(采集、处理)---> ElasticSearch (存储)--->Kibana (展示) 2)Logstash(采集)---> Logstash(聚合、处理)---> ElasticSearch (存储)--->Kibana (展示) 3)Filebeat(采集、处理)---> ElasticSearch (存储)--->Kibana (展示) 4)Filebeat(采集)---> Logstash(聚合、处理)---> ElasticSearch (存储)--->Kibana (展示) 5)Filebeat(采集)---> Kafka/Redis(消峰) ---> Logstash(聚合、处理)---> ElasticSearch (存储)--->Kibana (展示)

相关推荐
一只大袋鼠几秒前
Java进阶:CGLIB动态代理解析
java·开发语言
环流_14 分钟前
HTTP 协议的基本格式
java·网络协议·http
爱滑雪的码农15 分钟前
Java基础十三:Java中的继承、重写(Override)与重载(Overload)详解
java·开发语言
【 】42319 分钟前
C++&STL(Standard Template Library,标准模板库)
java·开发语言·c++
茉莉玫瑰花茶19 分钟前
LangChain 核心组件 [ 2 ]
java·数据库·langchain
信徒_33 分钟前
ID 生成技术选型
java
a8a30243 分钟前
Laravel8.x新特性全解析
java·spring boot·后端
XiYang-DING1 小时前
【Java EE】CAS(Compare And Swap)
java·开发语言·java-ee
白露与泡影1 小时前
Spring Boot 完整流程
java·spring boot·后端
空中海1 小时前
第二章:Maven进阶篇 — 依赖管理与构建生命周期
java·maven