Elasticsearch:Ingest architectures - 摄取架构

我们提供各种采集架构,以满足各种用例和网络配置的需求。

要将数据采集到 Elasticsearch,请使用最符合你的需求和用例的选项。对于许多用户和用例来说,最简单的方法是使用 Elastic Agent 采集数据并将其发送到 Elasticsearch。Elastic Agent 和 Elastic Agent 集成适用于许多流行的平台和服务,是一个不错的起点。

提示:你可以在自己的硬件上托管 Elasticsearch,也可以将数据发送到 Elastic Cloud 上的 Elasticsearch。对于大多数用户来说,Elastic Agent 直接写入 Elastic Cloud 上的 Elasticsearch 是最简单、最快捷的实现价值的方式。我们的托管 Elasticsearch 服务可在 AWS、GCP 和 Azure 上使用,你可以免费试用。

更多关于摄取架构的文章,你可以详细阅读文章 “Elastic:开发者上手指南” 中的 “Elastic Stack 架构” 章节。

添加数据到 Elasticsearch 中

你可以通过多种方式将数据导入 Elasticsearch,这称为提取或索引数据。使用 Elastic Agent、Beats、Logstash、Elastic 语言客户端、Elastic 连接器或企业搜索网络爬虫。所选的选项(或组合)取决于你是索引一般内容还是带时间戳的数据。

一般内容

  • 索引 HTML 页面、目录和其他文件等内容。使用 Elastic 语言客户端将数据从应用程序直接发送到 Elasticseach。否则,请使用 Elastic 内容 connectors 或 Elastic 网络爬虫。

带时间戳的数据

  • 索引带时间戳的数据的首选方法是使用 Elastic Agent。Elastic Agent 是一种向主机添加日志、指标和其他类型数据监控的单一、统一方法。它还可以保护主机免受安全威胁、查询操作系统的数据以及转发远程服务或硬件的数据。每个基于 Elastic Agent 的集成都包括默认的提取规则、仪表板和可视化,可立即开始分析你的数据。Fleet Management 使你能够从 Kibana 集中管理所有已部署的 Elastic Agent。
  • 如果你的数据源没有可用的 Elastic Agent 集成,请使用 Beats 收集数据。Beats 是数据传送器,旨在从服务器收集和传送特定类型的数据。你可以为要收集的每种类型的数据安装一个单独的 Beat。某些 Beats(例如 Filebeat 和 Metricbeat)可以使用提供默认配置、Elasticsearch 采集管道定义和 Kibana 仪表板的模块。不为 Beats 提供 fleet 管理功能。
  • 如果 Elastic Agent 和 Beats 都不支持你的数据源,请使用 Logstash。Logstash 是一个开源数据收集引擎,具有实时管道功能,支持各种数据源。你还可以使用 Logstash 来保存传入数据,以确保在出现采集高峰或需要将数据发送到多个目的地时数据不会丢失。

设计数据提取管道

虽然你可以将数据直接发送到 Elasticsearch,但数据提取管道通常包括其他步骤来操作数据、确保数据完整性或管理数据流。

注意:该图重点关注带时间戳的数据。

数据处理

在将数据编入索引并存储在 Elasticsearch 中之前,通常需要对其进行清理、规范化、转换或丰富。

  • Elastic Agent 和 Beats 处理器使你能够在边缘处理数据。如果你需要控制通过网络发送的数据,或者需要使用主机上可用的信息丰富原始数据,这将非常有用。
  • Elasticsearch 摄取管道使你能够在数据进入时对其进行处理。这避免了在你从中收集数据的主机上增加额外的处理开销。
  • Logstash 使你能够避免在边缘进行重量级处理,但仍可以在将数据发送到 Elasticsearch 之前对其进行处理。这还使你能够将处理后的数据发送到多个目的地。

预处理数据的一个原因是控制编入 Elasticsearch 的数据结构 —— 数据模式(data schema)。例如,使用摄取管道将数据映射到 Elastic Common Schema (ECS)。或者,在查询时使用运行时字段来:

  • 无需了解数据的结构即可开始处理数据
  • 无需重新索引数据即可向现有文档添加字段
  • 覆盖索引字段返回的值
  • 无需修改底层架构即可为特定用途定义字段

