当前位置: 首页 > news >正文

八、Prometheus 静态配置(Static Configuration)

所有的配置都可以用静态配置来监控,只不过用servicemonitor简单,但是域名需要静态配置

如果使用 Prometheus 静态配置(Static Configuration)确实不需要 ServiceMonitor、Service 和 Endpoints,但这也意味着失去了 Kubernetes 自动发现(Service Discovery, SD) 的能力,需要手动维护监控目标。

一、静态配置 vs ServiceMonitor

1. 两种方式

在 Kubernetes 中,监控 Pod 或 Service 通常有两种方式:

  1. 静态配置(Static Configuration):直接在 prometheus.yml 里写 static_configs
  2. 动态发现(ServiceMonitor + Prometheus Operator):使用 ServiceMonitor 让 Prometheus 自动发现 Service

静态配置(手动指定目标,不用 ServiceMonitor)
如果不想用 ServiceMonitor,可以在 prometheus.yml 里直接写 static_configs但需要手动维护 Service 地址

使用 ServiceMonitor(自动发现 Service,不用手写 IP)
如果用的是 Prometheus Operator,用 ServiceMonitor,这样 Prometheus 自动发现 目标,而不需要手动维护 prometheus.yml

2. 什么时候用静态配置?什么时候用 ServiceMonitor?

方式 适用场景 优缺点
静态配置 目标固定(物理机、固定 VM、少量 Kubernetes Service) ✅ 简单直接,不依赖 Operator ; ❌ Pod 变更时需要手动修改
ServiceMonitor Kubernetes 内部监控(Pod、Deployment、StatefulSet) ✅ 自动发现,适合动态环境; ❌ 需要 Prometheus Operator

如果你的 Kubernetes 目标少,可以用静态配置,手动写 prometheus.yml
但如果你的应用 Pod 会动态扩缩容,推荐用 ServiceMonitor,让 Prometheus 自动发现 Service,减少维护成本。


二、什么是 Prometheus 静态配置?

Prometheus 主要通过 scrape_configs 配置采集目标(targets),可以使用 静态配置(Static Configuration)服务发现(Service Discovery, SD) 来定义采集目标。

  • 静态配置:直接在配置文件 prometheus.yml 里写死 目标地址,适用于 少量、固定的目标
  • 服务发现(SD):自动发现目标,适用于 动态环境(如 Kubernetes、Docker Swarm、Consul 等)

静态配置简单易用,但维护大量目标时不够灵活。


三、Prometheus 静态配置格式

静态配置使用 static_configs 指定需要采集的 目标地址(targets),例如:

scrape_configs:
  - job_name: 'my-app'
    static_configs:
      - targets: ['192.168.1.100:9100', '192.168.1.101:9100']
        labels:
          instance: 'server1'
      - targets: ['192.168.1.102:9100']
        labels:
          instance: 'server2'

说明:

  • job_name:采集任务名称,Prometheus 通过这个名称管理数据。
  • targets:指定采集的 IP 或域名 + 端口(通常是 Exporter 暴露的端口)。
  • labels:可选,给采集目标添加 自定义标签,用于查询和分类。

四、常见静态配置示例

(1)监控 Node Exporter

scrape_configs:
  - job_name

相关文章:

  • 仿“东方甄选”直播商城小程序运营平台
  • Git的基本指令
  • 使用爬虫获取自定义API操作API接口
  • 通信协议传输过程中的序列化和反序列化机制
  • 【记】如何理解kotlin中的委托属性?
  • Python的基本知识
  • MySQL学习笔记
  • LSTA: Long Short-Term Attention for Egocentric Action Recognition
  • 【人工智能】【Python】在Scikit-Learn中使用决策树算法(ID3和CART)
  • manim安装
  • 不同路径——1
  • LeetCodeHot100_0x07
  • 2025高频面试算法总结篇【递归回溯动态规划】
  • LabVIEW 线性拟合
  • Python核心语法-数据基本运算(一)
  • 笔记:代码随想录算法训练营day46:LeetCode647. 回文子串\516.最长回文子序列
  • JVM---Java 类生命周期与类加载机制
  • 高版本node(17+)环境下VUE2项目启动报错
  • 失败的面试经历(ʘ̥∧ʘ̥)
  • 从过拟合到强化学习:机器学习核心知识全解析
  • 中国古代文学研究专家、南开大学教授李剑国逝世
  • 贯彻落实《生态环境保护督察工作条例》,充分发挥生态环境保护督察利剑作用
  • 视觉周刊|走进变革中的博物馆
  • 十年牢狱倒计时,一名服刑人员的期待与惶恐
  • 当智慧农场遇见绿色工厂:百事如何用科技留住春天的味道?
  • 技术派|威胁F-35、击落“死神”,胡塞武装防空战力如何?