docker metrics位于不同的环境或版本的不同位置

时间:2014-09-03 08:13:49

标签: docker coreos

我需要收集像cpu,内存和I / O这样的docker指标,但我注意到在我的Ubuntu 14.04上,指标的位置与我的CoreOs系统中的位置不同:

例如:

ubuntu中的docker cpu指标位于:

/sys/fs/cgroup/cpuacct/docker/<dockerLongId>/cpuacct.stat

CoreOs的docker cpu指标位于:

/sys/fs/cgroup/cpuacct/system.slice/docker-<dockerLongId>.scope/cpuacct.stat

您是否了解支持这两种环境的最佳方式是什么?

1 个答案:

答案 0 :(得分:0)

这有很多问题。从CoreOS vs Ubuntu部分开始,这是因为在Ubuntu上没有使用系统切片。

man systemd.slice

最后,控制组可以配置。在任何给定时间,可以通过在不同cgroup之间移动PID来重新配置过程。本质上会有少量不可预测的行为。对于由各自的init系统启动的进程,这些模式应该是稳定的。

检测应使用哪种方法的最佳方法是阅读/etc/os-release。此文件的目的是提供一种稳定的方法,不仅可以确定发行版,还可以确定版本。