文章目录
一、前言
本系列是根据 B 站 尚硅谷 Docker 视频 学习记录笔记。因为没有视频课件,部分内容摘自 https://www.yuque.com/tmfl/cloud/dketq0。
本系列仅为自身学习笔记记录使用,记录存在偏差,推荐阅读原视频内容或本文参考笔记。
系列文章:
【Docker笔记01】【基础内容】
【Docker笔记02】【常用软件安装】
【Docker笔记03】【MySQL 与 Redis的主从安装】
【Docker笔记04】【Dockerfile】
【Docker笔记05】【网络模式】
【Docker笔记06】【容器编排】
【Docker笔记07】【容器监控】
二、轻量级监控工具 Portaniner
Portaniner 是一款轻量级可视化工具,用于管理和监控 Docker 环境。Portainer分为开源社区版(CE版)和商用版(BE版/EE版)。
Portainer 本身也是一个镜像, 通过如下命令即可安装。
# 旧版镜像地址为portainer/portainer,从2022年1月标记为过期
# 新版镜像地址为portainer/portainer-ce
# --restart=always 如果Docker引擎重启了,那么这个容器实例也会在Docker引擎重启后重启,类似开机自启
# 9443 端口映射的是 https 协议,9000 端口映射的是 http 协议,即可以通过 https://xxx.xxx.xxx.xxx:9443 或 http://xxx.xxx.xxx.xxx:9000 来访问 portainer
[root@192 spring-demo]# docker run -d -p 9443:9443 -p 8000:8000 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:2.13.0-alpine
Unable to find image 'portainer/portainer-ce:2.13.0-alpine' locally
2.13.0-alpine: Pulling from portainer/portainer-ce
df9b9388f04a: Pull complete
df8362a36bd7: Pull complete
Digest: sha256:18adcd23f746ded2f642a04153227423336aa22ad99880ef5e8265af243eeb79
Status: Downloaded newer image for portainer/portainer-ce:2.13.0-alpine
af0e157bc8ba633a6e7b179cfe7fac922eed75ec2a9900da18ab27765380cfa2
通过 https://xxx.xxx.xxx.xxx:9443 或 http://xxx.xxx.xxx.xxx:9000 可以进入 portainer 内部通过页面查看 Docker 各项信息,如:包括其中的镜像(images)、容器(containers)、网络(networks)、容器卷(volumes)、compose编排(stacks)
三、重量级监控工具 CIG
1. CIG 简介
通过docker stats 命令可以很方便的查看当前宿主机上所有容器的CPU、内存、网络流量等数据,可以满足一些小型应用。如下:
但是 docker stats 统计结果只能是当前宿主机的全部容器,数据资料是实时的,没有地方存储、没有健康指标过线预警等功能。
CAdvisor(监控收集) + InfluxDB(存储数据) + Granfana(展示图表),合称 CIG。
1.1 CAdvisor
CAdvisor是一个容器资源监控工具,包括容器的内存、CPU、网络IO、磁盘IO等监控,同时提供了一个Web页面用于查看容器的实时运行状态。
CAdvisor默认存储2分钟的数据,而且只是针对单物理机。不过CAdvisor提供了很多数据集成接口,支持 InfluxDB、Redis、Kafka、Elasticsearch等集成,可以加上对应配置将监控数据发往这些数据库存储起来。
CAdvisor主要功能:
- 展示Host和容器两个层次的监控数据
- 展示历史变化数据