数据完整性

Logstash 可增强你不想丢失的重要数据的数据弹性。Logstash 提供磁盘持久队列 (persistent queue - PQ),无需外部缓冲机制即可吸收突发事件。它会尝试传递存储在 PQ 中的消息,直到传递至少成功一次。

Logstash 死信队列 (dead letter queue - DLQ) 为 Logstash 无法处理的事件提供磁盘存储,让你有机会评估它们。你可以使用 dead_letter_queue 输入插件轻松地重新处理 DLQ 事件。

数据流

如果你需要从多个 Beats 或 Elastic Agents 收集数据,请考虑使用 Logstash 作为代理。Logstash 可以从多个端点(即使在不同的网络上)接收数据,并通过单个防火墙规则将数据发送到 Elasticsearch。与为每个端点设置单独的规则相比,你可以用更少的工作获得更高的安全性。

Logstash 可以从单个管道发送到多个输出,以帮助你从数据中获取最大价值。

接下来该怎么做

我们有指南和许多实践教程,可帮助你开始将数据导入集群。

为 Elastic 解决方案导入数据

开始使用 Elastic Observability

  • 使用 Elastic Observability 深入了解你的应用程序和系统的行为。按照我们的指南提取各种数据类型,例如日志和指标、跟踪和 APM 以及来自 Splunk 的数据。还有几个教程可供选择。

将数据添加到 Elastic Security

  • 使用 Elastic Security 快速检测、调查和应对整个环境中的威胁和漏洞。你可以使用 Elastic Agent 将数据提取到 Elastic Defend 集成中,或与许多其他与 Elastic Security 协同工作的集成一起使用。你还可以从 Splunk 或发送符合 ECS 的安全数据的各种第三方收集器中提取数据。

使用 Elastic Agent、Beats 和 Logstash 采集数据

对于想要构建自己的解决方案的用户,我们可以帮助你开始使用 Elasticsearch Platform 产品采集数据。

Elastic 集成

  • Elastic 集成是一种将数据连接到 Elastic Stack 的简化方式。集成适用于流行的服务和平台,如 Nginx、AWS 和 MongoDB,以及许多通用输入类型,如日志文件。

Beats 和 Elastic Agent 比较

  • Beats 和 Elastic Agent 都可以直接或通过 Logstash 向 Elasticsearch 发送数据。你可以使用本指南来确定这些主要采集工具中的哪一个最适合你的用例。

Fleet 管理简介

  • Fleet 在 Kibana 中提供了一个基于 Web 的 UI,用于集中管理 Elastic Agent 及其策略。

Logstash 简介

  • 使用 Logstash 动态统一来自不同来源的数据,并将数据规范化到你选择的目的地。

使用 Elastic 网络爬虫、连接器提取数据

使用网络爬虫添加数据

  • 使用网络爬虫以编程方式从网站和知识库中发现、提取和索引可搜索内容。

使用连接器添加数据

  • 将数据从原始数据源同步到 Elasticsearch 索引。连接器使你能够创建数据源的可搜索、只读副本。

从你的应用程序中提取数据

Elasticsearch 语言客户端

  • 使用 Elasticsearch 语言客户端将应用程序中的数据提取到 Elasticsearch 中。

企业搜索语言客户端

  • 企业搜索编程语言客户端库为这些语言提供本机 API,以将数据提取到企业搜索、应用搜索和工作场所搜索中。

应用程序提取教程

  • 这些实践指南演示了如何使用 Elasticsearch 语言客户端从你的应用程序中提取数据。

操作和预处理数据

摄取管道 - ingest pipeline

  • Elasticsearch 采集管道可让你在索引之前对数据执行常见转换。

Elastic Agent 处理器

  • 使用 Elastic Agent 轻量级处理器在源头解析、过滤、转换和丰富数据。

创建 Logstash 管道

  • 通过将插件(输入、输出、过滤器,有时还有编解码器)串联在一起来创建 Logstash 管道,以便在采集期间处理数据。

示例数据

如果你刚刚开始了解 Elastic,并且还没有想好具体的用例,那么你可以加载 Kibana 中的一个示例数据集。它们配有示例可视化、仪表板等,可以快速了解 Elastic 的潜力。

摄取架构

