Docker搭建Prometheus+grafana
前置条件已经安装docker
1、安装Prometheus
sudo docker pull prom/prometheus
sudo docker run -itd --name=prometheus --restart=always -p 9090:9090 prom/prometheus
容器创建成功,使用docker命令可以看到容易已经运行
sudo docker ps
输入ip:9090进行验证,可以看到如下界面

2、安装gragana
sudo docker pull grafana/grafana
sudo docker run --name=grafana -p 3000:3000 -itd grafana/grafana
通过访问ip:3000端口可以看到gragana登陆界面,默认用户名与密码均为admin,首次登陆后会提示你修改密码

3、安装node_exporter
sudo docker pull prom/node-exporter
sudo docker run --name=node-exporter -p 9100:9100 -itd prom/node-exporter(不会自启动,推荐下面这个,这条命令重启系统需要重新运行)
sudo docker run --name=node-exporter --restart=always -p 9100:9100 -itd prom/node-exporter
注意当vps挂在了磁盘时,使用上述只能监测到vps本身的数据,可使用下述方式中二选一(下面这两种记得防火墙放行端口)
sudo docker run -d \
--name=node-exporter \
--restart=always \
--net=host \
-v "/:/host:ro,rslave" \
prom/node-exporter \
--path.rootfs=/host \
--collector.filesystem.ignored-mount-points="^/(sys|proc|dev|run|var/lib/docker/.+|var/lib/containerd/.+|etc/hostname|etc/hosts|etc/resolv.conf)$"
或
version: "3.8"
services:
node-exporter:
image: prom/node-exporter:latest
container_name: node-exporter
restart: always
network_mode: host
volumes:
- /:/host:ro,rslave
command:
- --path.rootfs=/host
- --collector.filesystem.ignored-mount-points=^/(sys|proc|dev|run|var/lib/docker/.+|var/lib/containerd/.+|etc/hostname|etc/hosts|etc/resolv.conf)$
,访问ip:9100
打开网页的metrics,可以看到已经显示数据
4、修改prometheus配置文件
sudo docker cp prometheus:/etc/prometheus/prometheus.yml $PWD
在本地目录编辑配置文件
vim prometheus.yml
新增一个job,注意job_name不能重复,添加(最好直接复制上面在进行修改,此处ip填写本机eth0的ip,可ifconfig查看)
- job_name: "自己命名"
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ["ip:9100"]
sudo docker cp $PWD/prometheus.yml prometheus:/etc/prometheus/prometheus.yml
重启prometheus容器
sudo docker restart prometheus
此时刷新ip:9090可以看到status下的targets中看到监控的ip节点已经上线
5、面板设置
在grafana中点击头像,profile,在下面可以设置语言
点击连接-数据源或点击首页add your first data source,选择prometheus,在settings中添加name与url,点击save即可,显示绿色即成功。


导入模板,记得选择数据源
本处使用https://github.com/starsliao/Prometheus/tree/master/node_exporter此处的Node Exporter Dashboard 20240520 TenSunS自动同步版(模板可以使用json文件导入也可以通过官网看到的模板id号导入)

完成。
6、还要监控器其他vps,服务器端安装node_exporetr即可,重复34步骤,添加数据源即可。
搭建过程参考链接:
docker部署prometheus+grafana视图监控-福福不服
Docker搭建Prometheus+grafana监控系统 – 等风来~~ – 博客园
使用 Docker 部署 Prometheus + Grafana 监控平台-阿里云开发者社区
debian12搭建Prometheus+Grafana安装教程-美国VPS综合讨论-全球主机交流论坛 – Powered by Discuz!