prometheus基于文件发现及热加载

别再手动重启了!Prometheus配置热加载与Systemd服务管理实战指南 本文详细介绍了Prometheus配置热加载与Systemd服务管理的实战技巧,帮助运维人员实现零停机配置更新。通过生命周期API动态重载配置,结合Systemd高级服务单元优化,提升监控系统的高可用性和运维效率。文章还涵盖安全加固、性能调优和自动化集成等进阶内容,为Prometheus运维提供全面解决方案。 阅读详情

Promtheus的时序数据库在存储了大量的数据后,每次重启Prometheus进程的时间会越来越慢。 而在日常运维工作中会经常调整Prometheus的配置信息。
Prometheus提供了在运行时热加载配置信息的功能。

  1. 查看Prometheus的进程id,发送 SIGHUP 信号
  2. 发送一个POST请求到 /-/reload ,需要在启动时给定 --web.enable-lifecycle 选项
    prometheus支持服务发现(也是运维最佳实践经常采用的):
  • file_sd_configs
  • azure_sd_configs
  • consul_sd_configs
  • dns_sd_configs
  • ec2_sd_configs
  • openstack_sd_configs
  • gce_sd_configs
  • kubernetes_sd_configs
  • marathon_sd_configs
  • nerve_sd_configs
  • serverset_sd_configs
  • triton_sd_configs

参考

Prometheus、Grafana安装-部署-nginx代理-监控linux
详解Prometheus自动发现之file_sd_config
Prometheus 基于文件的服务发现 file_sd_configs
Prometheus之配置详解
Prometheus配置的热加载

操作

基于文件发现

原配置

# 增加监控节点
  - job_name: "centos7_test"
    static_configs:
      - targets: ["127.0.0.1:9100"]
# 增加应用检测节点
  - job_name: "springBoot-ecb-t"
    metrics_path: "/ecb/actuator/prometheus"
    static_configs:
      - targets: ["127.0.0.1:9521"]

本次基于yml文件维护子配置信息

cd /usr/local/prometheus/
ll
# 创建父目录及多个子目录
mkdir -p file_sd/{test,prod}
# 创建 子配置
vim file_sd/test/node.yml
cat file_sd/test/node.yml 
###
- targets: ['127.0.0.1:9100']
###
vim file_sd/test/spring-boots.yml
cat file_sd/test/spring-boots.yml 
###
- targets: ['127.0.0.1:9521']
###
chown -R prometheus.prometheus file_sd
vim prometheus.yml
###
scrape_configs:
  - job_name: "prometheus"
    metrics_path: "/prometheus/metrics"
    static_configs:
      - targets: ["127.0.0.1:9090"]
# 增加监控节点
  - job_name: "centos7_test"
    #static_configs:
    #  - targets: ["127.0.0.1:9100"]
    file_sd_configs:
      - files: ['file_sd/test/node.yml']
# 增加应用检测节点
  - job_name: "springBoot-ecb-t"
    metrics_path: "/ecb/actuator/prometheus"
    #static_configs:
    #  - targets: ["127.0.0.1:9521"]
    file_sd_configs:
      - files: ['/usr/local/prometheus/file_sd/test/spring-boots.yml']
      refresh_interval: 60s
###
./promtool check config prometheus.yml
###
Checking prometheus.yml
 SUCCESS: prometheus.yml is valid prometheus config file syntax
###

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
通过热加载,重新加载配置

热加载

curl -X POST http://localhost:9090/prometheus/-/reload

访问验证

地址:http://192.168.xxx.xxx:9090/prometheus/service-discovery?search=
在这里插入图片描述

END

Docker部署Blackbox Exporter避坑指南:从配置文件挂载到Prometheus服务发现,一步一图搞定 本文详细介绍了使用Docker部署Blackbox Exporter的完整流程,包括配置文件挂载、网络模式选择、权限管理等关键步骤,并提供了Prometheus动态服务发现的进阶技巧。通过一步一图的实战指南,帮助用户避免常见陷阱,实现高效的黑盒监控方案。 阅读详情

相关推荐

