Prometheus 通过consul动态修改Targets接入

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

Prometheus 通过consul动态修改Targets接入

通常Prometheus 要增加一个target,需要在配置文件中已添加一个job,例如下:

- job_name: 'prometheus'
    static_configs:
      - targets: ['localhost:9090']

每次修改需要直接修改服务器上的配置文件,非常麻烦。Prometheus 提供了多种动态服务发现的功能,这里使用consul来做一个例子。

1.在Prometheus配置文件中配置consul
- job_name: 'consul-prometheus'
    consul_sd_configs:
    #consul 地址
      - server: 'xx.xx.xx.xx:8500'
        services: []
    relabel_configs:
      - source_labels: [__meta_consul_tags]
        regex: .*prometheus-target.*
        action: keep

配置这个之后,Prometheus就会动态发现consul的Service。
这里使用了 relabel_configs 用法可以参考 https://prometheus.io/docs/prometheus/latest/configuration/configuration/#
我这里的意思是过滤,只有consul的service的tag为prometheus-target 的动态发现。
随后我们只要在consul修改Service即可。

2.consul中注册服务

consul注册注册service 的方式有多种,
如果静态注册.
创建文件夹consul.d
添加如下test.json:

{
  "service":{
    "id": "node",
    "name": "prometheus-node",
    "address": "127.0.0.1",
    "port": 9100,
    "tags": ["prometheus-target"],
    "checks": [
        {
            "http": "http://127.0.0.1:9100/metrics",
            "interval": "15s"
        }
    ]
  }
}

在consul启动命令中,指定配置路径

-config-dir=consul.d

启动后查看Prometheus 和consul 界面,可以看到target是否引入。

也可以使用http Api 的方式

curl -X PUT -d '{"service":{"id":"node","name":"prometheus-node","address":"127.0.0.1","port":9100,"tags":["prometheus-target"],"checks":[{"http":"http://127.0.0.1:9100/metrics","interval":"15s"}]}}' http://127.0.0.1:8500/v1/agent/service/register

还可以使用各语音版本的sdk:
https://www.consul.io/api/libraries-and-sdks.html

我这里使用JAVA 版本的

<dependency>
  <groupId>com.orbitz.consul</groupId>
  <artifactId>consul-client</artifactId>
  <version>1.0.0</version>
</dependency>

使用如下:

public class ConsulTest {
  Consul client;

  /**
   * 初始化.
   */
  @Before
  public void init() {

    client = Consul.builder().withHostAndPort(HostAndPort.fromParts("xx.xx.xx.xx", 8500)).build();
    //  catalogClient = client.catalogClient();
  }

  @Test
  public void queryAll() {
    Map<String, Service> services = client.agentClient().getServices();
    for (Map.Entry<String, Service> entry : services.entrySet()) {
      System.out.println("key:" + entry.getKey());
      System.out.println("value:" + entry.getValue().toString());
    }

  }


  @Test
  public void testDelete() {
    client.agentClient().deregister("etcd");
  }


  @Test
  public void testAdd1() {
    String serviceName = "prometheus-etcd";
    String serviceId = "etcd";
    Registration.RegCheck single = Registration.RegCheck.http("http://127.0.0.1:2379/metrics", 20);
    Registration reg = ImmutableRegistration.builder()
        .check(single)
        .addTags("prometheus-target")
        .address("127.0.0.1")
        .port(2379)
        .name(serviceName)
        .id(serviceId)
        .build();
    client.agentClient().register(reg);
  }



}
机器学习模型服务化:Triton+Prometheus+Consul生产实践 机器学习模型服务化是将训练完成的模型部署为高可用、低延迟、可观测的在线推理服务的关键环节。其核心原理在于突破传统Web框架(如Flask)对异步GPU推理的适配瓶颈,转而采用专为AI负载设计的推理服务器与配套可观测性体系。技术价值体现在显著提升GPU利用率、实现毫秒级动态批处理、支持无中断模型热更新,并构建从请求链路、资源状态到数据漂移的全栈监控闭环。典型应用场景包括电商图像识别、工业缺陷检测、实时推荐等高并发、强SLA要求的产线系统。本文聚焦模型服务化落地中的三大支柱:Triton推理引擎配置调优、Pro 阅读详情

