docker 是否像 VM 一样消耗 CPU?

Mov*_*ver 3 performance virtualization benchmarks docker telemetry

除了查看 docker stats 之外,我想知道 docker 如何消耗物理 CPU 或者它会在 CPU User、CPU System 和 CPU Guest 等统计信息之间进行分类吗?

我正在使用netdata收集指标。我正在研究不同类型的工作负载;这意味着只是一些可能包含 docker 映像的预打包代码,因为这是安装某些软件或此工作负载或相关代码的其他部分所依赖的数据库的地方。Nedata 会返回很多指标,例如,在系统级别的 CPU:您将拥有以下信息:

netdata.system.cpu.guest
netdata.system.cpu.guest_nice
netdata.system.cpu.idle
netdata.system.cpu.iowait
netdata.system.cpu.irq
netdata.system.cpu.nice
netdata.system.cpu.softirq
netdata.system.cpu.steal
netdata.system.cpu.system
netdata.system.cpu.user
Run Code Online (Sandbox Code Playgroud)

如果我正在处理 VM,我知道来宾操作系统的 cpu 刻度值将记录为netdata.system.cpu.guest;我想知道 docker 图像的记录位置。

我查看了 docker stat 并阅读了互联网上的文章,但似乎无法找到这些 cpu 值的记录位置。

这对我很重要,因为我正在尝试描述这些工作负载的特征,并且我想知道如果工作负载没有 docker 映像,我不应该过多关注特征描述

Byt*_*der 5

容器不是虚拟机。没有什么是虚拟化的,它只是作为主机上的隔离进程运行。甚至内核也是共享的。

因此,您可以从容器进程中观察到的 CPU 利用率与从主机进程中观察到的情况相同。