我们想监控docker容器的指标参数,如CPU、网络、内存等。我们正在关注https://docs.docker.com/articles/runmetrics/并且发现默认情况下未启用监控度量。
cat /proc/cgroups
#subsys_name hierarchy num_cgroups enabled
cpuset 1 7 1
cpu 2 7 1
cpuacct 3 7 1
memory 4 7 1
devices 5 7 1
根据留档,我们必须通过设置内核参数来启用监控。
内存指标:内存. stat
内存指标位于“内存”c组中。请注意,内存控制组会增加一些开销,因为它对主机上的内存使用情况进行了非常精细的核算。因此,许多发行版选择默认情况下不启用它。通常,要启用它,您所要做的就是添加一些内核命令行参数: cgroup_enable=内存交换帐户=1
任何人都知道如何在docker容器(Dockerfile或docker-compose.yml)中设置内核参数。
提前谢谢。
如果您的内核支持< code>cgroup_enable,您应该在引导时添加它,例如在Ubuntu机器上:
编辑 /etc/default/grub
。
更新GRUB_CMDLINE_LINUX
:
GRUB_CMDLINE_LINUX="cgroup_enable=内存"
然后运行 sudo update-grub
并重新启动
如果您使用的是 CoreOS,它已经可用。