目录

一:联邦集群

二:什么时候会用到联邦集群

1)跨数据中心

2)垮服务

三:prometheus配置文件解析

1) 整体配置文件

2)scrape_configs

四:prometheus部署联邦集群

1)prometheus 主server和prometheus联邦分别部署prometheus

2) 配置联邦节点到node节点抓取数据


一:联邦集群

二:什么时候会用到联邦集群

1)跨数据中心

例如,一个联邦设置可能由多个数据中心中的 Prometheus 服务器和一套全局 Prometheus 服务器组成。每个数据中心中部署的 Prometheus 服务器负责收集本区域内细粒度的数据(实例级别),全局 Prometheus 服务器从这些下层 Prometheus 服务器中收集和汇聚数据(任务级别),并存储聚合后的数据。这样就提供了一个聚合的全局视角和详细的本地视角。

2)垮服务

同一服务器里不同的服务监控指标用不同的prometheus联邦节点收集监控数据

例如,一个运行多种服务的集群调度器可以暴露在集群上运行的服务实例的资源使用信息(例如内存和 CPU 使用率)。另一方面,运行在集群上的服务只需要暴露指定应用程序级别的服务指标。通常,这两种指标集分别被不同的 Prometheus 服务器抓取。利用联邦,监控服务级别指标的 Prometheus 服务器也可以从集群中 Prometheus 服务器拉取其特定服务的集群资源使用率指标,以便可以在该 Prometheus 服务器中使用这两组指标集

三:prometheus配置文件解析

1) 整体配置文件

# 全局配置global:# 默认抓取周期,可用单位ms、smhdwy #设置每15s采集数据一次,默认1分钟[ scrape_interval: <duration> | default = 1m ]# 默认抓取超时[ scrape_timeout: <duration> | default = 10s ]# 估算规则的默认周期 # 每15秒计算一次规则。默认1分钟[ evaluation_interval: <duration> | default = 1m ]# 和外部系统(例如AlertManager)通信时为时间序列或者警情(Alert)强制添加的标签列表external_labels:[ <labelname>: <labelvalue> ... ]# 规则文件列表
rule_files:[ - <filepath_glob> ... ]# 抓取配置列表
scrape_configs:[ - <scrape_config> ... ]# Alertmanager相关配置
alerting:alert_relabel_configs:[ - <relabel_config> ... ]alertmanagers:[ - <alertmanager_config> ... ]# 远程读写特性相关的配置
remote_write:[ - <remote_write> ... ]
remote_read:[ - <remote_read> ... ]

2)scrape_configs

一个scrape_config 片段指定一组目标和参数, 目标就是实例,指定采集的端点, 参数描述如何采集这些实例, 主要参数如下

scrape_interval: 抓取间隔,默认继承global值。
scrape_timeout: 抓取超时时间,默认继承global值。
metric_path: 抓取路径, 默认是/metrics
scheme: 指定采集使用的协议,http或者https,默认为http
params: 指定url参数。
basic_auth: 指定认证信息。
*_sd_configs: 指定服务发现配置
static_configs: 静态指定服务job。
relabel_config: relabel设置。

四:prometheus部署联邦集群

1)prometheus 主server和prometheus联邦分别部署prometheus

在三个prometheus节点同时执行[root@prometheus-1 prometheus-2.36.2.linux-amd64]# pwd
/opt/prometheus/prometheus-2.36.2.linux-amd64#创建prometheus连接
ln -sv /opt/prometheus/prometheus-2.36.2.linux-amd64 /opt/prometheus/prometheus#添加prometheus启动脚本
vi /etc/systemd/system/prometheus.service[Unit]
Description=Prometheus Server
Documentation=https://prometheus.io/docs/introduction/overview/
After=network.target
[Service]
Restart=on-failure
WorkingDirectory=/opt/prometheus/prometheus/
ExecStart=/opt/prometheus/prometheus/prometheus --config.file=/opt/prometheus/prometheus/prometheus.yml
[Install]
WantedBy=multi-user.target#启动prometheus
systemctl restart prometheus#添加开机启动
systemctl enable prometheus

2) 配置联邦节点到node节点抓取数据

联邦集群1 收集node1的数据

#编辑prometheus.yaml文件添加下面node1节点监控信息vi prometheus.yml- job_name: "prometheus-node1"static_configs:- targets: ["10.19.14.9:9100"]

联邦集群2 收集node2的数据

#编辑prometheus.yaml文件添加下面node2节点监控信息vi prometheus.yml- job_name: "prometheus-node2"static_configs:- targets: ["10.19.14.21:9100"]

prometheus server 收集联邦节点

# 添加以下配置,增加联邦集群节点  到prometheus server节点。- job_name: 'prometheus-federate-2.61'scrape_interval: 10shonor_labels: true   #保持原标签不变metrics_path: '/federate'params:'match[]':- '{job="prometheus"}'- '{__name__=~"job:.*"}'- '{__name__=~"node.*"}'static_configs:- targets: ["10.19.2.61:9090"]- job_name: 'prometheus-federate-2.62'scrape_interval: 10shonor_labels: truemetrics_path: '/federate'params:'match[]':- '{job="prometheus"}'- '{__name__=~"job:.*"}'- '{__name__=~"node.*"}'static_configs:- targets: ["10.19.2.62:9090"]#检查配置文件语法
./promtool check config ./prometheus.yml#重启prometheus
systemctl restart prometheus

