cAdvisor 简介
cAdvisor (Container Advisor) 让容器用户了解他们正在运行的容器的资源使用和性能特征。它是一个正在运行的守护进程,用于收集、聚合、处理和导出有关正在运行的容器的信息。具体来说,它为每个容器保存资源隔离参数、历史资源使用情况、完整历史资源使用情况的直方图和网络统计信息。此数据由容器和机器范围导出。
https://github.com/google/cadvisor
优势:
可以采集机器上所有运行的容器信息
提供了基础的查询界面和HTTP接口
轻松接入k8s、Prometheus
快速启用
在 Docker 容器中运行 cAdvisor
为了在您的机器上使用 Docker 快速试用 cAdvisor,我们提供了一个 Docker 映像,其中包含您开始使用所需的一切。您可以运行单个 cAdvisor 来监控整个机器。只需运行:
VERSION=v0.36.0 # use the latest release version from https://github.com/google/cadvisor/releases
sudo docker run \
--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 \
--privileged \
--device=/dev/kmsg \
gcr.io/cadvisor/cadvisor:$VERSION
cAdvisor 现在正在(在后台)在http://localhost:8080. 该设置包括具有 Docker 状态 cAdvisor 需要观察的目录。
记得 sudo docker pull gcr.io/cadvisor/cadvisor:v0.36.0
gcr被墙,可以使用google/cadvisor
做替代
图形界面:
总的说该工具的web界面功能较为简单,只能查看近一段时间的统计。需要接入普米。
容器监控的原理
Docker是基于Namespace、Cgroups和联合文件系统实现的
Cgroups不仅可以用于容器资源的限制,还可以提供容器的资源使用率。不管用什么监控方案,底层数据都来源于Cgroups
Cgroups的工作目录 /sys/fs/cgroup 下包含了Cgroups的所有内容。Cgroups包含了很多子系统,可以对CPU,内存,PID,磁盘IO等资源进行限制和监控。
查看 /sys/fs/cgroup 文件夹
drwxr-xr-x 15 root root 380 Aug 2 2021 ./
drwxr-xr-x 11 root root 0 Aug 2 2021 ../
dr-xr-xr-x 5 root root 0 Aug 2 2021 blkio/
lrwxrwxrwx 1 root root 11 Aug 2 2021 cpu -> cpu,cpuacct/
lrwxrwxrwx 1 root root 11 Aug 2 2021 cpuacct -> cpu,cpuacct/
dr-xr-xr-x 6 root root 0 Aug 2 2021 cpu,cpuacct/
dr-xr-xr-x 3 root root 0 Aug 2 2021 cpuset/
dr-xr-xr-x 5 root root 0 Aug 2 2021 devices/
dr-xr-xr-x 3 root root 0 Aug 2 2021 freezer/
dr-xr-xr-x 3 root root 0 Aug 2 2021 hugetlb/
dr-xr-xr-x 6 root root 0 Aug 2 2021 memory/
lrwxrwxrwx 1 root root 16 Aug 2 2021 net_cls -> net_cls,net_prio/
dr-xr-xr-x 3 root root 0 Aug 2 2021 net_cls,net_prio/
lrwxrwxrwx 1 root root 16 Aug 2 2021 net_prio -> net_cls,net_prio/
dr-xr-xr-x 3 root root 0 Aug 2 2021 perf_event/
dr-xr-xr-x 5 root root 0 Aug 2 2021 pids/
dr-xr-xr-x 2 root root 0 Aug 2 2021 rdma/
dr-xr-xr-x 6 root root 0 Aug 2 2021 systemd/
dr-xr-xr-x 5 root root 0 Aug 2 2021 unified/
版权声明
本文章由作者“衡于墨”创作,转载请注明出处,未经允许禁止用于商业用途
评论区#
还没有评论哦,期待您的评论!
引用发言