如何更改 Redhat 9 或 Amazon Linux 2 中的 cgroup 内存限制?

如何更改 Redhat 9 或 Amazon Linux 2 中的 cgroup 内存限制?

我有一个 docker 容器,需要 16GB RAM 才能运行,再加上它启动的一些进程的一些额外内存。机器上的内存消耗似乎达到总内存 (64GB) 的 60-70%。然而,cgroup此时似乎正在终止该进程:

Memory cgroup out of memory: Killed process 2552559 (wi) total-vm:75308048kB, anon-rss:16499856kB, file-rss:2192kB,shmem-rss:83876kB, UID:0 pgtables:36892kB oom_score_adj:0

我还没有对 进行任何配置cgroups,所以我不知道它从哪里获取默认值以及如何修改它们。知道如何增加这些内存限制或将它们全部废弃吗?

尝试查看各种来源,但我找不到任何地方设置的内存限制。

答案1

不负责任的答案是按照https://docs.docker.com/config/containers/resource_constraints/设置--oom-kill-disable在容器上。

负责任的答案是深入研究并找出为什么您的 docker 消耗的内存比预期需要的多,然后调整 docker 文件以反映实际需求,或者修复 docker 实例内运行的应用程序以减少内存消耗。

相关内容