我们有一个NFS挂载和一个PBS群集,其中所有节点都挂载这个NFS挂载点。
我们正在经历一个PBS群集节点上的单个进程可以完全饱和并阻塞该节点上的NFS挂载。 这是一个很大的问题,因为PBS通常会在同一个节点上安排多个任务,这些任务只能指定CPU和内存约束,但是PBS似乎并不关心IO约束。 这意味着一个可能不需要太多CPU和内存的单个IO绑定作业可能会导致整个节点不可用,至less在NFS挂载方面是如此。
我可以通过在节点上运行以下命令来重现此问题:
cat /nfsmount/verylargefile.txt > /dev/null
这将基本上阻止该节点上的任何其他进程访问NFS挂载。 即使做一个简单的“ls / nfsmount”将永远。 请注意,相同NFS挂载点的性能在其他节点上不受影响,因此这似乎是客户端问题。
有没有人有这种行为的经验? 我应该寻找哪些陷阱? 如果有多个进程访问它,以防止这种types的资源被一个进程占用,那么我会认为必须有一些逻辑来尝试分配NFS装载的“带宽”。
我们的PBS集群正在运行RedHat 6.5,但是我在Ubuntu 14.04工作站上也重现了这一点。