简介
Prometheus Federation
允许一台 Prometheus Server
从另一台 Prometheus Server
刮取选定的时间序列资料。对于Prometheus
的 Federation
有不同的使用方式,一般分为Cross-service federation
与Hierarchical federation
。
Cross-service federation
Hierarchical federation
配置
在一个prometheus
的配置文件prometheus.yml
写入以下内容。
scrape_configs:
- job_name: 'federate'
scrape_interval: 15s
honor_labels: true
metrics_path: '/federate'
params:
'match[]':
- '{job="prometheus"}'
- '{__name__=~"job:.*"}'
- '{job=~"prometheus.*"}'
- '{job="docker"}'
- '{job="node"}'
static_configs:
- targets:
- 'source-prometheus-1:9090'
- 'source-prometheus-2:9090'
- 'source-prometheus-3:9090'
- 当设置
Federation
時,將通过params
中的macth[]
参数指定需要刮取的时间序列job
,match[]
必须是一個job
选择器,如up
或者{job="api-server"}
等。 - 设定
honor_labels
是避免监控指标冲突。 targets
下指定目标prometheus
。