前言

本文来自Prometheus官网手册 和 Prometheus简介

FEDERATION 允许Prometheus服务器从另一台Prometheus服务器抓取选定的时间序列。

一,用例

联盟有不同的用例。通常,它用于实现可扩展的Prometheus监控设置或将相关指标从一个服务的Prometheus拉到另一个服务。

1.1 分层联盟

分层联盟使Prometheus可以扩展到具有数十个数据中心和数百万个节点的环境。在此用例中,联合拓扑就像一棵树,更高级别的Prometheus服务器从大量从属服务器收集聚合的时间序列数据。

例如,设置可能包含许多高度详细收集数据的每个数据中心Prometheus服务器(实例级深入分析),以及一组仅收集和存储聚合数据的全局Prometheus服务器(作业级向下钻取) )来自那些本地服务器。 这提供了聚合全局视图和详细的本地视图。

1.2 跨服务联盟

在跨服务联盟中,将一项服务的Prometheus服务器配置为从另一项服务的Prometheus服务器抓取所选数据,以针对单个服务器内的两个数据集启用警报和查询。

例如,运行多个服务的集群调度程序可能会公开有关集群上运行的服务实例的资源使用情况信息(例如内存和CPU使用情况)。另一方面,在该群集上运行的服务将仅公开特定于应用程序的服务指标。通常,这两组指标是由单独的Prometheus服务器抓取的。使用联盟,包含服务级别指标的Prometheus服务器可以从群集Prometheus中获取有关其特定服务的群集资源使用指标,以便可以在该服务器中使用这两组指标。

二、联邦配置

在任何给定的Prometheus服务器上,/federate端点允许检索该服务器中所选时间序列集的当前值。 必须至少指定一个match[] URL参数才能选择要公开的时间序列。 每个match[]参数都需要指定一个瞬时向量选择器,如up{job="api-server"}。 如果提供了多个match[]参数,则选择所有匹配系列的并集。

要将指标从一个服务器联合到另一个服务器,请将目标Prometheus服务器配置为从源服务器的/federate端点进行采集,同时还启用honor_labels scrape选项(以不覆盖源服务器公开的任何标签)并传入所需的 match[]参数。

例如,以下scrape_config将任何带有标签job="prometheus"的系列或以job开头的度量标准名称联合起来:source-prometheus-{1,2,3}:9090的Prometheus服务器进入抓取Prometheus:

scrape_configs:
- job_name: 'federate'
scrape_interval: 15s honor_labels: true
metrics_path: '/federate' params:
'match[]':
- '{job="prometheus"}'
- '{__name__=~"job:.*"}' static_configs:
- targets:
- 'source-prometheus-1:9090'
- 'source-prometheus-2:9090'
- 'source-prometheus-3:9090'

三、迁移指南

PROMETHEUS 2.0迁移指南Prometheus简介

最新文章

  1. 数位dp模板
  2. Head插件——学习Elasticsearch的锋刃利器!
  3. Hibernate(一)__简介
  4. 【转】unity开发android游戏(一)搭建Unity安卓开发环境
  5. 跟我学 NHibernate (一)
  6. 关于htmlentities 、htmlspecialchars、addslashes的使用
  7. MSBuild could not create or connect to a task host with runtime "CLR2" and architecture "x86".
  8. 常用命令su ls cp cd mv cat touch mkdir rm head less more pwd tac 等
  9. 如何删除svn标签
  10. Protocol Buffers与FlatBuffers效率对比
  11. mysql 出现Duplicate entry ‘xxx’ for key ‘PRIMARY’,一个自增字段达到了上限,
  12. vue2.x 在引用插件的时候,npm run dev跑正常 ,npm run build 报错vue-cli Unexpected token: punc (() [
  13. Linux 学习 (十一) 软件安装管理
  14. Python3.4 枚举类型的使用
  15. VSCode 常用快捷键
  16. TypeScript语法学习--变量的声明
  17. Java Web 项目目录结构
  18. ios 设置本地化显示的app名称
  19. python之面向对象篇6
  20. SpringBoot入门 (十三) WebSocket使用

热门文章

  1. VMware中linux虚拟机的安装
  2. Spring 读取资源
  3. CSRF的原理与防御 | 你想不想来一次CSRF攻击?
  4. 你知道 http 响应头中的 ETag 是如何生成的吗
  5. 小白学 Python 爬虫(15):urllib 基础使用(五)
  6. SpringBoot-运行原理(四)
  7. luogu P2824 [HEOI2016/TJOI2016]排序
  8. Python超简单的爬取网站中图片
  9. git配置文件—— .gitattributes
  10. 用jquery实现楼层滚动对应导航高亮