使用docker-compose快速部署Prometheus+grafana环境
初始化 Prometheus+grafana
创建相关目录并给予权限,持久化目录需要给777权限,否则容器启动失败
cd ~ && mkdir prometheus && chmod 777 prometheus
cd prometheus && mkdir grafana_data prometheus_data && chmod 777 grafana_data prometheus_data
chmod 777 grafana_data/ prometheus_data/ #个人根据配置文件中具体的挂在目录进行权限修改
vim docker-compose.yml
version: "3"
services:
node-exporter:
image: prom/node-exporter:v1.8.2
container_name: "node-exporter0"
ports:
- "9100:9100"
restart: always
prometheus:
image: prom/prometheus:v2.53.2
container_name: "prometheus0"
restart: always
ports:
- "9090:9090"
volumes:
- "./prometheus.yml:/etc/prometheus/prometheus.yml"
- "./prometheus_data:/prometheus"
grafana:
image: grafana/grafana:11.1.3
container_name: "grafana0"
ports:
- "3000:3000"
restart: always
volumes:
- "./grafana_data:/var/lib/grafana"
注:prometheus主机需要部署以上容器,其他被监控主机只需要部署node-exporter
prometheus配置文件(根据自己的服务器ip进行修改targets内容)
vim prometheus.yml
global:
scrape_interval: 15s # 默认抓取周期
external_labels:
monitor: 'codelab-monitor'
scrape_configs:
- job_name: 'node-exporter' #服务的名称
scrape_interval: 5s
metrics_path: /metrics #获取指标的url
static_configs:
- targets: ['xxx.xx.xx.xxx:9100'] # 这个为监听指定服务服务的ip和port,需要修改为自己的ip,貌似云服务必须用公网ip
开放端口
9100 :node-exporter
9090 :prometheus
3000 :grafana
启动
docker-compose up -d # 挂载目录给权限,不然会启动失败
访问
访问主机的9090端口可以查到Prometheus监控到的数据,访问3000端口是grafana的界面,账密admin/admin
node 模板号 9276,点击load 或者 8919
其他服务器安装node-exporter,这里不推荐docker
cd /usr/local/ && mkdir node_exporter
cd node_exporter
#通过wget下载二进制包
wget https://github.com/prometheus/node_exporter/releases/download/v1.8.2/node_exporter-1.8.2.linux-amd64.tar.gz
tar -zxvf node_exporter-1.8.2.linux-amd64.tar.gz
cd node_exporter-1.8.2.linux-amd64
nohup ./node_exporter &
配置
输入模板号
输入模板号 9276,点击load 或者 8919
最后,启动服务,然后在浏览器访问 http://10.2.1.159:8080/actuator/prometheus ,就可以看到服务的一系列不同类型 metrics 信息,
将应用添加到Prometheus.
修改 Prometheus 的配置文件 prometheus.yml ,添加上边启动的服务地址来执行监控。
global:
scrape_interval: 15s # 默认抓取周期
external_labels:
monitor: 'codelab-monitor'
scrape_configs:
- job_name: '数据库服务' #服务的名称
scrape_interval: 5s
metrics_path: /metrics #获取指标的url
static_configs:
- targets: ['x.x.x.x:9100'] # 这个为监听指定服务服务的ip和port,需要修改为自己的ip,貌似云服务必须用公网
- job_name: 'system服务'
scrape_interval: 5s
metrics_path: /mrms-api/system/actuator/prometheus
static_configs:
- targets: ['x.x.x.x:8089']
上面的prometheusapp 就是前面创建的Spring Boot 应用程序,也就是 Prometheus 需要监控的服务地址。
然后,重启 Prometheus 服务,查看 Prometheus UI 界面确认 Target 是否添加成功。
如上图所示,上面我们新增加的panel中成功显示了我们自定义的监控数据。继续请求之前的应用接口,数据会正常刷新。说明Grafana上的指标数据展示配置成功。
原文链接:https://blog.csdn.net/qq_38055805/article/details/141159218
版权声明:
作者:超级管理员
链接:
https://apecloud.ltd/article/detail.html?id=docker_Prometheus_grafana
来源:猿码云个人技术站
文章版权归作者所有,未经允许请勿转载。
共有0条评论