内容纲要
1. 什么是 ELK?
ELK 是一套 日志采集、存储、分析和可视化 的开源解决方案,由三个核心组件组成:
- Elasticsearch (E)
- Logstash (L)
- Kibana (K)
因为这三者首字母合起来就是 ELK,所以通常直接称为 ELK Stack。
现在很多公司会用它做 日志平台、监控分析、搜索服务,也常配合 Beats(轻量数据采集器)一起使用,称为 Elastic Stack。
2. 三个核心组件的作用
🔹 E = Elasticsearch
- 一个 分布式搜索和分析引擎
- 基于 Lucene 构建,支持全文检索、结构化数据存储、聚合计算
- 在 ELK 中主要用于 存储日志、支持快速检索和聚合
- 类似数据库的角色,但更适合日志和搜索场景
🔹 L = Logstash
- 一个 数据采集和处理管道工具
- 支持从不同来源(文件、数据库、消息队列、API 等)收集数据
- 可以对数据进行 过滤、清洗、格式转换,再输出到 Elasticsearch
- 类似一个 数据中转 + 清洗工厂
🔹 K = Kibana
- 一个 数据可视化和分析工具
- 基于 Web 界面,直接连接 Elasticsearch
- 可以做 查询、仪表盘、图表展示、告警
- 让日志数据 直观可见,而不是只在数据库里查询
3. 一个常见工作流程
- 日志产生:应用、系统、网络设备等产生大量日志
- 收集处理:Logstash 收集日志,解析/清洗格式,输出到 Elasticsearch
- 存储索引:Elasticsearch 存储日志并建立索引,方便快速查询
- 展示分析:Kibana 从 Elasticsearch 拉取数据,做图表和报表
👉 总结一句话:
ELK = Elasticsearch (存储检索) + Logstash (收集处理) + Kibana (展示分析), 是一整套日志解决方案。