5分钟搞定:用Prometheus+Grafana搭建Linux服务器监控看板(附避坑指南)

本文详细介绍了如何快速使用Prometheus+Grafana搭建Linux服务器监控看板,包括软件包准备、端口规划、三步快速部署步骤以及五大避坑指南。通过这套轻量级监控方案,运维人员可以高效实现服务器监控,提升运维效率。

weixin_29202213的博客 214

Prometheus 热加载配置

Prometheus 热加载配置 先使用下面的命令访问prometheus查看是否正常 curl -X POST http://localhost:9090/-/reload 请求接口后返回 Lifecycle API is not enabled. 就是没有开启热更新配置 ,需在启动命令增加参数:--web.enable-lifecycle 具体启动命令 ./prometheus --web.enable-lifecycle --config.file=prometheus.yml 使

Grocery 3209

从静态到动态:Prometheus文件服务发现的自动化演进之路

本文探讨了Prometheus从静态配置到文件服务发现(file_sd_configs)的自动化演进过程,解析了如何通过动态管理监控目标提升运维效率。文章详细介绍了文件服务发现的核心机制、与配置管理工具的集成方案,以及高级优化策略,为云原生环境下的监控系统提供了实用指南。

weixin_29291069的博客 155

【云原生 | Kubernetes 系列】---Prometheus热加载

Prometheus热加载

Q先生 1351

保姆级教程:5分钟搞定SNMP-Exporter搭建与交换机监控配置(含避坑指南)

本文提供SNMP-Exporter的保姆级搭建教程,5分钟完成从部署到交换机监控配置的全流程,涵盖华为/思科设备实战技巧和常见问题排查指南。通过详细的命令示例和避坑建议,帮助运维工程师快速实现网络设备监控,提升Prometheus生态下的监控效率。

weixin_29234509的博客 331

Prometheus结合Consul实现自助服务发现

Consul 是基于 GO 语言开发的开源工具,主要面向分布式,服务化的系统提供服务注册、服务发现和配置管理的功能,默认端口8500。Consul提供服务注册/发现、健康检查、Key/Value存储、多数据中心和分布式一致性保证等功能。通过 Prometheus 实现监控,当新增一个Target 时,需要变更服务器上的配置文件,即使使用 file_sd_configs 配置,也需要登录服务器修改对应 Json文件,会非常麻烦。

JessonLiu_的博客 1800

Prometheus 基于文件的服务发现完全指南:从原理到实战

在云原生与微服务架构盛行的今天,服务的动态伸缩、弹性部署已成为基础设施的核心特征。面对频繁变化的实例 IP 和端口,传统静态配置的监控方式显得力不从心。Prometheus 基于文件的服务发现(File-based Service Discovery)正是解决这一问题的轻量级方案。本文将从零开始,系统讲解文件服务发现的工作原理、配置方法,并通过一个完整的实战案例,带你掌握如何在不重启 Prometheus 的情况下动态管理监控目标。在 Prometheus 的监控体系中,抓取目标(Target)

zengcong12138的博客 339

1-云原生监控体系-Prometheus架构解析和部署配置

Prometheus是一个开源系统监控和警报工具包。自2012年成立以来,许多公司和组织都采用了Prometheus,该项目拥有非常活跃的开发人员和用户社区。现在是一个独立的开源项目,独立于任何公司进行维护。为了强调这一点,并澄清项目的治理结构,Prometheus于2016年加入了云原生计算基金会(CNCF),成为继Kubernetes之后的第二个托管项目。Prometheus将其指标收集并存储为时间序列数据,即指标信息与记录它的时间戳一起存储,以及称为标签的可选键值对。

qq_22648091的博客 4271

学习笔记:Prometheus 配置之consul 实现自动服务发现以及热加载配置

Prometheus 配置 consul 实现自动服务发现

cykablyta的博客 2542

【云原生】Prometheus 服务自动发现使用详解

Prometheus服务自动发现使用详解

congge 7712

Prometheus 监控对象配置全指南

