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基本架构部署完毕

相关推荐
铁锤妹妹头发多1 小时前
新手用docker真**难受
运维·docker·容器
南猿北者11 小时前
docker容器
docker·容器
二十雨辰11 小时前
[linux]docker基础
linux·运维·docker
time never ceases11 小时前
使用docker方式进行Oracle数据库的物理迁移(helowin/oracle_11g)
数据库·docker·oracle
MonkeyKing_sunyuhua13 小时前
ubuntu22.04 docker-compose安装postgresql数据库
数据库·docker·postgresql
追风林14 小时前
mac m1 docker本地部署canal 监听mysql的binglog日志
java·docker·mac
€☞扫地僧☜€15 小时前
docker 拉取MySQL8.0镜像以及安装
运维·数据库·docker·容器
茶馆大橘15 小时前
微服务系列六:分布式事务与seata
分布式·docker·微服务·nacos·seata·springcloud
全能全知者16 小时前
docker快速安装与配置mongoDB
mongodb·docker·容器
阿尔帕兹18 小时前
构建 HTTP 服务端与 Docker 镜像:从开发到测试
网络协议·http·docker