Docker学习系列2-Docker监控工具Cadvisor使用入门

1. Cadvisor简介

Cadvisor是谷歌用来分析运行中的 Docker 容器的资源占用以及性能特性的工具。Cadvisor作为一个运行中的守护进程,用来收集、聚合、处理和导出运行容器相关的信息,每个容器保持独立的参数、历史资源使用情况和完整的资源使用数据。当前支持lmctfy 容器和Docker 容器。

Cadvisor使用Go语言开发,利用Linux的cgroups获取容器的资源使用信息,并将信息通过web界面以可视化的方式呈现给用户。

2. Cadvisor安装

本文假设读者已经安装并配置好了Docker的运行环境,Docker daemon已经运行。如果要在Suse上安装Docker,请参考文章Docker学习系列1-Suse安装Docker来设置Docker运行环境。如果是其他Linux系统,请参考Docker官方文档进行安装配置。

第一步,在Docker Hub上搜索Cadvisor镜像

#docker search cadvisor

NAME                           DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED

google/cadvisor                Analyzes resource usage and performance ch...   108

第二步,从Docker Hub pull需要的镜像到本地宿主机

#docker pull google/cadvisor

3. Cadvisor运行

运行下面的命令启动Cadvisor

docker run --volume=/:/rootfs:ro --volume=/var/run:/var/run:rw --volume=/sys:/sys:ro --volume=/var/lib/docker/:/var/lib/docker:ro --publish=8080:8080 --detach=true --name=cadvisor google/cadvisor

该命令从google/cadvisor镜像运行容器cadvisor,各个参数含义:

run:Docker使用run子命令从指定的镜像运行一个容器

--volume:指定容器挂载的文件系统

--pulish:将容器内端口映射到宿主机端口,格式为 宿主机端口:容器内端口,这里使用的是8080端口,如果该端口被占用,修改为未被占用的端口即可

--detach:指定容器在后台运行

--name:命名要运行的容器为cadvisor

google/cadvisor:运行的镜像

 

4. Cadvisor使用

步骤3的docker run命令执行成功后,控制台会打印输出容器的ID。用户可以通过远程的浏览器访问cadvisor的web监控页面。打开浏览器,输入:http://Host_IP:8080,查看Cadvisor主页。


宿主机的CPU和内存信息

Docker学习系列2-Docker监控工具Cadvisor使用入门_第1张图片

宿主机的CPU使用情况


宿主机内存使用情况

Docker学习系列2-Docker监控工具Cadvisor使用入门_第2张图片

宿主机网络流量统计

Docker学习系列2-Docker监控工具Cadvisor使用入门_第3张图片

文件系统监控

Docker学习系列2-Docker监控工具Cadvisor使用入门_第4张图片

点击主页上方的Docker Containers,可以查看该宿主机上正在运行的所有容器

Docker学习系列2-Docker监控工具Cadvisor使用入门_第5张图片

点击对应的容器,可以查看该容器的资源使用情况。

5. 总结

Cadvisor部署方便,使用简单,是Docker容器监控的原生态工具。但Cadvisor只能进行单主机的Docker容器监控,而且,其数据是存储在内存中的实时数据,无法保留历史数据。接下来几篇文章会介绍Cadvisor与其他工具相结合,构建一个完整可用的Docker监控系统。敬请期待!

你可能感兴趣的:(Monitor,docker,容器,container,Cadvisor)