Elastic Agent 现在作为 OpenTelemetry Collector 运行:更低的内存开销,无需更改配置

作者:来自 Elastic Nima Rezainia

Elastic Agent 9.3 通过一个 OTel Collector pipeline 发送日志、指标和追踪数据,在一个由 Fleet 管理的 agent 中,同时运行 Beats integrations 和原生 OTel sources。

Elastic Agent 9.3 使用更少的内存,并且开箱即用地接受来自任何兼容 OpenTelemetry(OTel)的 source 的数据。在底层,旧的 Beats 子进程架构已经被一个基于 Elastic Distribution of OpenTelemetry(EDOT)Collector 构建的、针对日志、指标和追踪数据的单一 OTel 原生 pipeline 所取代。你现有的 integrations、dashboards、Fleet policies、alerting rules 和 ingest pipelines 都无需更改即可继续工作。

Elastic Agent 9.3 的变化:底层原生 OTel Collector

此前,Elastic Agent 充当 supervisor process,启动基于 Beats 的子进程,例如 Filebeat 或 Metricbeat。从 9.3 开始,这一架构已经被替换。Elastic Agent 本身现在基于 EDOT Collector 构建,使其在底层成为一流的 OTel Collector,同时保留原有功能。

这一架构转变的主要优势包括:

  • 更低的资源占用: 更少的子进程意味着显著降低的内存开销和更简单的部署模型。在未来版本中,这一资源占用还将进一步降低。

  • 统一的 telemetry pipeline: 日志和指标通过单一的、基于标准的 OTel pipeline 流动,追踪数据也是如此。

  • 生态系统互操作性: Elastic Agent 现在可以开箱即用地接收来自任何兼容 OTel 的 source 的数据。它也可以配置为向兼容 OTel 的 destination 发送数据。

  • 与 OTel 生态系统保持一致: 随着 OTel 生态系统通过新的 receivers、processors 和 exporters 不断成熟,Elastic Agent 部署可以自动获得这些能力。

当你从 9.3 及更高版本部署或升级 Elastic Agent 时,你部署的就是一个 OpenTelemetry Collector。EDOT 是技术基础;Elastic Agent 是产品。

现有 Beats 配置如何在 OTel Collector pipeline 中运行

Elastic 引入了 Beats Receivers,它们是可以在新的 OTel Collector pipeline 中原生执行的 Beat inputs 和 processors。对于你的团队和客户而言,这意味着:

  • 现有的 elastic-agent.yml 配置无需修改。

  • 由 Fleet 管理的 agent 会在内部自动将 policy 配置转换为 OTel 格式。

  • 所有 integrations、dashboards、ingest pipelines 和 alerting rules 都会继续像以前一样正常运行。

  • 通过 Beats Receivers 写入的数据仍然会进入与之前相同的 data streams。

升级到 9.3 是透明的,因为它使用相同的 inputs,并产生相同的 outputs。

在一个 Elastic Agent 中运行 Beats 和 OTel Collector pipelines

新的 Elastic Agent 是一个 collector,可以在单个部署中同时运行传统的基于 Beats 的采集以及原生 OTel pipelines。一个 agent policy 可以通过 Beats Receivers 采集经过 Elastic Common Schema(ECS)规范化的数据,同时从经过 OTel-instrumented 的应用和基础设施中摄取原生 OpenTelemetry Protocol(OTLP)数据。同一个 agent policy 可以在所有 telemetry 导出之前应用 OTel processing stages。

Elastic catalog 中的 OTel integrations 可以添加到任何 agent policy 中。当摄取原生 OTel 数据时,Elastic 会自动安装相关的 dashboards 和 alerts,以及必要的 content packs,无需任何手动设置。

Elastic Agent 和 EDOT 之间是什么关系?

你可能已经熟悉作为独立产品的 EDOT,即 Elastic Distribution of OpenTelemetry Collector。随着这一架构变化,EDOT 成为了现在驱动 Elastic Agent 的技术基础,而不再是用户需要单独跟踪或部署的独立产品。

今后,Elastic Agent 是受支持的、可由 Fleet 管理且功能完整的产品。对于特定的细分场景(无法安装完整版本 Elastic Agent 的环境),独立部署仍然可用,但对于绝大多数用户而言,这并不是推荐的路径。

Elastic Agent 部署选项:由 Fleet 管理 vs. 独立运行

由 Fleet 管理的 Elastic Agent独立运行的 Elastic Agent
Fleet 生命周期管理
Beats Receivers
Elastic Defend
Cloud Security
Profiler 支持
OTel 原生 pipeline
最适合大多数部署场景

升级到 Elastic Agent 9.3 时需要更改任何内容吗?

对于目前正在运行 Elastic Agent 的用户来说,升级到 9.3 无需更改配置或 integrations,也无需更改 workflows。对于正在评估采用 OTel 的客户,Elastic Agent 现在提供了一个完全受支持、可用于生产环境的 OTel Collector,并具备 Fleet 管理和丰富的 integrations,同时还提供 Elastic 完整的支持矩阵,而这一切都不需要单独部署 OTel。

借助 Elastic Agent 9.3,Elastic 的数据采集已经完全原生支持 OpenTelemetry。Elastic Agent 现在就是一个 OpenTelemetry Collector。你目前拥有的一切仍然可以正常运行,同时你还可以获得 OTel 的全部能力。

原文:https://www.elastic.co/observability-labs/blog/opentelemetry-collector-elastic-agent

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值