05-prometheus的联邦模式-分布式监控

news/2024/5/18 23:23:58 标签: prometheus, 分布式, grafana, 架构, 联邦模式

一、联邦模式概述

1,架构介绍

由于,在大型企业中,被监控项目比较多,多到一台prometheus服务无法承载其大量的监控数据的传输,所以,联邦模式应运而生,它同等于zabbix监控的分布式,就是将大量的被监控项,分开进行监控,然后再汇总到一台prometheus的服务上。


2,学习环境介绍

 为了模拟学习环境,我们准备:

1,41和42服务器作为被监控节点,

2,  71作为grafana出图监控大屏;

3,  31作为prometheus主节点;

4,  32和33作为prometheus的从节点;

二、prometheus子节点配置

1,子节点32配置

本次学习,直接指向被监控地址,不用自动发现了;

[root@prometheus-server32 ~]# vim /prometheus/softwares/prometheus-2.37.8.linux-amd64/prometheus.yml 

# my global config
global:
  scrape_interval: 3s  
  evaluation_interval: 15s 
alerting:
  alertmanagers:
    - static_configs:
        - targets:
          # - alertmanager:9093
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"
scrape_configs:
  - job_name: "prometheus"
    static_configs:
      - targets: ["localhost:9090"]
  #直接监控41节点
  - job_name: "node-exporter-01"
    static_configs:
      - targets: ["10.0.0.41:9100"]

[root@prometheus-server32 ~]# curl -X POST http://10.0.0.32:9090/-/reload

查看浏览器验证

2,子节点33配置

[root@prometheus-server33 ~]# vim /prometheus/softwares/prometheus-2.37.8.linux-amd64/prometheus.yml 


global:
  scrape_interval: 3s 
  evaluation_interval: 15s 
alerting:
  alertmanagers:
    - static_configs:
        - targets:
          # - alertmanager:9093
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"
scrape_configs:
  - job_name: "prometheus"
    static_configs:
      - targets: ["localhost:9090"]
    #直接监控节点
  - job_name: "node-exporter-02"
    static_configs:
      - targets: ["10.0.0.42:9100"]

curl -X POST http://10.0.0.33:9090/-/reload

浏览器访问验证,是否监控成功

三、prometheus主节点配置

注意,prometheus主节点,取得是:prometheus子节点的数据;

[root@prometheus-server31 ~]# cat /prometheus/softwares/prometheus-2.37.8.linux-amd64/prometheus.yml 
global:
  scrape_interval: 3s 
  evaluation_interval: 15s 
alerting:
  alertmanagers:
    - static_configs:
        - targets:
          # - alertmanager:9093
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"
scrape_configs:
  - job_name: "prometheus-32"
    metrics_path: "/federate"
    #用于解决标签冲突问题,有效值为true和false(false)
    #设置为true,保留抓取的标签以忽略服务器自身的标签,就是覆盖原来的标签;
    #设置为false,不覆盖原来的标签,而是在标签前加了一个“exporter_”前缀;
    honor_labels: true
    params:
      "match[]":
      - '{job="prometheus"}'
      - '{__name__=~"job:.*"}'
      - '{__name__=~"node.*"}'
    static_configs:
      - targets: ["10.0.0.32:9090"]
    #子节点33
  - job_name: "prometheus-33"
    metrics_path: "/federate"
    honor_labels: true
    params:
      "match[]":
      - '{job="prometheus"}'
      - '{__name__=~"job:.*"}'
      - '{__name__=~"node.*"}'
    static_configs:
      - targets: ["10.0.0.33:9090"]

[root@prometheus-server31 ~]# curl -X POST http://10.0.0.31:9090/-/reload

浏览器查看,是否监控到子节点的数据

四、grafana出图

1,添加数据源

2,导入仪表盘

3,创建

至此,联邦模式就学习完毕了;

课后,自己再通过consul网络集群或者文档的方式,再使用自动发现来构建一遍这个联邦模式


http://www.niftyadmin.cn/n/5408789.html

相关文章

专业的安全数据交换系统,如何进行网间数据安全交换?

网络隔离是企业网络安全管理的重要组成部分,它有助于提高网络的整体安全性,保护企业资产和客户数据,同时满足法规合规要求。很多企业为了防止内部核心数据泄露,都实施了网络隔离,比如划分成内网、外网,有的…

使用axios结合access_token和refresh_token进行无感刷新

这里利用到的主要是 axios 请求失败的config配置可以记住本次请求的参数,以及利用拦截器,等待刷新完后通过 axios(config) 再次发起请求。 小技巧:将每次请求失败的config和promise的resolve参数存放到数组中,等待刷新token完成再…

【人工智能】Anthropic发布强大的Claude3对齐GPT-4,大模型杂谈个人感想

北京时间3月5日,人工智能创业公司Anthropic宣布,推出其突破性的Claude 3系列模型。Claude 3系列包含三个子模型,分别为Claude 3 Haiku、Claude 3 Sonnet和Claude 3 Opus,它们提供不同程度的智能、速度和成本选择,以满足…

在linux操作系统ubuntu上安装libmodbus库

sudo apt-get install libmodbus5 libmodbus-dev libmodbus静态库生成 在源代码目录下,执行配置脚本以准备编译环境 ./configure --enable-static --prefix/path/to/install make make install 安装完成后,您可以在安装目录下的lib文件夹中找到生成…

【十二】【SQL】表的约束

NOT NULL非空约束 展示对NULL的查询 mysql> select NULL; ------ | NULL | ------ | NULL | ------ 1 row in set (0.00 sec)mysql> select 1NULL; -------- | 1NULL | -------- | NULL | -------- 1 row in set (0.00 sec)mysql> 第一条查询:select NU…

node的概念

node和浏览器有什么区别和联系,及node进行服务端开发的本质 Node.js和浏览器在JavaScript运行环境方面存在一些区别和联系。 区别: 运行环境:Node.js是一个服务器端JavaScript运行环境,而浏览器是一个客户端JavaScript运行环境…

(黑马出品_02)SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式

(黑马出品_02)SpringCloudRabbitMQDockerRedis搜索分布式 微服务技术栈治理 今日目标1.Nacos配置管理1.1.统一配置管理1.1.1.在nacos中添加配置文件1.1.2.从微服务拉取配置 1.2.配置热更新1.2.1.方式一1.2.2.方式二 1.3.配…

Nginx配置文件的整体结构

一、Nginx配置文件的整体结构 从图中可以看出主要包含以下几大部分内容: 1. 全局块 该部分配置主要影响Nginx全局,通常包括下面几个部分: 配置运行Nginx服务器用户(组) worker process数 Nginx进程PID存放路径 错误…