相关推荐

Prometheus 动态拉取监控服务

我们在以前的实例中配置Prometheus 的target 都是手动配置,这在监控目标少的情况下还可以接受,如果是要监控上百个微服务,都手动配置岂不是蠢死。Spring Boot Admin 都可以从注册中心拉取服务列表,也可以每个应用单独注册到Spring Boot Admin,Prometheus 当然也可以

分享技术干货和灵感、推荐新书和好玩的项目、分享Java面试题 2492

prometheus+consul 服务自动发现监控

prometheus+consul 服务自动发现监控 搭建prometheus监控平台请参考:https://blog.youkuaiyun.com/han949417140/article/details/112345172 一、 简介 prometheus配置文件 prometheus.yml 里配置需要监听的服务时,是按服务名写死的,如果后面增加了节点或者组件信息,就得手动修改此配置,并重启 promethues;那么能否动态的监听微服务呢?Prometheus 提供了多种动态服务发现的功能,这里以 consul

han949417140的博客 4434

consul_exporter:领事指标导出器

领事出口商 将领事服务运行状况导出到Prometheus。 要运行它: make ./consul_exporter [flags] 导出指标 公制 意义 标签 领事 领事的上一次查询是否成功 consul_raft_peers Raft群集中有多少个对等(服务器) consul_serf_lan_members 集群中有多少个成员 consul_serf_lan_member_status 集群中成员的状态。 1 =存活,2 =离开,3 =离开,4 =失败。 成员 consul_catalog_services 集群中有多少服务 consul_catalog_service_node_healthy 该服务在此节点上是否健康 服务,节点 consul_health_node_status 与节点关联的运行状况检查的状态 检查,节点,状态 consul_health_

Prometheus 通过 consul 实现自动服务发现

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

哎_小羊的博客 3万+

RDMA学习笔记-IB五层网络协议和报文结构

Reference InfiniBand Architecture Specification Volume 1, Release 1.3 文章目录IBA 网络协议分层1.链路层1.1 LRH1.2 ICRC1.3 VCRC2.网络层(GRH)3.传输层3.1 BTH3.2 extended transport header4. 报文结构4.1 send request4.2 RDMA Write request4.3 RDMA Read request4.4 ACK4.5 Atomic operatio

u014114310的博客 9476

现代控制理论(4)——李雅普诺夫稳定性理论

文章目录

wang7301的博客 5万+

consul接入PHP,Prometheus 通过consul动态修改Targets接入

Prometheus 通过consul动态修改Targets接入通常Prometheus 要增加一个target,需要在配置文件中已添加一个job,例如下:- job_name: 'prometheus'static_configs:- targets: ['localhost:9090']123每次修改需要直接修改服务器上的配置文件,非常麻烦。Prometheus 提供了多种动态服务发现的功能,...

weixin_35849711的博客 346

Mid-360激光雷达与Fast-LIO2实战:从环境搭建到实时点云建图

本文提供Livox Mid-360激光雷达与Fast-LIO2算法从零开始的实战教程。详细介绍了在Ubuntu和ROS环境下进行系统配置、依赖安装、硬件连接与网络设置的完整流程,并指导如何运行算法实现实时点云建图与可视化,最后总结了关键参数调优与常见问题排查方法。

weixin_29300241的博客 153

Prometheus和Consul

Target(目标)指的是一个Prometheus可以抓取(scrape)指标数据的网络端点(通常是是HTTP端点)。简单来说:Target = 一个提供了/metrics接口的应用实例Prometheus的工作就是定期向这些Targets发起HTTP请求获取监控数据并存储起来1、一个提供了metrics数据的应用实例端点(如:host:post/metrics)2、作为Prometheus抓取监控数据的来源静态配置:手动在prometheus.yml中写;动态服务发现。

这是博客简介。 906

基于Simulink的光伏电站AGC/AVC协调控制仿真

