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
相关推荐
鹤落晴春7 小时前
【K8s】Pod调度、configMaps
云原生·容器·kubernetes
张忠琳7 小时前
【runc 1.4.2】(Part 2)runc 1.4.2 超深度分析 — CLI层:main.go、命令文件、runner、信号处理、TTY
云原生·kubernetes·runc
My is 李豆9 小时前
CentOS 7 安装 Docker 完整教程(含 docker-compose 插件)
docker·eureka·centos
阿里云云原生10 小时前
AI 提效是“假象”还是“红利”?用 LoongSuite + SLS 构建组织级 AI 编码度量看板
云原生
Java识堂11 小时前
如何对微服务进行拆分?
微服务·云原生·架构
Plastic garden13 小时前
K8s知识(3) Pod亲和性,调度
云原生·容器·kubernetes
霸道流氓气质14 小时前
从MySQL到云原生:全面解析阿里云PolarDB数据库及其与MySQL的核心差异
数据库·mysql·云原生
张忠琳14 小时前
【client-go v0.36.1】(store Part 1)Store 超深度分析 — 模块定位、接口层次、类结构、KeyFunc体系、构造初始化
云原生·kubernetes·informer·store·client-go
heimeiyingwang16 小时前
【架构实战】网关架构设计:微服务的统一入口
微服务·云原生·架构
成为你的宁宁16 小时前
【Prometheus Operator 监控 K8S集群的Calico 与 Ingress-Nginx 组件】
kubernetes·prometheus