Docker容器监控(Cadvisor +Prometheus+Grafana)

环境部署,接着上一篇文章Docker容器部署(Cadvisor +InfluxDB+Grafana)开始

目录

1、先清理一下容器

2、部署Cadvisor

3、访问Cadvisor页面

4、部署Prometheus

5、准备配置

6、运行prometheus容器

7、访问prometheus页面

8、部署Grafana

9、配置Grafana

10、测试


1、先清理一下容器

复制代码
[root@localhost ~]# docker rm -f $(docker ps -aq)
11201213a39a
63844f017e3d
f70fa681a8ab
e729bfb694a1

2、部署Cadvisor

复制代码
[root@localhost ~]# docker run -d \
> --volume=/:/rootfs:ro \
> --volume=/var/run:/var/run:ro \
> --volume=/sys:/sys:ro \
> --volume=/var/lib/docker/:/var/lib/docker:ro \
> --volume=/dev/disk/:/dev/disk:ro \
> --publish=8080:8080 \
> --detach=true \
> --name=cadvisor \
> google/cadvisor:latest
82cb584af19a643a643489ee43b6b9c461c5f5a78d24a36d613c8adb8fe6ef00

3、访问Cadvisor页面

4、部署Prometheus

复制代码
[root@localhost ~]# docker pull prom/prometheus
Using default tag: latest
latest: Pulling from prom/prometheus
3cb635b06aa2: Pull complete 
34f699df6fe0: Pull complete 
33d6c9635e0f: Pull complete 
f2af7323bed8: Pull complete 
c16675a6a294: Pull complete 
827843f6afe6: Pull complete 
3d272942eeaf: Pull complete 
7e785cfa34da: Pull complete 
05e324559e3b: Pull complete 
170620261a59: Pull complete 
ec35f5996032: Pull complete 
5509173eb708: Pull complete 
Digest: sha256:cb9817249c346d6cfadebe383ed3b3cd4c540f623db40c4ca00da2ada45259bb
Status: Downloaded newer image for prom/prometheus:latest
docker.io/prom/prometheus:latest

5、准备配置

bash 复制代码
[root@localhost ~]# vim /tmp/prometheus.yml

# my global config
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).

# Alertmanager configuration
alerting:
  alertmanagers:
  - static_configs:
    - targets:
      # - alertmanager:9093

# 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:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: 'prometheus'

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
    - targets: ['localhost:9090']
  - job_name: 'docker'      ##定义一个叫docker的组
    static_configs:
- targets: ['192.168.147.139:8080']   ##填写一个或多个cadvisor的主机地址用逗号隔开

6、运行prometheus容器

bash 复制代码
[root@localhost ~]#  docker run -d \
> --name=prometheus  -p 9090:9090  \
> -v /tmp/prometheus.yml:/etc/prometheus/prometheus.yml \
>  -v /etc/localtime:/etc/localtime \
> prom/prometheus
d1cddcd4cbf4a8981dd8b9b6a68311c666d3434b12b354ef39dc04aa1c92a160
[root@localhost ~]# docker ps -a
CONTAINER ID   IMAGE                    COMMAND                   CREATED             STATUS          PORTS                                       NAMES
d1cddcd4cbf4   prom/prometheus          "/bin/prometheus --c..."   3 seconds ago       Up 3 seconds    0.0.0.0:9090->9090/tcp, :::9090->9090/tcp   prometheus
82cb584af19a   google/cadvisor:latest   "/usr/bin/cadvisor -..."   About an hour ago   Up 29 seconds   0.0.0.0:8080->8080/tcp, :::8080->8080/tcp   cadvisor

7、访问prometheus页面

进入Targets页面

看到docker组状态up为正常

查询项是可以查到数据的

8、部署Grafana

bash 复制代码
[root@localhost ~]# docker run -d \
> --name=grafana \
> -p 3000:3000 \
> grafana/grafana
3478eb756c58868cd2a0f1492b68dca9ef52c91eb877a89ac2c2c51e222312af

9、配置Grafana

访问http://192.168.147.139:3000默认账户admin 密码 admin首次登陆需要修改密码

添加add data source

save test

import

最下面选择prometheus再import

10、测试

bash 复制代码
[root@localhost ~]# docker run --name=nginx -d -p 80:80 nginx
de08a1a9e25b0436ea2433166b69eea81afc3bca3c45ab8ab59515ec7ae80d33

保存就好了

到此Cadvisor +Prometheus+Grafana基本架构部署完毕

相关推荐
摇滚侠6 小时前
Prometheus+Grafana+睿象云的监控告警系统 01-07
grafana·prometheus
donoot12 小时前
一次 Nginx 502 问题的深度排查:从 SELinux 到容器网络
nginx·docker·selinux·反向代理·502 bad gateway
Sagittarius_A*14 小时前
Docker:渗透前置容器化核心基础
运维·安全·docker·容器
名字还没想好☜16 小时前
Docker 多阶段构建:把镜像从 1.2GB 砍到 15MB
运维·docker·容器·多阶段构建·镜像优化
生活爱好者!18 小时前
NAS还能玩游戏?部署一款 WebGL 3D 赛车小游戏
游戏·docker·容器·玩游戏
曦月合一18 小时前
本地电脑部署docker,及各种组件(nginx、mysql、redis、mongo、minio、java)
docker·windows10 专业版
hj28625119 小时前
Docker 核心知识点整理(网络 + Dockerfile + 原理 + 命令)
网络·docker·容器
梦想的颜色1 天前
【Docker原理】Docker 容器一文打尽:生命周期、环境管控、迁移备份、日志进程排查、垃圾清理
运维·docker·容器·容器生命周期·容器日志排查·容器迁移备份·容器进程管理
极客先躯1 天前
高级java每日一道面试题-2026年03月30日-实战篇[Docker]-如何监控容器的网络流量?
java·运维·docker·容器·prometheus·高级面试
大E帝国子民12 天前
Docker 部署 RocketMQ 5
docker·容器·rocketmq