多个远程写入去重

有两个 Prometheus 实例都在将数据远程写入到 VM 中去,要想去重可以在 vmselectvmstorage 组件中配置 -dedup.minScrapeInterval 参数,多复制因子模式下默认配置了该参数的

VictoriaMetrics 会根据 “-dedup.minScrapeInterval” 配置的值进行去重,只留下一个原始样本, 保留配置周期中时间戳最大的数据。比如 “-dedup.minScrapeInterval=60s”,将会保留 60s 间隔中最大时间戳的单个原始样本。如果时间戳一致的情况下,随机保留数据。

多个相同配置的 vmagent 或 Prometheus 实例将数据写入同一 VictoriaMetrics 实例,则消除重复数据可减少磁盘空间的使用

需要将 Prometheus 两个实例的共同的额外标签清理掉才可以,只需要设置 replicaExternalLabelName 属性为空即可:

remoteWrite:
  - url: http://192.168.26.176:8480/insert/0/prometheus/
replicaExternalLabelName: ''

更新后 Prometheus 全局配置中就会去掉默认的 prometheus_replica 标签了:

global:
  scrape_interval: 30s
  scrape_timeout: 10s
  evaluation_interval: 30s
  external_labels:
    prometheus: monitoring/k8s

还有一种远程写的时候去掉标签

remoteWrite:
  - url: http://192.168.26.176:8480/insert/0/prometheus/
    writeRelabelConfigs:
    - action: labeldrop
      regex: prometheus_replica

其他参考文档: