Telegraf

2020-11-05 17:11:36 +08:00
 mary9
最近使用 Telegraf 完成一个监控项目,不知道有没有 V 友用过这个组件,或者是遇到过下面描述的业务场景。

我们的采集平台在业务方,和监控平台隔离,需要将采集平台的 Prometheus 的指标导入监控平台的 Prometheus 。

数据流向为:Prometheus (采集)=> Kafka => Influxdb <= Prometheus (监控)

将采集平台上的 Prometheus 指标数据先导入 Kafka,有两种方案,一种是使用 Telegraf,优点是后续的 Kafka 导入 Influxdb 可以使用 Telegraf,缺点是如果使用 Telegraf,Telegraf 采集指标是从 /metrics 接口开始采集,并不支持 Prometheus 服务发现。

另一种是使用 Prometheus 官网推荐的组件:prometheus-kafka-adapter,优点是支持 Prometheus 的服务发现,缺点是输出的数据格式和 Telegraf 不一致,需要修改 Telegraf 源码适配。

一般来说,采集平台和监控平台应该在一个环境。现在分隔开,挺蛋疼的。

如果是你们,会怎么设计呢?
3477 次点击
所在节点    Kubernetes
8 条回复
SingeeKing
2020-11-05 17:14:07 +08:00
我就想知道 Prometheus 和 Influxdb 两个时序数据库一起用是为了什么……
mary9
2020-11-05 17:16:13 +08:00
我们的 Prometheus 保存数据只有 6 个小时。用 Influxdb 来保存长时间的数据。
mary9
2020-11-05 17:34:44 +08:00
@SingeeKing 刚才没说准确,监控的 Prometheus 是远程读 Influxdb 数据,本身不存储指标数据,另外接 Grafana 展示指标,同时也用来接告警。
SingeeKing
2020-11-05 17:57:50 +08:00
可还是觉得很奇怪…… 无论是自动淘汰还是 Grafana 展示直接 influxdb 都可以啊,为什么要套一层 prometheus
anubu
2020-11-05 18:44:07 +08:00
楼主应该只是把 influxdb 当做一个时序数据库中间件来使用的,作为 prometheus 数据持久化方案。我们监控数据比较少,用的是 VictoriaMetrics 作为时序数据库,优点是支持 Prometheus querying API,数据消费端不需要再部署一套 prometheus,grafana 直接可以读取。
mary9
2020-11-05 20:08:35 +08:00
@anubu 对。我们不把 Prometheus 作为存储长期数据的组件。
mary9
2020-11-05 20:11:34 +08:00
@SingeeKing Grafana 也可以直接接 Influxdb,不过我们使用 Promtheus 来处理告警,不使用 Grafana 的告警。
erenming
2020-11-05 21:00:50 +08:00
记得 Telegraf 有个采集插件叫 Prometheus,里面就实现了发现机制吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/722102

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX