我需要在每个用户的基础上限制大量进程的 CPU、内存和网络带宽使用。用户实际上只是几个守护进程的逻辑分组,而不是真正的人类。因此,不同的用户具有相似(但不一定相同)的运行进程集。
不幸的是,我什至不是经验丰富的 Linux 用户,所以我不知道如何获得它。你能指出实现这一目标的可能方法吗?
我需要在每个用户的基础上限制大量进程的 CPU、内存和网络带宽使用。用户实际上只是几个守护进程的逻辑分组,而不是真正的人类。因此,不同的用户具有相似(但不一定相同)的运行进程集。
不幸的是,我什至不是经验丰富的 Linux 用户,所以我不知道如何获得它。你能指出实现这一目标的可能方法吗?
可插入身份验证模块 (PAM) 限制将允许您在每次登录的基础上应用许多这些配额限制:http: //www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/sag-pam_limits .html和Linux 管理员指南
老实说,问题很大,其他人的回答会比我好得多,但您可以从“man setrlimit”开始。
ulimit
可以完成大部分工作,尽管是以某种低级的方式。您可以iptables
用于网络限制。使用虚拟化。然后你可以非常严格,如果他们愿意,他们可以成为他们自己的虚拟机的根。
如果您正在运行 RedHat 或 CentOS 之类的克隆,您可以进行编辑
/etc/security/limits.conf
以限制每个用户或每个组的资源。在其他发行版上,此配置文件可能位于其他地方。