Maven项目集成Prometheus+Grafana监控(Docker安装)

前言

因本人在集成过程中踩过了坑,故会很详细的列出有坑的地方,你们在集成的过程中也会非常顺利

本人使用的项目是SpringBoot项目,所以第二步是添加Maven依赖,如果你使用的其他开发语言也不用担心,只用在第二部换一下依赖就可以

一、成品展示

先给你们看看成品,让你们学习的更有激情

二、项目添加依赖

1、添加Maven依赖

这里以SpringBoot项目为例,添加的Maven依赖如下:

<dependency>
    <groupId>io.micrometer</groupId>
    <artifactId>micrometer-registry-prometheus</artifactId>
</dependency>

因为没有填写版本号,这里分两种情况:

  • 不填版本号没有报错,并且还有以下图标

你是不是感觉到疑惑,我什么时候添加了prometheus的父依赖 ,咱们跟着步骤接着看

到这里就清楚了吧

 

  • 报错并提示你填写版本号

那就说明你不是用的SpringBoot项目,如果你看了情况1,就知道了该添加一个SpringBoot的依赖,prometheus的版本会跟着你SpringBoot的版本,笔者这里使用的2.2.0.RELEASE版本

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-actuator</artifactId>
    <version>2.2.0.RELEASE</version>
</dependency>

到这里,依赖就添加完了

2、配置文件

然后将你的配置文件中actuator安全配置的端点打开,在项目的配置文件中加入配置:

① yml文件
management:
  endpoints:
   web:
    exposure:
     include: *
    health:
      show-details: always
    prometheus:
      enabled: true
② properties文件
management.endpoints.web.exposure.include=*
management.server.servlet.context-path=/
management.endpoint.prometheus.enabled=true
management.endpoint.health.show-details=always

3、运行项目,浏览器访问

http://项目所在服务器ip:项目使用的port端口号/actuator/prometheus

我这里私服为例:http://192.168.1.125:35010/actuator/prometheus

 

有上面的配置信息显示则配置成功

三、安装Prometheus

1、下载镜像

笔者这里使用的docker安装,如果你使用的安装包安装也是一样的,只不过我觉得docker更加的方便

# 这里的tag是版本,如果你没有版本要求,那可以直接下载最新版本:latest
docker pull prom/prometheus:tag

安装完成后 docker images 查看镜像是否存在

2、编写配置文件

找一个服务器目录,我一般将docker容器的映射文件统一放在一个目录中,输入以下命令

# 新建目录 根据你想存放的目录而定
mkdir /data/docker-container/prometheus

# 新建文件
cd /data/docker-container/prometheus
touch prometheus.yml

然后将以下配置复制

global:
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # scrape_timeout is set to the global default (10s).

# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
# - "first_rules.yml"
# - "second_rules.yml"

# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # 这里配置的是prometheus的信息,也可以不要
  - job_name: 'prometheus'
    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.
    static_configs:
      - targets: ['localhost:9090']
  # 这里配置你的项目信息
  - job_name: 'nc-console-service' # 项目名称,自定义
    metrics_path: '/actuator/prometheus' # 指标获取路径
    scrape_interval: 20s # 间隔
    scrape_timeout: 20s
    static_configs:
      - targets: ['192.168.1.125:35010'] # 这里填写你项目访问ip:port,可以多个

然后通过 vim prometheus.yml 命令,按以下 i 进入编辑模式,粘贴以上内容,按 esc ,在输入命令:wq 保存退出

 

3、运行访问

因为prometheus所用的端口号为9090,如果你使用的不是容器化安装,则先检查是否端口被占用

# 检查端口使用情况,没有信息输出代表端口没有被占用
lsof -i:9090

# 如果提示lsof命令不存在,可安装一个
yum install lsof

 找到prometheus镜像id,使用  docker images 命令查看

运行prometheus

docker run -d --name prometheus -p 9090:9090 -v /data/docker-container/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml 620d5e2a39df --config.file=/etc/prometheus/prometheus.yml

这里的docker命令不多做赘述,有以下容器id出现代表命令执行成功 

使用 docker logs 44d 查看日志,这里的44d是容器id的前3位

又上图信息则ok,我们在浏览器中访问 http://192.168.1.125:9090/

 

 

up说明项目是健康的,由于prometheus的界面可视化不强,可以安装Grafana让我们看的更仔细

 

四、安装Grafana

1、下载镜像

这里的安装和prometheus的安装基本一样,更加的简单

# 先安装,这里直接下载最新的
docker pull grafana/grafana

# 新建一个数据目录
mkdir /data/docker-container/grafana/

# 查看端口占用情况
lsof -i:3000

2、运行

docker run -d --name grafana -u root -p 3000:3000 -v /data/docker-container/grafana:/var/lib/grafana 06e5d59b720d

/var/lib/grafana 为数据目录,包含一个插件文件夹以及一个 db 文件,该文件会存储用户在界面中操作及一些系统配置

-u root,这里映射了目录,可能需要创建目录文件,需要root权限

3、浏览器访问

 http://192.168.1.125:3000​​​​​​/

第一次登录默认的账号密码都为 admin,会让你修改密码 

 

 

4、配置数据源

 

 

只用填写名称和地址保存即可 ,数据源就创建好了

 5、添加JVM监控面板

 网上有很多模版,我这里选择的是4701,也是第一步成品展示的模版,你也可以在以下地址中找一个模版   Dashboards | Grafana Labs

 选择好之后load,可以自定义面板名称,然后选择我们刚才创建的数据源import就ok了

然后面板就有了

是不是很简单,但是想看懂上面的指标,可得学习学习咯

  

End 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值