gpt4 book ai didi

prometheus - 如何使用联合从多个 Prometheus 实例收集 Prometheus 指标(每个实例使用实例 ="localhost:9090")

转载 作者:行者123 更新时间:2023-12-01 16:15:05 28 4
gpt4 key购买 nike

我们有多个在数据中心运行的 Prometheus 实例(我将它们称为 DC Prometheus 实例),以及一个额外的 Prometheus 实例(在下面的文本中我们将其称为“主”),我们在其中从 DC 收集指标使用 Federation 功能的 Prometheus 实例。

主 Prometheus 正在从自身以及 DC Prometheus 实例中抓取 {job='prometheus'} 值(每次从 localhost:9090 抓取)。

问题是主普罗米修斯提示样本乱序:

WARN[1585] Error on ingesting out-of-order samples numDropped=369 source=target.go:475 target=dc1-prometheus:443

我发现这是因为在“match[]”参数中包含了 {job="prometheus"}

我试图通过标签重新标记来解决这个问题,但是当我尝试使用单个 DC Prometheus 和不断替换时,我无法让它工作(我仍然遇到无序样本错误),而且我什至不知道在使用多个目标时用什么来替代。

  - job_name: 'federate'
scrape_interval: 15s

honor_labels: true
metrics_path: '/prometheus/federate'
scheme: 'https'

params:
'match[]':
- '{job="some-jobs-here..."}'
- '{job="prometheus"}'

relabel_configs:
- source_labels: ['instance']
target_label: 'instance'
regex: 'localhost:9090'
replacement: '??' # I've tried with 'dc1-prometheus:9090' and single target only.. no luck

target_groups:
- targets:
- 'dc1-prometheus'
- 'dc2-prometheus'
- 'dc3-prometheus'

我的问题是如何使用 relabel_configs 来消除乱序错误。我到处都在使用 Prometheus 0.17。

最佳答案

您在这里需要做的是在每个数据中心 Prometheus 服务器上指定唯一的 external_labels。这将导致他们在 /federate 端点上添加这些标签,并防止您遇到的时间序列冲突。

我关于联合 Prometheus 的博客文章有一个这样的例子:http://www.robustperception.io/scaling-and-federating-prometheus/

(我应该补充一点,relabel_configs 在这里无法为您提供帮助,因为它只会更改目标标签。metric_relabel_configs 会更改从抓取中返回的内容。请参阅 http://www.robustperception.io/life-of-a-label/ )

关于prometheus - 如何使用联合从多个 Prometheus 实例收集 Prometheus 指标(每个实例使用实例 ="localhost:9090"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36575902/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com