检查每个Docker容器使用的资源

时间:2015-07-01 05:46:45

标签: ubuntu docker ubuntu-14.04

如何检查(Ubuntu)服务器上运行的每个Docker容器使用的资源量(CPU,内存等)?

4 个答案:

答案 0 :(得分:5)

docker stats看到了文档

http://docs.docker.com/reference/commandline/stats/

例如你可以做

docker stats $(docker ps -q)

(将显示容器的ID或如果您想要名称,请参阅

Is there any way to display container names in docker stats?

,如果您对特定容器感兴趣,也可以docker top

http://docs.docker.com/reference/commandline/top/

答案 1 :(得分:2)

显示单个docker引擎或整个swarm集群上所有正在运行的容器的实时资源使用情况

docker stats $( docker ps --format '{{ .Names }}' )

示例输出

CONTAINER              CPU %               MEM USAGE / LIMIT     MEM %               NET I/O               BLOCK I/O           PIDS
dockercoins_webui_1    0.66%               19.23 MB / 16.72 GB   0.12%               309.8 kB / 605.8 kB   61.44 kB / 0 B      9
dockercoins_worker_1   4.01%               13.18 MB / 16.72 GB   0.08%               834.5 kB / 920.5 kB   98.3 kB / 0 B       1
dockercoins_rng_1      0.70%               19.03 MB / 16.72 GB   0.11%               412.8 kB / 441.7 kB   2.388 MB / 0 B      1
dockercoins_hasher_1   0.59%               19.67 MB / 16.72 GB   0.12%               477.6 kB / 372.7 kB   1.438 MB / 0 B      22
dockercoins_redis_1    0.18%               6.877 MB / 16.72 GB   0.04%               178.8 kB / 80.11 kB   5.771 MB / 0 B      3
web                    0.02%               11.06 MB / 16.72 GB   0.07%               87.19 kB / 648 B      0 B / 0 B           1
db                     0.01%               14.11 MB / 16.72 GB   0.08%               87.84 kB / 648 B      0 B / 9.851 MB      7

答案 2 :(得分:1)

您可以尝试使用docker-scout(不是免费的)或cAdvisor(Apache许可证)。

似乎比:

更好
  • 直接在主机上安装代理及其依赖项(作为容器更好)
  • 在每个容器中运行代理都很糟糕(很多开销)
  

cAdvisor(Container Advisor)为容器用户提供了对其运行容器的资源使用和性能特征的理解   它是一个运行守护程序,用于收集,聚合,处理和导出有关正在运行的容器的信息   具体来说,对于每个容器,它保留资源隔离参数,历史资源使用情况,完整历史资源使用情况的直方图和网络统计信息

sudo 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:latest

答案 3 :(得分:0)

我建议使用Google cAdvisor - cAdvisor监视Docker容器的资源使用情况和性能特征。它是免费的,并为您需要的每个容器提供所有资源使用统计信息。

如果要存储可视化,分析和容量规划的cAdvisor性能统计信息,可以使用ATSD。您可以可视化每个容器或每个主机的统计信息,还有多个主机和门户的统一门户,用于按角色/类型排序的自定义容器集。