Prometheus监控配置的三种方式及实践指南 摘要:Prometheus通过scrape_configs模块提供三种主流监控配置方式:1)静态配置适合小规模固定IP场景;2)文件服务发现支持中等规模动态更新;3)动态服务发现适配K8s/云环境。最佳实践包括分层管理、标签标准化、避免硬编码IP等,同时需注意配置语法校验、目标状态监控和网络权限控制。常见监控对象如Linux、MySQL等均有对应Exporter,配置后可通过Prometheus UI实时验证目标状态。

SmallBull的博客 1117

Prometheus文件服务发现实战:从静态配置到动态管理的平滑迁移

本文详细介绍了如何将Prometheus监控系统从静态配置平滑迁移到动态文件服务发现(file_sd_configs),解决静态配置维护成本高、易出错等问题。通过实战案例展示迁移步骤,结合Ansible实现自动化管理,并分享生产环境最佳实践与常见问题排查方法,帮助提升监控系统的灵活性和可靠性。

m2n3o4p5的博客 734

PLC编程入门基础知识

PLC即为可编程逻辑控制器,实质是一种专用于工业控制的计算机,其硬件结构基本上与微型计算机相同。

SANRENYIXING的博客 2万+

Prometheus自动化监控-基于文件的服务发现

如果每次添加一个服务都要去Prometheus配置文件中修改配置文件,会很麻烦,也很容易出现错误。下面我们学习Prometheus的自动化监控。 Prometheus添加被监控端支持两种方式: • 静态配置:手动配置 • 服务发现:动态发现需要监控的Target实例 支持服务发现的来源: • azure_sd_configs • consul_sd_configs • dns_sd_configs • ec2_sd_configs • openstack_sd_configs • file_sd_conf

Eistert 551

手把手教你为ArduPilot添加自定义飞行模式:以自动巡检航线为例

本文详细介绍了如何为开源飞控ArduPilot添加自定义飞行模式,并以自动巡检航线为例,提供了从状态机设计、代码实现到地面站集成的完整开发指南。通过七步法手把手教学,帮助开发者深入理解飞控核心逻辑,实现无人机自主执行复杂巡检任务,满足行业应用定制需求。

weixin_29306875的博客 133

如何适配自定义激光雷达数据到LIO-SAM:解决ring和time参数缺失问题

本文详细解析了如何将非标准激光雷达(如速腾、Livox)适配到LIO-SAM框架中,重点解决ring和time参数缺失问题。提供了从源码修改到通用适配中间件的多层级解决方案,并包含实机测试与性能调优指南,帮助开发者高效完成雷达数据适配。

weixin_42551227的博客 420

Prometheus之Consul服务发现

Docker方式启动 docker run -d -p 8500:8500/tcp --name consul consul agent -data-dir=/consul/data -config-dir=/consul/config -dev -ui -client 0.0.0.0 consul:latest K8S启动方式 cat <<END> consul.yaml apiVersion: apps/v1 kind: Deployment metadata: n.

weixin_42562106的博客 395

Lumerical FDTD新手教程:5步搞定MMI波导光谱模拟(附避坑指南)

本文提供Lumerical FDTD新手教程,详细讲解5步完成MMI波导光谱模拟的实用方法,包括环境准备、结构建模、光源配置、仿真优化和结果分析。特别针对多模干涉耦合器(MMI)的模拟难点,提供避坑指南和优化策略,帮助光学工程师快速掌握FDTD仿真技术。

kite3的博客 358

Prometheus 配置文件 prometheus.yml 全解析:scrape_configs 与全局设置一次讲透的完整清单

Prometheus(普罗米修斯)是开源监控界最主流的**监控系统和时序数据库**,它的行为几乎完全由一个 YAML 文件 `prometheus.yml` 决定:多久抓一次指标、从哪里抓取、告警发到哪、数据写到哪里,全在这个文件里。本文面向新手,用一份"完整清单"讲透 **prometheus.yml 全局设置(global)** 与 **scrape_configs(抓取任务)** 两大核心,

gitblog_00242的博客 633

VH6501实战:手把手教你用CANoe脚本精准触发CAN总线干扰(附避坑点)

本文详细介绍了使用VH6501和CANoe脚本精准触发CAN总线干扰的实战技巧,包括触发位置控制、ValidityMask配置和干扰序列设置等关键步骤。通过具体代码示例和常见问题排查指南,帮助工程师避开实际应用中的常见陷阱,提升CAN总线干扰测试的准确性和效率。

weixin_33709219的博客 368

cadence CIS 库建立--建立自己维护的CIS数据库

遇到一个问题,在使用cadecnce的时候,就是没有自己的本地/分享的数据库。 在画原理图或者PCB的时候,如果能搭建一个自己的数据库,在局域网或者本地 就好了。出于这样的想法,做了一些探索,找到了一种可能的答案。 由于数据库编制知识的缺乏,要自己建一个数据库似乎花费的时间会比较多。 偶发奇想,如果能够改编CIS 自带的数据库 另建立副本进行维护 就能够省下不少麻烦。 先说下CIS 是个啥。网上一搜:总之CIS 是个好东西。 功能强大。 点击CIS capture 中的 Options CIS Config

qq_29776365的博客 2万+

HAProxy七层代理:云原生负载均衡核心技术与实践

负载均衡作为分布式系统的关键组件,通过智能分配流量保障服务高可用。七层代理基于HTTP协议实现精细化路由,相比四层负载具备Header解析、Cookie会话保持等高级特性。HAProxy作为开源负载均衡标杆,采用事件驱动架构支持10万级并发连接,其动态服务发现、Prometheus监控集成等特性完美契合云原生场景。在Kubernetes和微服务架构中,HAProxy常作为Ingress Controller实现金丝雀发布和流量染色,配合Consul等服务发现工具可构建金融级高可用方案。本文深入解析HAPro

weixin_30271335的博客 388

MS1826A HDMI 多功能视频处理器 HDMI4进1出画面分割芯片

基本介绍 MS1826A 是一款多功能视频处理器,包含 4 路独立 HDMI 音视频输入通道、1 路 HDMI 音视 频输出通道以及 1 路独立可配置为输入或者输出的 SPDIF、I2S 音频信号。支持 4 个独立的字库定 制型 OSD;可处理隔行和逐行视频或者图形输入信号;有四路独立视频播放引擎可支持视频多路 播放。该产品提供了高质量的视频输出,有解隔行输入、视频增强,以及帧率转换的处理能力。 功能特征 视频输入输出  四路独立 HDMI 输入通道  一路 HDMI 输出通道  最高支持 4K@3

qq_45645383的博客 1779

【云原生监控】Prometheus动态发现

目前,我们每增加一个被监控的节点,就需要修改Prometheus的配置文件,然后重新加载Prometheus服务,这种方式比较繁琐,每次新增、 删除被监控节点都需要重新操作一遍,不适合生产环境的大规模监控架构;所以Prometheus就提供了这种问题的解决方案,方案有两种,基于文档的自动发现和基于网络的自动发现。

weixin_73059729的博客 1645

Thingsboard PE智慧运维仪表板实例(一)【智慧排口截污实例】

以该实际落地项目为案例,跟着我一起搭建智慧运维大屏!社区版和专业版都通用。本文是致力于快速搭建,所以不会详细去讲Thingsboard的知识点,只讲如何配置和使用部件。

weixin_67440240的博客 1720

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

解决prometheus热加载配置

prometheus启动后修改配置文件就需要再重启生效 可以通过以下方式 热加载 curl -X POST http://localhost:9090/-/reload 请求接口后返回 Lifecycle API is not enabled. 那么就是启动的时候没有开启热更新配置,需要在启动的命令行增加参数: --web.enable-lifecycle ./prometheus --web.enable-lifecycle --config.file=prometheus.yml 如果已经把prom

Eistert 1万+

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

上一篇: nginx代理后打开grafana页面If you‘re seeing this Grafana has failed to load its application files
下一篇: Prometheus认证访问-grafana配置-安装mysql和redis的节点监控
privateobject
博客等级 码龄9年 107粉丝 86原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值