Elastic Agent 到 Elasticsearch

什么时候使用?

你的数据源可以使用 Elastic Agent 集成:

  • 安装了 Elastic Agent 的软件组件
  • 使用 API 进行数据收集的软件组件

Elastic Agent 经 Logstash 到 Elasticsearch

什么时候使用?

你需要 Logstash 提供的附加功能:

  • Elastic Agent 和 Elasticsearch 之间的丰富
  • 持久队列 (PQ) 缓冲以适应网络问题和下游不可用
  • 在 Elastic Agent 对 Elastic Agent 网络外部连接有网络限制的情况下进行代理
  • 数据需要根据内容路由到多个 Elasticsearch 集群和其他目的地

Elastic Agent 代理至 Elasticsearch

什么时候使用?

  • Agents 具有网络限制,阻止连接到 Elastic Agent 网络之外。请注意,Logstash 作为代理是一种选择。

Elastic Agent 到 Elasticsearch,使用 Kafka 作为中间件消息队列

什么时候使用?

Kafka 是你的中间件消息队列:

  • Kafka ES 接收连接器,用于从 Kafka 写入 Elasticsearch
  • Logstash,用于从 Kafka 读取并路由到 Elasticsearch

Logstash 到 Elasticsearch

什么时候使用?

  • 你需要从 Elastic Agent 无法读取的源(例如数据库、AWS Kinesis)收集数据。查看 Logstash 输入插件。

Elastic 物理隔离架构

什么时候使用?

  • 你想要在隔离环境中部署 Elastic Agent 和 Elastic Stack(无法访问外部网络)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/41024.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深度学习——深度学习中感受野的计算

感受野 在卷积神经网络(CNN)中,感受野(Receptive Field) 是一个非常重要的概念。它描述了网络中某一层的输出(通常是特征图上的一个像素点)所对应的输入图像上的空间范围。这个范围代表了该输出…

SARscape——地理编码与辐射定标

目录 一、算法原理1、概述2、参考文献 二、软件操作三、结果展示1、原始图像2、处理结果 一、算法原理 1、概述 SAR系统观测到的是电磁波入射地球表面后反射(后向散射)的雷达脉冲的强度和相位信息。这个信息编码到雷达坐标系统下,即斜距坐标…

数据结构之二叉树概念

数据结构之二叉树 二叉树简介分类普通二叉树平衡二叉树满二叉树二叉搜索树(二叉排序树、二叉查找树),平衡二叉树红黑树 B树类型B树(B-树、B_树)B树B*树 二叉树 简介 二叉树(Binary Tree) :是一种非常重要…

头歌资源库(19)在排序数组中查找元素的首尾位置

一、 问题描述 二、算法思想 该问题可以通过二分查找的思想来解决。 首先,我们可以使用二分查找找到目标值在数组中的任意一个位置(即该位置的值等于目标值)。假设找到的位置为mid。 接下来,我们需要在mid的左边和右边分别找到…

UNIAPP_顶部导航栏右侧添加uni-icons图标,并绑定点击事件,自定义导航栏右侧图标

效果 1、导入插件 uni-icons插件:https://ext.dcloud.net.cn/plugin?nameuni-icons 复制 uniicons.ttf 文件到 static/fonts/ 下 仅需要那个uniicons.ttf文件,不引入插件、单独把那个文件下载到本地也是可以的 2、配置页面 "app-plus":…

Python爬虫+数据分析+数据可视化图形-爬取高校排名数据

①本文主要使用python 爬取了中国大学排名前30的大学信息,并进行了数据处理及分析,是一个比较经典的python爬虫和分析项目 ②主要内容:爬虫数据预处理数据可视化分析 完整代码请看这里拿👇↓↓↓

Mac本地部署大模型-单机运行

前些天在一台linux服务器(8核,32G内存,无显卡)使用ollama运行阿里通义千问Qwen1.5和Qwen2.0低参数版本大模型,Qwen2-1.5B可以运行,但是推理速度有些慢。 一直还没有尝试在macbook上运行测试大模型&#xf…

我这个经验好找嵌入式的工作吗?

大家好,我是麦鸽。最近网友的提问,这样的经验,好找嵌入式的工作吗? 下面是网友的情况: 本人目前大二机器人工程,未来想要入职嵌入式行业,有robomaster比赛经验本人负责电控,但是由于…

