Docker的那些事儿—Docker监控工具:cAdvisor

cAdvisor是Google用来监测单节点的资源信息的监控工具。虽然Docker提供了一些CLI(dockerps/top/stats等)的命令行的功能,但cAdvisor图形化的提供了一目了然的单节点多容器的资源监控功能。而且cAdvisor是免费的,cAdvisor作为一个很不错的工具,已经引起越来越多人的关注。

安装cAdvisor:

docker run -d -p 8080:8080 \

--volume=/:/rootfs:ro \

--volume=/var/run:/var/run:rw\

--volume=/sys:/sys:ro \

--volume=/var/lib/docker/:/var/lib/docker:ro\

--name=cadvisor \

google/cadvisor:latest

登录cAdvisor的UI界面:

在浏览器通过yourIp:8080就可以登录cAdvisor的UI界面。

cAdvisor实现了两个层次的监控:

1、主机,包括主机的Processes、CPU、Memory、Network、Filesystem

2、容器,包括容器的Processes、CPU、Memory、Network、Filesystem

点击Docker Containers进入Docker Containers页面

该页面列出了主机上运行的containers(docker ps)、docker信息(docker info)、pull到本地的images(docker images)

回到上一级页面,点击/docker进入/docker页面

进一步点击子容器链接,例如:/docker/a81a84acb650e52cb806f390daca8a80d8b77ca141dda40ebfb5801eb3a109b6进入具体的容器监控页面,我这里进入weavescope容器监控页面,我们看到了容器内Processes、CPU、Memory、Network、Filesystem实时的变化情况。

可见cAdvisor非常的简单,而且很好的从主机和容器两个层面实现了资源的监控,但也存在如下的局限性:

1、只能监控单主机,如果想监控多主机及其上的容器,需要在每台主机上部署cAdvisor。即便是这样Google的Kubernetes中也缺省地将其作为单节点的资源监控工具,各个节点缺省会被安装上cAdvisor。

2、监控的资源是实时的,并不能反映一段时间内的变化趋势。这是因为cAdvisor并不储存数据,如果配合第三方工具,例如InfluxDB、Grafana就可以达到理想的效果。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容