prometheus联邦集群相关推荐

  1. OpenShift 4 Hands-on Lab (12) 通过 KubeFed 配置 OpenShift 联邦集群

    <OpenShift 4.x HOL教程汇总> 文章目录 Kubernetes Federation 准备环境 OpenShift集群环境 配置客户端环境 安装配置KubeFed Oper ...

  2. 一文搞懂 Prometheus 多集群监控神器 Thanos

    公众号关注 「奇妙的 Linux 世界」 设为「星标」,每天带你玩转 Linux ! 1介绍 在本文中,我们将看到Prometheus监控技术栈的局限性,以及为什么移动到基于Thanos的技术栈可以提 ...

  3. 一文带你深入通读Prometheus ,集群管理最全集锦

    随着容器技术的迅速发展,Kubernetes 已然成为大家追捧的容器集群管理系统.Prometheus 作为生态圈 Cloud Native Computing Foundation(简称:CNCF) ...

  4. 主流K8S集群监控方案

    Prometheus 什么是Prometheus Prometheus是一套开源的监控系统.报警.时间序列的集合,最初由SoundCloud开发,后来随着越来越多公司的使用,于是便独立成开源项目.自此 ...

  5. Kubernetes使用集群联邦实现多集群管理

    Kubernetes在1.3版本之后,增加了"集群联邦"Federation的功能.这个功能使企业能够快速有效的.低成本的跨区跨域.甚至在不同的云平台上运行集群.这个功能可以按照地 ...

  6. 百度可观测系列 | 采集亿级别指标,Prometheus 集群方案这样设计

    [百度云原生导读]在前一篇<基于 Prometheus 的大规模线上业务监控实践>中,我们为大家介绍了针对大规模业务监控场景,百度云原生团队基于 Prometheus 技术方案的一些探索, ...

  7. 阿里云上Kubernetes集群联邦

    摘要: kubernetes集群让您能够方便的部署管理运维容器化的应用.但是实际情况中经常遇到的一些问题,就是单个集群通常无法跨单个云厂商的多个Region,更不用说支持跨跨域不同的云厂商.这样会给企 ...

  8. 阿里云上Kubernetes集群联邦 1

    摘要: kubernetes集群让您能够方便的部署管理运维容器化的应用.但是实际情况中经常遇到的一些问题,就是单个集群通常无法跨单个云厂商的多个Region,更不用说支持跨跨域不同的云厂商.这样会给企 ...

  9. 集群外独立部署Prometheus+Grafana监控K8S全面解析

    简介 Prometheus+Grafana作为监控K8S的解决方案,大都是在K8S集群内部部署,这样可以直接调用集群内的cert及各种监控url,但是增加了集群的资源开销.因此在资源有限的情况下,我更 ...

最新文章

  1. 数据库:SQL Server与MySQL
  2. 修改meta标签 查看源码没效果怎么办_Spring 源码学习(三)-自定义标签
  3. linux启动顺序怎么修改,怎样修改启动顺序?
  4. mysql order by random,sql-MySQL:ORDER BY RAND()的替代方法
  5. kinect 手势识别的原理?
  6. 为了实现搜索引擎功能,将正则进行到底!
  7. 69、【backtrader期货策略】十大经典策略之Dual Thrust策略(2021-10-28更新)
  8. 罗技无线键盘Windows和Ubuntu下锁定Fn键方法
  9. MOS管自举电路工作原理以及升压自举电路结构图分析
  10. ubuntu编译安装PHP5.6 ipArchive支持 configure: error: system libzip must be upgraded to version = 0.11
  11. SaltStack源码分析之Redis Returner
  12. scratch编程 超有趣反应力游戏
  13. 水果店经营策略技巧汇总,第一次开一家水果店怎么经营
  14. 介绍java 8 的 Period 和 Duration 类
  15. 微信创建公众号,获取AppID、AppSecret以及accesstoken
  16. 智能云时代,谁来守护我们的安全?
  17. Win10“启动”文件夹在哪里?如何打开Win10启动文件夹?
  18. PHP+MySQL实现用户登录注册API接口
  19. 小区智能化平台服务器,小区智能化报价
  20. 互联网服务端技术——如何学(中)

热门文章

  1. Win10彻底删除OneDrive的方法
  2. 网上订餐系统设计与实现(JSP+SSM+MySQL)
  3. Java 16 新特性:record类
  4. .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named
  5. 物联网大白话之一-什么是物联网
  6. 开源视频监控系统 iSpy
  7. sparql入门-中文教程
  8. 标签上的 title属性与 alt属性的区别
  9. CCNP路由实验之五 动态路由协议之 OSPF
  10. 疫情裁员浪潮,如何提高面试通过率