内存不足的 NFS 服务器

rma*_*mah 2 linux ubuntu nfs home-directory oom

我有多台机器通过 6-10 个用户使用的 NFS 共享共享主目录。所有机器都用于运行计算实验,包括带有 NFS 服务器的机器。虽然这种情况非常罕见,但有可能某些实验可能会导致内存不足 (OOM) 问题。虽然用户进程可能会在某个时间点被杀死,但我想知道它如何影响 NFS 服务器从而反过来影响其他机器。我尝试搜索它,但找不到具体的答案。还有我可以采取什么措施来避免 OOM 影响 NFS 共享?

NFS 服务器配置:Intel Core i7-9700、32 GB RAM、SWAP 32 GB 和 Graphics TITAN RTX 其他机器也有类似的配置。

Mir*_*ici 8

我会使用ulimit或使用cgroups来限制进程内存。您需要限制 RSS 和共享内存。另一种方法是在容器或虚拟机中运行它。

可能最简单的方法是使用容器:docker、podman、LXC ...


Mic*_*ton 5

默认情况下,当 Linux 内存不足时,它使用启发式方法来决定杀死哪些进程以恢复足够的内存以继续。但是,这通常是不希望的。在许多情况下(可能包括这种情况),最好终止导致内存不足情况的进程。

您可以设置vm.oom_kill_allocating_tasksysctl 以导致 OOM 杀手杀死使系统内存不足的进程。

  • “引起条件”比“最大进程”更随机,即这与 OP 需要的正好相反,因为如果实验获得了最后一个空闲页面,那么 NFS 服务器所做的任何分配都会杀死 NFS 服务器。 (2认同)