美文网首页
监控-1.采集器选型

监控-1.采集器选型

作者: 极简架构 | 来源:发表于2023-10-08 09:42 被阅读0次

监控采集器选型

1.Telegraf

Telegraf是InfluxData 公司的产品,开源协议是 MIT,主要配合 InfluxDB 使用;Telegraf 也可以把监控数据推给 Prometheus、Graphite、Datadog、OpenTSDB 等很多其他存储,但和 InfluxDB 的对接是最丝滑的;
Telegraf 是指标领域的 All-In-One 采集器,支持各种采集插件,只需要使用 Telegraf 这一个采集器,就能解决绝大部分采集需求。
缺点: 与Prometheus生态集成需要没那么丝滑,需要改造;

PUSH 模型:Telegraf 采集了数据之后调用服务端的接口来推送数据。

2.Exporter

Exporters 用得最广泛
Exporter 是专门用于 Prometheus 生态的组件,Prometheus 生态的采集器比较零散,每个采集目标都有对应的 Exporter 组件,比如 MySQL 有 mysqld_exporter,Redis 有 redis_exporter,交换机有 snmp_exporter,JVM 有 jmx_exporter等
支持2种方式Exporter: 1.外部单独部署Exporter采集Metrics指标;2.中间件组件内置支持了 Prometheus,直接通过自身的 /metrics 接口暴露监控数据,不用再单独伴生 Exporter,简化架构

PULL 模型:不管是 Exporter 还是直接内置支持 Prometheus 协议的各类组件,都提供 HTTP 接口(通常是 /metrics )来暴露监控数据,让监控系统来拉。

3.Grafana-Agent

https://github.com/grafana/agent
Grafana-Agent 是 Grafana 公司推出的一款 All-In-One 采集器,不但可以采集指标数据,也可以采集日志数据和链路数据。开源协议是 Apache 2.0,比较开放。
Grafana-Agent 是如何快速集成各类采集能力的呢?Grafana-Agent 写了个框架,方便导入各类 Exporter,把各个 Exporter 当做 Lib 使用,常见的 Node-Exporter、Kafka-Exporter、Elasticsearch-Exporter、Mysqld-Exporter 等,都已经完成了集成。这样我们就不用到处去找各类 Exporter,只使用 Grafana-Agent 这一个二进制就可以搞定众多采集能力了。

Grafana-Agent 这种集成 Exporter 的方式,完全兼容 Exporter 的指标体系,比如 Node-Exporter。如果我们的场景不方便使用 PULL 的方式来抓取数据,就可以换成 Grafana-Agent,采用 PUSH 的方式推送监控数据,完全兼容 Node-Exporter 的指标。当然,Exporter 种类繁多,Grafana-Agent 不可能全部集成,对于默认没有集成进去的 Exporter,Grafana-Agent 也支持用 PULL 的方式去抓取其他 Exporter 的数据,然后再通过 Remote Write 的方式,将采集到的数据转发给服务端。

Logging日志采集:Grafana-Agent 集成了 Loki 生态的日志采集器 Promtail。
APM链路数据: Grafana-Agent 集成了 OpenTelemetry Collector。
Grafana-Agent 优势: 相当于把可观测性三大支柱的采集能力都建全了。
一个 Agent 搞定所有采集能力有个显而易见的好处,就是便于附加一些通用标签,比如某个机器的所有可观测性数据,都统一打上机器名的标签,后面就可以使用这种统一的标签做关联查询,这个关联能力是这类 All-In-One 采集器带来的最大好处。

4.Categraf

https://github.com/flashcatcloud/categraf
Categraf是快猫团队开源的一款监控采集器,开源协议是 MIT,非常开放。
优点:

  1. Categraf 的定位类似 Grafana-Agent,支持 metrics、logs、traces 的采集,未来也会支持事件的采集
  2. 对于同类监控目标的多个实例的场景,又希望做出 Telegraf 的体验。
  3. 对于所有的采集插件,不但会提供采集能力,也会提供监控大盘、告警规则,让社区开箱即用。
  4. Categraf 偏重 Prometheus 生态,标签是稳态结构,只采集数值型时序数据,通过 Remote Write 方式推送数据给后端存储,所有支持 Remote Write 协议的时序库都可以对接,比如 Prometheus、VictoriaMetrics、M3DB、Thanos 等等。Categraf 也支持直接读取 prometheus.yml 中的 scrape 配置,对接各类服务发现机制

其他: Datadog-Agent、Metricsbeat

总结: 很多时候,一个采集器可能搞不定所有业务需求,使用一款主力采集器,辅以多款其他采集器是大多数公司的选择。

采集器选型对比

image.png

相关文章

  • 监控系统选型Prometheus、TICK、Open-falco

    监控系统选型 Prometheus监控场景: 业务监控、性能监控、容器监控、微服务监控、部分应用监控(能够做的应用...

  • Prometheus监控Linux服务器

    监控linux服务器 思路:被监控端安装指标采集器,promethues 添加agent端指标采集接口的url,g...

  • 性能监控之Telegraf+InfluxDB+Grafana+P

    前言 监控集成选型的 Telegraf 探针,最近需要实现对 Oracle 数据库的做实时监控,查了下 Teleg...

  • 2020-12-08 Filebeat快速入门

    Filebeat简介 Filebeat是一款基于libbeat的轻量级日志采集器,用于监控日志文件、目录,收集事件...

  • ELK配合Filebeat完成日志采集

    一、组件介绍 1.1 Filebeat Filebeat是本地文件的日志数据采集器,可监控日志目录或特定日志文件(...

  • 前端质量之灰度监控的有效实践

    本文将介绍更聚焦灰度监控的报警配置,希望有助于大家对灰度监控监控系统的认识,以及在技术选型时做出更合适的选择。原文...

  • Open-falcon、Prometheus、Zabbix监控告

    选型背景 这次采用开源监控系统主要是为了监控一些自定义业务并进行告警,所以重点关注了上传自定义数据、监控、显示、存...

  • 2020-01-04

    今天学习: 可运维架构设计和实践 已完成主要掌握了日志监控的几种常见选型,还有微服务架构常见的配置管理工具选型。...

  • 可选型Optional

    Optional可选型 1.什么是可选型2.为什么要有可选型3.可选型的使用4.可选型的本质5.?与!与?? 什么...

  • filebeat

    Filebeat是本地文件的日志数据采集器,可监控日志目录或特定日志文件(tail file),并将它们转发给El...

网友评论

      本文标题:监控-1.采集器选型

      本文链接:https://www.haomeiwen.com/subject/caxbbdtx.html