linux如何限制每个进程的网速?

linux如何限制每个进程的网速?,第1张

1、用 iptables 的 owner 模块,给 --pid-owner 加上 MARK,然后 tc 里针对这个 MARK 做限速 现在的服务器上,基本已经普及了 SMP ,更进一步的,内核已经在自动发现支持 SMP 的时候,在 iptables 里把 owner 模块的 pid/cmd/sid 三个 match 都去掉了!现在的 owner 里只有 uid/gid 两个。所以这条路,在生产环境上基本行不通。所以推荐下面的两种方法:2、使用 pipeviewer和 trickle这两个工具。trickle 是在BSD 上诞生的项目,这个工具使用ELF 的 preloader 机制,在命令执行的时候替换掉标准库中的 socket recv()() 和 send() 部分,达到限速的效3、cgroup ,它有 net_cls 控制器。不过和其他控制器不太一样的是它不直接控制网络读写,只是给网络包打上一个标记,然后把专业的事情交给专业的 TC 去做。嗯,思路和原先的 iptable 是很类似的。

这个可以通过修改 vi /etc/security/limits.conf 文件来设定:

# vi /etc/security/limits.conf

vpsee hard nproc 32

@student hard nproc 32

@faculty hard nproc 64

上面的配置文件意思是说限制 vpsee 这个用户只能 fork 32 个进程;然后限制 student 这个用户组的每个成员最多能

fork 32 个进程;限制 faculty 这个用户组的每个成员最多能 fork 64 个进程。不过要事先检查系统是否有

pam_limits.so 这个模块以及是否已经加载:

# ls /lib64/security/pam_limits.so

/lib64/security/pam_limits.so

# vi /etc/pam.d/login

session required pam_loginuid.so

如果自己是 Linux 普通用户,不是 root 用户不能修改 limits.conf 和重启系统的话,可以用 ulimit

来临时限制自己允许创建的进程数,ulimit 有 Hard 和 Soft 两种方法限制,用 Hard

的话可以减少最大可用的进程数,但是就不能重新增大这个限制了;用 Soft 的话可以自己自由增大和减小限制(ulimit,-H 和 -S

的详细说明可以参看 man ulimit)。不同的 Linux 版本对这个 ulimit -u 的默认值不同,在 CentOS

上默认情况下最大运行进程数是 8256,在 Fedora 上是

1024,所以这个要看不同的发行版本,不过这个无所谓,反正可以改,不过改成32后就不能再改成比32更大的了(比如64),只能再改成比32小

的,ulimit 不带 -H 和 -S 参数的时候同时设置 Hard 和 Soft:

$ ulimit -u

8256

$ ulimit -u 32

$ ulimit -u 64

-bash: ulimit: max user processes: cannot modify limit: Operation not permitted

$ ulimit -a

core file size (blocks, -c) 0

data seg size (kbytes, -d) unlimited

scheduling priority (-e) 0

file size (blocks, -f) unlimited

pending signals (-i) 8256

max locked memory (kbytes, -l) 32

max memory size (kbytes, -m) unlimited

open files (-n) 1024

pipe size (512 bytes, -p) 8

POSIX message queues (bytes, -q) 819200

real-time priority (-r) 0

stack size (kbytes, -s) 10240

cpu time (seconds, -t) unlimited

max user processes (-u) 32

virtual memory (kbytes, -v) unlimited

file locks (-x) unlimited


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8350327.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-15
下一篇2023-04-15

发表评论

登录后才能评论

评论列表(0条)

    保存