进程使用比容器本身更多的内存

Process using more memory then container itslef

会不会是容器内的进程使用了​​比容器本身更多的内存?

我有一个带有单个容器的 pod,基于 stackdriver 图,它在峰值时使用 1.6G 内存。 同时,我在容器上看到一个错误,在查看根本原因时,我在 VM 本身上看到了 oom-killer 消息,该消息表明容器内的一个进程因使用 2.2G 而被杀死。 (rss)

怎么可能?

Memory cgroup out of memory: Killed process 2076205 (chrome) total-vm:4718012kB, anon-rss:2190464kB, file-rss:102640kB, shmem-rss:0kB, UID:1001 pgtables:5196kB oom_score_adj:932

10 倍!

两张。首先,您在指标中看到的可能是工作集大小,它不包括缓冲区,而我认为 oom_killer 显示的 rss 包括缓冲区。但更重要的是,指标输出中的数据会被采样,通常每 30 秒采样一次。因此,如果内存使用量突然飙升,或者即使它只是试图分配一个巨大的缓冲区,它也会被杀死。