摘要:本文基于Simulink构建光伏电站AGC/AVC协调控制仿真模型,通过分层控制架构实现有功-无功解耦与储能协同。系统包含100kW光伏阵列、50kWh储能及逆变器组件,采用PID控制器实现AGC频率调节(±0.1Hz)和Q-V下垂控制实现AVC电压稳定(±2%)。仿真验证了三种工况下协调控制的有效性:正常调度时储能充电20kW;负荷突增时储能15kW放电维持频率;光照骤降时储能30kW放电并吸收2kVAR无功稳定电压。结果表明,该方案可使频率/电压偏差分别控制在0.1Hz和7.6V内,响应时间&lt

xiaoheshang_123的博客 236

科研级实战】YOLOv11 pose部署至RK3588全流程:让姿态估计模型在边缘端毫秒级运行,我来帮你突破人体行为分析落地壁垒

在智慧安防人体行为分析场景中,基于YOLOv11 pose的模型在云端推理单帧耗时150ms,硬件成本超15000元;经本方案部署到RK3588后,单帧推理耗时降至30ms,硬件成本仅4000元,且关键点检测准确率高达93%以上。在运动姿态评估场景,同款技术路径使模型边缘端推理速度提升6倍,姿态分类精度达95%。这意味着,你也能让自己的姿态估计模型在边缘设备上实现的工业化落地,接下来让我们开启从模型训练到端侧部署的实战征程。

m0_71589036的博客 223

从手动维护到自动发现:TenSunS 接入 Consul 的完整部署流程

主机上线下线,你得改 prometheus.yml;多云账号的 ECS、Redis 信息散落在各控制台;站点监控目标靠一条条手填。TenSunS(原 ConsulManager)这套基于 Consul 的 Web 运维平台,就是把这些手动活变成自动同步:云资源和自建主机注册进 Consul,Prometheus 再做自动发现,全程在浏览器里完成。 ## 🧭 先看懂架构:TenSunS 在链路里

gitblog_00016的博客 553

【感知模块算法】障碍物detect+trace+prediction方向介绍

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录系列文章目录前言一、多维度看感知问题,体会复杂性二、障碍物/环境目标detect方向1.视觉目标检测方向(1)图像处理认知(2)视觉基础理论部分1、获取数据集---python网页爬虫、买数据、自己录数据、使用开源比赛的数据集2、opencv库的学习3、深度学习框架学习(3)视觉目标检测理论(1)目标检测的概念(2)目标检测的应用场景(3)现有目标检测框架原理及论文【这仅仅是我当初入门学习的框架~

qq_35635374的博客 2894

Prometheus + Consul 完整监控解决方案(分阶段实施)

json"list": [},},promql# CPU使用率(带变量)# 内存使用率# 磁盘使用率TOP 10topk(10,阶段功能状态第一阶段Consul集群、Prometheus、Grafana、Alertmanager基础环境✅第二阶段3台测试节点部署,验证动态发现✅第三阶段Prometheus分组配置,按环境/角色/业务线分组✅第四阶段告警规则配置,按分组路由✅第五阶段扩展到全量节点,分组模板✅第六阶段。

jzt123456_j的博客 481

Attention优化|2w字原理&图解: 从Online-Softmax到FlashAttention V1/V2/V3

