前言

本文来自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简介

Prometheus学习系列(九)之Prometheus 联盟、迁移的更多相关文章

  1. prometheus学习系列九: Prometheus AlertManager使用

    在Prometheus的报警系统中,是分为2个部分的, 规则是配置是在prometheus中的, prometheus组件完成报警推送给alertmanager的, alertmanager然后管理这 ...

  2. prometheus学习系列十一: Prometheus和AlertManager的高可用

    前面的系列中, prometheus和alertmanager都是单机部署的,会有单机宕机导致系统不可用情况发生.本文主要介绍下prometheus和alertmanager的高可用方案. 服务的高可 ...

  3. prometheus学习系列十一: Prometheus 安全

    prometheus安全 我们这里说的安全主要是基本认证和https2种, 目前这2种安全在prometheus中都没有的, 需要借助第三方软件实现, 这里以nginx为例. 基本认证 配置基本认证 ...

  4. prometheus学习系列十一: Prometheus pushgateway的使用

    由于网络问题或者安全问题,可能我们的数据无法直接暴露出一个entrypoint 给prometheus采集. 这个时候可能就需要一个pushgateway来作为中间者完成中转工作.  promethe ...

  5. prometheus学习系列五: Prometheus配置文件

    在prometheus监控系统,prometheus的职责是采集,查询和存储和推送报警到alertmanager.本文主要介绍下prometheus的配置文件. 全局配置文件简介 默认配置文件 [ro ...

  6. prometheus学习系列十一: Prometheus exporter详解

    exporter详解 前面的系列中,我们在主机上面安装了node_exporter程序,该程序对外暴露一个用于获取当前监控样本数据的http的访问地址, 这个的一个程序成为exporter,Expor ...

  7. prometheus学习系列十一: Prometheus 采集器的编写

    在前面的文章已经写了官方的几个exporter的使用了. 在实际使用环境中,我们可能需要收集一些自定义的数据, 这个时候我们一般是需要自己编写采集器的. 快速入门编写一个入门的demo 编写代码 fr ...

  8. prometheus学习系列十一: Prometheus 报警规则配置

    prometheus监控系统的的报警规则是在prometheus这个组件完成配置的. prometheus支持2种类型的规则,记录规则和报警规则, 记录规则主要是为了简写报警规则和提高规则复用的, 报 ...

  9. prometheus学习系列十: Prometheus AlertManager配置文件说明

    alertmanager配置文件说明 alertmanager是通过命令行标记和配置文件配置的,命令行标记配置不可变的系统参数,配置文件定义抑制规则.通知路由和通知接收器.可以通过官方提供的routi ...

  10. prometheus学习系列八: Prometheus Grafana展示平台

    在prometheus中,我们可以使用web页面进行数据的查询和展示, 不过展示效果不太理想,这里使用一款专业的展示平台进行展示. grafana安装 # 下载wget https://dl.graf ...

随机推荐

  1. Spring Security OAuth2 Demo —— 授权码模式

    本文可以转载,但请注明出处https://www.cnblogs.com/hellxz/p/oauth2_oauthcode_pattern.html 写在前边 在文章OAuth 2.0 概念及授权流 ...

  2. Hyperledger Fabric 动态增加组织到网络中

    本文基于Hyperledger Fabric 1.4版本. 官方文档地址:传送门 动态添加一个组织到Fabric网络中也是一个比较重要的功能.官方文档写的已经很详细了,有能力的尽量还是看官方文档,本文 ...

  3. 使用 font-spider 对 webfont 网页字体进行压缩

    原文链接:使用 font-spider 对 webfont 网页字体进行压缩 随着当前 Web 技术的日新月异,网页界面内容越来越丰富,让人眼花缭乱,其中就包括了网页中的各种自定义字体. 例如,个人博 ...

  4. luogu P5514 [MtOI2019]永夜的报应

    题目背景 在这世上有一乡一林一竹亭,也有一主一仆一仇敌. 有人曾经想拍下他们的身影,却被可爱的兔子迷惑了心神. 那些迷途中的人啊,终究会消失在不灭的永夜中-- 题目描述 蓬莱山 辉夜(Kaguya)手 ...

  5. luogu P5002 专心OI - 找祖先

    题目描述 这个游戏会给出你一棵树,这棵树有NN个节点,根结点是RR,系统会选中MM个点P_1,P_2...P_MP 1 ​ ,P 2 ​ ...P M ​ ,要Imakf回答有多少组点对(u_i,v_ ...

  6. 使用Fiddler 对ios 设备进行HTTPS 的抓取

    http://blog.csdn.net/skylin19840101/article/details/43485911  使用Fiddler 对ios 设备进行HTTPS 的抓取

  7. 使用 Zookeeper 的 Api 实现服务注册

    创建常量接口 com.bjsxt.constant.Constants package com.bjsxt.constant; public interface Constants { //访问Zoo ...

  8. 核心系统命令实战 第一章Linux命令行简介

    第一章Linux命令行简介 1.1 Linux命令行概述 1.1.1 Linux 命令行的开启和退出 开启:登陆账号密码进入系统 退出:exit/logout  快捷键:Ctrl+d 1.1.2 Li ...

  9. Python必学之编译器用哪个好?你用错了吧!

    学python要知道怎么用好编译器.当我们编写Python代码时,我们得到的是一个包含Python代码的以.py为扩展名的文本文件.要运行代码,就需要Python解释器去执行.py文件由于整个Pyth ...

  10. 资源池模式和单例模式实现的自定义数据库连接池java实现版

    在企业级开发中,我们往往不会直接使用原生的JDBC操作来实现与数据库得连接.因为数据库的连接是一个很宝贵的资源且耗时,我们往往会在内存中引入一个资源池来统一管理数据库的连接.这个模式也被总结为一种设计 ...