智能
助手
最大化  清空记录 停止  历史记录
翻译选中文本
选中一段文本后进行翻译
名词解释
选中一段文本后进行名词解释
知识图谱生成
通过图谱展示知识信息
登录用户在知识浏览页面可用
答案生成
AI自动回答一个问答功能中的问题
登录用户在问答浏览页面,且问题开放回答中可用
知识摘要
自动为当前知识生成摘要
知识浏览页面可用
知识问答
针对当前知识进行智能问答
知识浏览面可用
   16  
查询码: 00000197
1. Elastic Stack 简介
作者: 文艺范儿 于 2025年12月10日 发布在分类 / Elastic Stack / Elastic Stack ,于 2025年12月10日 编辑
ES

1. Elastic Stack 简介

Elastic Stack(以前称为 ELK Stack)是一套由 Elastic NV 公司开发的开源数据管理和分析软件套件。它是一组强大工具的集合,专门用于从任何来源、任何格式的数据中实时地搜索、分析和可视化数据。

Elastic Stack 是一个功能完整、易于扩展的数据可观测性平台。它将数据采集、处理、存储和可视化无缝集成,使企业和开发者能够从海量杂乱的数据中快速提取有价值的信息,广泛应用于运维、安全和业务分析等领域。

官网:https://www.elastic.co/cn

1.1 核心组成

Elastic Stack 主要由四个核心产品组成,首字母缩写为 ELK

  1. Beats

  2. Logstash

  3. Elasticsearch

  4. Kibana

它们在整个数据处理流程中扮演着不同的角色,协同工作,形成了一个完整的数据管道。

粘贴图片

1. Beats:轻量型数据采集器

Beats 是一个平台,由多种单一的、轻量级的数据采集器组成。它们被安装在需要收集数据的服务器上,负责从成百上千台机器和系统收集数据并发送给 Logstash 或 Elasticsearch。

常见的 Beats 包括:

  • Filebeat:最常用,用于收集和转发日志文件。

  • Metricbeat:用于收集系统和服务级的指标(如 CPU、内存、Redis、Nginx 等)。

  • Packetbeat:用于网络数据包分析,监控应用流量。

  • Winlogbeat:专门用于收集 Windows 事件日志。

  • Auditbeat:收集审计数据,监控服务器的完整性。

特点:占用资源少,使用 Go 语言编写,部署简单。


2. Logstash:数据加工处理管道

Logstash 是一个强大的数据处理引擎,用作数据管道。它能够动态地从多种数据源采集数据,并对数据进行转换和 enrichment(丰富),然后将其发送到指定的“存储库”(通常是 Elasticsearch)中。

Logstash 的管道包含三个阶段:

  1. Input(输入):从数据源(如 Beats、Kafka、数据库、文件等)获取数据。

  2. Filter(过滤):解析、转换和丰富数据。这是最核心的阶段,常用插件包括:

    • grok:解析非结构化的日志数据并将其结构化。

    • mutate:对字段进行修改,如重命名、删除、替换。

    • date:解析日期字段。

    • geoip:根据 IP 地址添加地理信息。

  3. Output(输出):将处理后的数据发送到目的地,最常见的是 Elasticsearch,也可以是 Redis、Kafka、电子邮件等。

特点:功能强大,但相对重量级,需要 JVM 来运行。


3. Elasticsearch:搜索和分析引擎

Elasticsearch 是整个栈的核心。它是一个分布式、RESTful 风格的搜索和分析引擎。它接收来自 Logstash 或 Beats 的数据,并以其强大的倒排索引技术进行存储和索引,从而提供近乎实时的搜索能力。

核心特性:

  • 分布式和高可用性:数据被分片(Shard)并在集群中的多个节点上进行复制(Replica),实现水平扩展和故障转移。

  • 近实时搜索:数据索引后,在很短的延迟内(约 1 秒)即可被搜索到。

  • 强大的 REST API:所有操作(索引、搜索、集群管理)都可以通过简单的 RESTful API 完成。

  • 倒排索引:使用倒排索引数据结构,使得全文搜索效率极高。

  • 多租户:支持多个索引,可以用于不同的项目和应用程序。

角色:负责海量数据的存储、索引和快速检索。


4. Kibana:数据可视化平台

Kibana 是为 Elasticsearch 设计的开源分析和可视化平台。它提供了一个用户友好的 Web 界面,允许用户通过图表、图形、地图等方式探索和可视化存储在 Elasticsearch 中的数据。

主要功能:

  • 数据探索(Discover):直接查询和浏览 Elasticsearch 中的原始数据。

  • 可视化(Visualize):创建各种图表,如柱状图、折线图、饼图、指标图等。

  • 仪表盘(Dashboard):将多个可视化组件组合成一个综合的监控视图。

  • Canvas:创建像素级完美的、基于数据的演示文稿。

  • Machine Learning:集成机器学习功能,自动检测数据中的异常。

  • APM:应用性能监控,用于追踪应用程序的性能问题。

  • Logs:专门的日志管理界面。

角色:将 Elasticsearch 中的数据转化为有商业价值的洞察力。


1.2 典型工作流程

以一个 网站访问日志分析 为例:

  1. 采集Filebeat被安装在 Web 服务器上,监控 Nginx 的访问日志文件,并将新的日志行发送给 Logstash

  2. 处理Logstash接收到日志后,使用 grok过滤器将杂乱的日志行解析成结构化的字段(如 client_iptimestamprequest_methodstatus_code等),然后使用 geoip过滤器根据 client_ip添加地理位置信息。最后,将处理好的数据发送到 Elasticsearch

  3. 存储与索引Elasticsearch接收数据,进行索引,并将其存储在集群中。

  4. 可视化:运维人员在 Kibana中创建一个仪表盘,包含:

    • 一个地图,显示全球访问者的分布。

    • 一个折线图,显示每分钟的请求量。

    • 一个饼图,显示 HTTP 状态码的比例。

    • 一个数据表,列出访问量最高的 URL。


1.3 核心优势与应用场景

优势:

  • 开源且功能强大:社区活跃,功能丰富。

  • 易扩展:组件清晰,可以水平扩展以处理海量数据。

  • 近实时性:从数据摄入到可查询,延迟极低。

  • 一站式解决方案:覆盖了从数据采集到可视化的完整链路。

应用场景:

  • 日志管理与分析(最主要):运维监控、故障排查、安全分析。

  • 应用搜索:为网站或应用提供强大的搜索引擎。

  • 指标分析:基础设施和应用程序性能监控。

  • 安全分析(SIEM):使用 Elastic Stack 构建安全信息和事件管理系统。

  • 业务智能:分析业务数据,生成报表和洞察。

1.4 版本区别

架构变化对比

特性 7.x 8.x 9.x

默认安全

可选

强制开启

进一步增强

集群协调

新子系统

稳定优化

云原生优化

向量搜索

基础支持

kNN搜索

增强向量

配置复杂度

中等

简化

进一步简化

云集成

基础

改进

深度集成

笔记
0人参与


 历史版本

备注 修改日期 修改人
创建版本 2025-12-10 22:37:11[当前版本] 文艺范儿

 附件

附件类型

PNGPNG

文艺知识分享平台 -V 5.2.5 -wcp