本文通过原理分析和图解的方式,通俗易懂地FlashAttention系列算法。FlashAttention V1/V2在LLM领域的应用已经非常广泛,相关的论文也反复读了几遍。FA1和FA2论文非常经典,都推荐读一下(不过FA2论文中公式错误不少本文大约1.8w字,包括以下内容:0x07 分布式训推使用FlashAttention0x09 FlashAttention中MQA/GQA以及Causal Mask处理。

具身机器人和通用AI 5233

使用 MATLAB/Simulink 构建一个基于FOC控制的PMSM矢量控制仿真模型

本教程详细介绍了基于Simulink的永磁同步电机(PMSM)磁场定向控制(FOC)仿真建模过程。主要内容包括:PMSM电机参数设置、Clarke/Park变换模块设计、电流环PID控制器构建、SVPWM调制实现等关键步骤。教程提供了完整的建模流程、参数配置建议和仿真调试方法,并给出了PID整定技巧和进阶优化方向。通过该模型,可深入理解PMSM矢量控制原理,掌握高性能电机控制系统的建模技术,为伺服系统、电动汽车驱动等应用领域提供仿真基础。教程还推荐了使用PIDTuner工具进行参数优化,并提出了加入负载扰动

amy_mhd的博客 645

iloader:免费 iOS 侧载工具,不碰命令行把 SideStore 装进 iPhone

iloader 是一款免费的 iOS 侧载图形工具,把登录 Apple ID、签名、安装 IPA、放置配对文件压成几个按钮,适合不想碰命令行的 iPhone 用户。 ## 为什么要用它 想手动装个 SideStore?得先下 IPA,再签名、安装,最后把 rppairing 和 lockdown 两份配对文件塞进各自的目录——中间哪步出错,全流程停摆。免费 Apple ID 侧载还有硬限制:一

gitblog_00973的博客 171

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

PowerToys File Locksmith:右键一秒揪出占用文件的进程

想删个文件,Windows 却弹"文件正在由另一进程使用"。窗口全关了,还是删不动。PowerToys File Locksmith 就是治这个的:右键文件,它直接告诉你哪个进程锁着它,还能当场结束。 ## File Locksmith 是什么:比资源监视器省事的文件占用排查工具 File Locksmith 是微软 PowerToys 工具集里的文件占用检测模块,只干一件事:遍历系统里所有进

gitblog_01154的博客 1096

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

wechat-article-exporter 完整指南:把微信公众号文章批量下载并归档到本地

wechat-article-exporter 是一款微信公众号文章批量下载工具。用一个绑定了公众号的微信账号扫码登录后,它能自动同步该号的历史文章列表、批量抓取正文,并导出 html、json、excel、txt、markdown、docx 六种格式。其中 HTML 会把全部图片与样式打包,解压后 100% 还原微信内排版。整个过程都在浏览器里完成,不需要写代码。 ## 💻 动手之前:三种方

gitblog_00531的博客 346

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

prometheus主动服务发现机制

简介如图: SD模块是专门负责发现需要监控的target信息,prometheus去SD模块订阅该信息,有target信息会推送到Prometheus,然后Prometheus拿到target信息后通过pull http 协议去拉取该指标的数据。静态服务发现机制,配置简单,但是监控目标是写死在了配置文件中,如果要新增、修改、删除监控节点时,需要每次都去修改配置文件,然后再通知prometheus重新加载,这太麻烦了。于是出现了动态服务发现。通过定义一组资源“子”配置文件,yaml格式文件里面只存储需要采集的

2403_89688685的博客 1314

Grafana+Prometheus+springboot+consul 监控sprongBoot 指标

架构 参考资料 使用Prometheus监控SpringBoot应用:https://blog.youkuaiyun.com/jianzhang11/article/details/102714935 SpringBoot 服务注册 (Consul):https://blog.youkuaiyun.com/liuxiaoxiaosmile/article/details/82970870 Prometheus 通过consul动态修改Targets接入:https://blog.youkuaiyun.com/poorcoder_/artic

github_35976996的博客 272

Thorium 浏览器四平台安装:一行命令查指令集档位,装完三步验证能用

标签页一多 CPU 就满负载,4K H.265 视频掉帧——这是 Chromium 系用户的常见痛点。Thorium 浏览器是一个 Chromium 开源分叉,基于最新 Chromium 构建,用 LTO、PGO 等编译优化提速,并按 CPU 指令集(SSE3/SSE4/AVX/AVX2)分档出包。下面带你走完选包、安装、验证的完整流程。 [![Thorium 浏览器完整界面截图,展示地址栏、书

gitblog_00421的博客 367

Prometheus 自定义服务发现:基于 file_sd 适配器实现官方发行版未内置的 SD 机制

本篇指南基于 Prometheus 仓库中的 [custom-sd 示例](https://link.gitcode.com/i/b6fbb96fd26c1d72a39630fd862c92cf) 展开,讲解如何用 file_sd 适配器把任意“非官方”服务发现(Service Discovery,SD)实现接入 Prometheus:你只需实现一个 `Discoverer` 接口,由适配器将其产

gitblog_00542的博客 360

Prometheus主机发现的几种方式学习

本篇将持续更新,prometheus主机发现。

qq_50247813的博客 489
上一篇: nginx 安装 以及添加ldap模块
下一篇: ClassLoader详解
poorCoder_
博客等级 码龄10年 129粉丝 41原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值