【发布时间】:2019-04-11 18:13:44
【问题描述】:
我正在使用 os.cpus() 来监控容器实例中的 node.js 应用程序,但想知道使用情况是指实例的 CPU 还是 docker 主机?
【问题讨论】:
-
如果你能展示你到目前为止的工作会更有帮助。
我正在使用 os.cpus() 来监控容器实例中的 node.js 应用程序,但想知道使用情况是指实例的 CPU 还是 docker 主机?
【问题讨论】:
对于 docker 容器,容器内部或外部的 CPU/内存之间没有硬性区别,就像虚拟机一样。基本上,所有容器共享相同的内核,并且没有用于 CPU 或内存的命名空间导致容器以不同的方式看待它们。因此,os.cpus() 显示了主机系统的使用信息,包括所有工作负载。要查看容器的使用信息,您可以在主机系统上使用 docker stats 命令。对于 Node.js,请查看 systeminformation 包,该包还提供 docker 容器的使用信息。但是,这只有在主机上(而不是在容器内)运行时才可用!
另见:https://docs.docker.com/engine/reference/commandline/stats/
【讨论】: