Prometheus的服务发现机制

一、先讲清楚:做什么

服务发现 = 不用每次手动改 prometheus.yml ,让 Prometheus 自动发现要监控的机器。本文只做最常用:基于文件的服务发现(file_sd)


二、第一步:创建服务发现目录(固定路径)

复制代码
mkdir -p /etc/prometheus/targets

三、第二步:编写服务发现 JSON 文件

复制代码
vi /etc/prometheus/targets/docker.json

粘贴以下内容(我的 IP:192.168.52.130):

复制代码
[
    {
        "targets": ["192.168.52.130:8080", "192.168.52.130:9100"],
        "labels": {
            "env": "test",
            "job": "docker_auto"
        }
    }
]

保存退出:ESC → :wq


四、第三步:把服务发现加到 prometheus.yml

复制代码
vi /etc/prometheus/prometheus.yml

scrape_configs 下面添加

复制代码
- job_name: 'file_sd_docker'
    file_sd_configs:
      - files:
          - /etc/prometheus/targets/*.json
        refresh_interval: 10s

五、第四步:重启 Prometheus

复制代码
systemctl restart prometheus

或热重载(推荐):

复制代码
curl -X POST http://192.168.52.130:9090/-/reload

六、第五步:验证服务发现成功

浏览器打开:

复制代码
http://192.168.52.130:9090/targets

看到:

  • file_sd_docker
  • 状态 UP
  • 自动出现 8080、9100✅ 完成!
  • 静态配置缺点:修改麻烦、不能自动加机器
  • 文件服务发现优点
  • 自动加载
  • 不用重启 Prometheus
  • 支持 json/yaml
  • refresh_interval: 10s = 每 10 秒扫描文件更新
相关推荐
江南风月12 小时前
WGCLOUD如果使用SQL Server数据库推荐哪个版本
运维·网络·zabbix·运维开发·prometheus
marsh020612 小时前
42 openclaw服务发现机制:动态管理微服务实例
ai·服务发现·编程·技术
AI木马人1 天前
8.人工智能实战:大模型服务“看起来正常却突然变慢”?Prometheus + Grafana + GPU 指标构建全链路监控体系
人工智能·grafana·prometheus
invicinble2 天前
关于搭建运维监控系统(Prometheus+Grafana)
运维·grafana·prometheus
AOwhisky2 天前
Kubernetes调度与服务暴露:从“定时任务”到“服务发现”的完全指南
linux·运维·云原生·容器·kubernetes·服务发现
白晨并不是很能熬夜2 天前
【RPC】第 4 篇:服务发现 — Zookeeper + 缓存容错
java·后端·程序人生·缓存·zookeeper·rpc·服务发现
梵得儿SHI5 天前
(第二篇)Spring AI 架构设计与优化:可观察性体系,打造全链路可视化的 AI 运维方案
人工智能·微服务·grafana·prometheus·监控·可观察性·spring ai
运维全栈笔记5 天前
K8S部署WordPress+MySQL:模块化YAML配置详解
服务器·mysql·docker·云原生·容器·kubernetes·服务发现
川石课堂软件测试5 天前
AI如何赋能软件测试行业的发展
人工智能·python·功能测试·网络协议·单元测试·测试用例·prometheus
脏脏a6 天前
监控面板全绿但用户说网站打不开?Prometheus+Blackbox从外部验证服务真实可用性
数据库·prometheus