基因组学系列3:基因分型Phasing与单倍型参考序列HRC

1. 基因分型Phasing概念 基因分型,也称为基因定相、单倍体分型、单倍体构建等,即将一个二倍体(或多倍体)基因组上的等位基因(或杂合位点)正确定位到父亲或母亲的染色体上,最终使得来自同一亲本…

相亲交友APP系统婚恋交友社交软件开发语音视频聊天平台定制开发-婚恋相亲交友软件平台介绍——app小程序开发定制

互联网飞速发展的时代,相亲交友软件成为了许多年轻人首选的相亲方式,越来越多的单身男女希望在婚恋交友软件平台上寻找灵魂伴侣,相亲交友软件因此具有很高的市场价值。 多客婚恋相亲交友系统是一款定位高端,到手就能运营的成熟婚恋…

软件测评中心▏软件验收测试方法和测试内容简析

在当今数字化转型的浪潮下,软件验收测试变得越来越重要。软件验收测试,顾名思义,是对软件进行验收的过程中进行的一项测试。它用于确保软件在满足需求、达到预期效果后才能正式交付给客户使用。软件验收测试是一项全面、系统的测试过程&#…

sublime 3 背景和字体颜色修改

sublime 4 突然抽风,每次打开都显示 “plugin_host-3.3 has exited unexpectedly, some plugin functionality won’t be available until Sublime Text has been restarted” 一直没调好,所以我退回到sublime 3了。下载好了软件没问题,但是一…

Zabbix 配置grafana对接

zabbix对接grafana简介 Zabbix与Grafana对接可以实现更加丰富和美观的数据可视化,可以让您利用Grafana强大的可视化功能来展示Zabbix收集的数据。 zabbix插件的两种安装方式 使用grafana-cli 命令进行安装在grafana管理页面中进入Administration/Plugins and dat…

在RT-Thread-Studio中添加arm_math库

1.在CMSIS\Lib\GCC中找到对应的库,如本文使用的libarm_cortexM4lf_math.a。将库拷贝到工程,并做如下图设置。搜索路径为库文件在项目中的实际位置。 2.将CMSIS\DSP\Include下的文件复制到工程目录中,并添加包含路径 3.添加宏定义&#xff0c…

QTreeWidget的简单使用

使用 QTreeWidget 实现复杂树控件功能的详细教程_treewidget 加控件-CSDN博客 #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <QTreeWidget> namespace Ui { class MainWindow; }class MainWindow : public QMainWindow {Q_OBJECTpu…

阿里巴巴Arthas分析调优JVM实战及常量池详解

目录 一、阿里巴巴Arthas详解 Arthas使用场景 Arthas命令 Arthas使用 二、GC日志详解 如何分析GC日志 CMS G1 GC日志分析工具 三、JVM参数汇总查看命令 四、Class常量池与运行时常量池 字面量 符号引用 五、字符串常量池 字符串常量池的设计思想 三种字符串操作…

freemarker生成pdf,同时pdf插入页脚,以及数据量大时批量处理

最近公司有个需求&#xff0c;就是想根据一个模板生成一个pdf文档&#xff0c;当即我就想到了freemarker这个远古老东西&#xff0c;毕竟freemarker在模板渲染方面还是非常有优势的。 准备依赖&#xff1a; <dependency><groupId>org.springframework.boot</gr…

【IDEA】maven如何进行文件导入,配置并打包

一&#xff0c;介绍、安装 1、maven介绍 maven是一个Java世界中&#xff0c;构建工具。 核心功能&#xff1a; (1) 管理依赖&#xff1a; 管理文件运行的顺序逻辑依赖关系。对配置文件&#xff0c;进行构建和编译。其也是在调用jdk&#xff0c;来进行编译打包工作。 (2) 打…

JavaScript中的原型和原型链

一、原型&#xff1a;每个函数都有prototype属性&#xff0c;称之为原型&#xff0c;这个属性也是个对象所以也称之为原型对象。 1.原型可以放一些属性和方法&#xff0c;供实例对象使用。 <body><script>const arr new Array(1,3,5,7,6)document.getElementByI…