Elastic Stack 是什么?
Elastic Stack 是一系列由 Elastic 公司开发的产品组件,能够安全可靠地获取任何 来源、任何格式的数据,然后实时地对数据进行搜索、分析和可视化。Elastic Stack 旧称 ELK Stack,主要有 Elasticsearch,Logstash,Kibana,Beats 四种组件组成。
文章图片
特点
- 配置简单,开箱即用上手简单,只需要修改几行配置,就能快速搭建起一套 Elastic Stack 平台。
- 多种数据源支持Beats 组件支持多种数据类型,能够快速满足日志,指标,网络数据等多种数据源 接入的需求。
- 性能优异
无论是数据写入还是实时检索,性能都相当优异。
- 集群扩展性强Elasticsearch 和 Kibana 均可以进行灵活扩展,能够有效提高集群性能和高可用 性。
- 多维度分析得益于 Elasticsearch 强大的搜索能力和 Kibana 优秀的可视化功能,能够从多个 维度,对数据进行聚合分析并且展示。
Elastic Stack 除了采集提供采集各类日志的能力外,它还提供了许多开箱即用的场 景:企业搜索,可观测性,安全解决方案等。
文章图片
企业搜索 ? Elastic 企业搜索由 Elasticsearch 提供支持,性能优异,同时其采用的相关性模型 已针对实际的自然搜索进行优化且得到了实践验证,因此能够快速投入应用。同时它又 提供了灵活的定制选项,可以让客户快速根据自身需要打造精致又自然的搜索体验。
可观测性 Elastic Stack 将你的可观测性数据统一到一个强大的数据存储中,便于你实时搜索 并应用交互式分析。凭借日志、指标和 APM 追踪之间的直观导航,便能依赖 Machine Learning 暴露异常数值,并对你系统中发生的所有事件采取对策。同时提供良好的可视 化体验,能够以最直观的方式展示你的数据,完美掌握系统运行状态。
Elasticsearch 在 Elastic Stack 中的位置及能力 Elasticsearch 提供数据的存储及检索能力,并且它是最 核心的组件。外部数据采集到 Elasticsearch 后,用户便可针对他们的数据运行复杂的 查询,并使用聚合来检索自身数据的复杂汇总。
Elasticsearch Index
- 是什么?是相互关联的文档集合:Elasticsearch 以 JSON 文档 的形式存储数据。每个文档都会在一组键(字段或属性的名称)和它们对应的值(字符 串、数字、布尔值、日期、数组自值、地理位置或其他类型的数据)之间建立联系
- 底层数据结构:为倒排索引的数据结构,这一结构的设计可以允许十分快速地进行全文本搜索。倒排索引会列出在所有文档中出现的每个特有词汇,并且可以找到包含每个词汇的全部文档。
- Elasticsearch 很快
Elasticsearch 同时还是一个近实时的搜索平台,这意味着从文档索引操作到 文档变为可搜索状态之间的延时很短,一般只有一秒(这个可以同过配置进行调整)。 因此,Elasticsearch 非常适用于对时间有严苛要求的用例,例如安全分析和基础设施监测。
- Elasticsearch 具有分布式的本质特征
Elasticsearch 中存储的文档分布在不同的容器中,这些容器称为分片,可以进行复 制以提供数据冗余副本,以防发生硬件故障。Elasticsearch 的分布式特性使得它可以扩 展至数百台(甚至数千台)服务器,并处理 PB 量级的数据。
- Elasticsearch 优异的相关性检索能力
Elasticsearch 底层采用倒排索引的数据结构,检索过程中采用优异的相关性计算算 法,因此 Elasticsearch 具有优异的相关性检索能力,它能基于多个维度多搜索结果进 行评分,因此它可以与业务需求进行结合,达到满足用户需求的搜索结果。
- Elasticsearch 包含一系列广泛的功能
除了速度、可扩展性和弹性等优势以外,Elasticsearch 还有大量强大的内置功能(例 如数据汇总和索引生命周期管理),可以方便用户更加高效地存储和搜索数据。
Logstash 能力
- 采集各种样式、大小和来源的数据
Logstash 支持多 种输入选择,可以同时从众多常用来源捕捉事件。能够以连续的流式传输方式,轻松地 从你的日志、指标、Web 应用、数据存储以及各种 AWS 服务采集数据。
- 【Elastic Stack概述】实时解析和转换数据
数据从源传输到存储库的过程中,Logstash 过滤器能够解析各个事件,识别已命名 的字段以构建结构,并将它们转换成通用格式,以便进行更强大的分析和实现商业价值。
Logstash 能够动态地转换和解析数据,不受格式或复杂度的影响,比如: ? 利用 Grok 从非结构化数据中派生出结构 ? 从 IP 地址破译出地理坐标 ? 将 PII (Personal Identifiable Information)数据匿名化,完全排除敏感字段 ? 简化整体处理,不受数据源、格式或架构的影响。
- Logstash 扩展性
Logstash 采用可插拔框架,拥有 200 多个插件。
Kibana 能力 Kibana 与 Elasticsearch 和更广意义上的 Elastic Stack 紧密集成,这一点使其成 为支持下列场景的理想之选,搜索、查看并可视化 Elasticsearch 中所索引的数据,并通过创建柱状图、饼状图、 表格、直方图和地图对数据进行分析。仪表板视图能将这些可视化元素集中到一起,然 后通过浏览器加以分享,以提供有关海量数据的实时分析视图,为下列用例提供支持:
- 日志处理和分析
- 基础设施指标和容器监测
- 应用程序性能监测 (APM)
- 地理空间数据分析和可视化
- 安全分析
- 业务分析
- 机器学习
借助网络界面来监测和管理 Elastic Stack 实例并确保实例的安全。
Beats 诞生的原因 ELK 在最初仅包含 Elasticsearch,Kibana,Logstash。在旧有的日志采集系统中, 数据管道包含 3 个主要阶段,数据采集,数据处理和存储,其中的前两个阶段均由 Logstash 进行承担。然后由于 Logstash 的设计导致的内在问题,常常发生性能问题, 尤其是在有复杂的管道处理流程中。因此,转移 Logstash 的想法也应用而生,因此将 数据提取任务抽离之后,就诞生了 Beats。
Beats 优点
- 即插即用
- 扩展项强
- 轻量易部署
Beats 系列 ? Beats 提供了多种类型的采集器,方便你即插即用,搞定大多数数据类型的采集。
- Filebeats :
- Metricbeat :
- Packetbeat:
采集网络数据 HTTP 等网络协议能够让你密切监测应用程序延迟和错误、响应时间、SLA 性能、 用户访问模式和趋势等等。 而 Packetbeat 则让你能够访问这些数据,了解流量的网络 传输状态。这款工具完全采用被动模式,毫无延迟开销,并且不会妨碍你的基础架构。
- Winlogbeat :
- Auditbeat :
- Heartbeat :
- Functionbeat :
- Journalbeat :
journald 日志采集器。