Prometheus通过注册中心nacos、Eureka 实现服务注册自动发现监控

Prometheus通过注册中心nacos、Eureka 实现服务注册自动发现监控

Prometheus通过Eureka 实现服务注册自动发现监控

使用 Prometheus 中的 Eureka (Service Discover)SD 来使用 Eureka REST API 来查询抓取目标。 Prometheus 将定期检查 REST 端点并为每个应用程序实例创建一个抓取目标

eureka配置(根据自己需要)

bash 复制代码
#启动服务时指定参数
--eureka.client.service-url.defaultZone=http://eureka-1:8761/eureka/,http://eureka-2:8761/eureka/,http://eureka-3:8761/eureka/
--eureka.client.register-with-eureka=true
--eureka.client.fetch-registry=true
--eureka.instance.prefer-ip-address=false

prometheus配置

yml 复制代码
  - job_name: 'eureka-prometheus'
    metrics_path: '/actuator/prometheus'
    eureka_sd_configs:
    - server: "http://eureka-1:8761/eureka"
    - server: 'http://eureka-2:8761/eureka'
    - server: 'http://eureka-3:8761/eureka'
    relabel_configs:
    - source_labels: [__meta_eureka_app_name]
      target_label: application
    - action: drop
      regex: "eureka.*"
      source_labels: [instance]

prometheus通过nacos实现服务注册自动发现监控

github地址:https://github.com/typ431127/Nacos_check

前提:java服务要开启监控接口

如添加配置:

yml 复制代码
management.endpoints.web.exposure.include = prometheus,health,metrics
management.health.defaults.enabled = false
management.metrics.tags.application = ${spring.application.name}
management.trace.http.enabled = false

启动脚本

解压后本地启动拉取nacos服务的脚本(指定监控的命名空间,并120s拉取一次)

bash 复制代码
cat /data/nacos_check/nacos-namespace-discovery.sh
#!/bin/bash

while true
do
        /data/nacos_check/nacos-check --url http://nacos-1IP:8848,http://nacos-2IP:8848,http://nacos-3IP:8848 --namespace 7b32a553-76d2-47d9-bb7d-53be133ac347  -o /usr/local/prometheus/monitor/nacos/nacos-namespace-discovery.json
        sleep 120s
done

prometheus配置

yml 复制代码
  - job_name: 'nacos-services'
    scrape_timeout: 15s
    metrics_path: '/actuator/prometheus'
    file_sd_configs:
    - files:
      -  '/usr/local/prometheus/monitor/nacos/*.json'
      refresh_interval: 15s
相关推荐
江畔何人初4 小时前
pod的定义以及创建过程
linux·运维·云原生
Gary董8 小时前
高并发的微服务架构如何设计
微服务·云原生·架构
东哥爱编程8 小时前
使用Runpod进行gpu serverless推理
云原生·serverless
AC赳赳老秦10 小时前
外文文献精读:DeepSeek翻译并解析顶会论文核心技术要点
前端·flutter·zookeeper·自动化·rabbitmq·prometheus·deepseek
天才奇男子12 小时前
《深度解析HAProxy七层代理:原理、配置与最佳实践》
linux·运维·微服务·云原生
小楼v13 小时前
使用Nacos实现动态IP黑名单过滤
java·后端·微服务·nacos
江畔何人初14 小时前
k8s中namespace与容器cgroup区别
linux·运维·云原生
艾莉丝努力练剑14 小时前
【Linux进程控制(三)】实现自主Shell命令行解释器
linux·运维·服务器·c++·人工智能·安全·云原生
祁鱼鱼鱼鱼鱼14 小时前
云原生-Harproxy的四层负载
云原生
江畔何人初1 天前
kubectl apply与kubectl create的区别
linux·运维·云原生