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
相关推荐
oMcLin3 分钟前
如何在 Rocky Linux 8.7 上通过 Prometheus 与 Grafana 结合,提升大规模容器环境的监控与性能分析?
linux·grafana·prometheus
lbb 小魔仙1 小时前
【Linux】云原生运维效率提升:Linux 终端工具链(kubectl + tmux + fzf)组合拳教程
linux·运维·云原生
Cyber4K5 小时前
【Kubernetes专项】DockerFile、数据持计划、网络模式及资源配额
运维·网络·云原生·容器·kubernetes
Zsr10236 小时前
K8s核心组件Pod:基础篇
云原生·容器·kubernetes
nix.gnehc6 小时前
Serverless
云原生·serverless
拔剑纵狂歌6 小时前
helm-cli安装资源时序报错问题问题
后端·docker·云原生·容器·golang·kubernetes·腾讯云
techzhi6 小时前
Docker & Docker Compose 安装方案
docker·容器·eureka
飞翔沫沫情7 小时前
Prometheus 监控 ESXi 实战
grafana·prometheus·esxi·vcenter 监控·vsphere 监控
weixin_448119947 小时前
如何装docker
java·云原生·eureka
没有bug.的程序员7 小时前
Service Mesh 下的流量治理:灰度、熔断、限流的深度实践与代价剖析
网络·云原生·限流·熔断·灰度发布·流量治理·servicemesh