我想将容器限制为系统总 CPU 带宽的 25%。
这是我的设置:
/sys/fs/cgroup/cpu/lxc/foo/cpu.cfs_quota_us = 400000/sys/fs/cgroup/cpu/lxc/foo/cpu.cfs_period_us = 100000/sys/fs/cgroup/cpuset/lxc/foo/cpuset.cpus = 0-15我使用这个公式计算了配额:
(# of cpus available to container) * (cpu.cfs_period_us) * (.25) so 16 * 100000 * .25 = 400000
Run Code Online (Sandbox Code Playgroud)
我同时在容器内部和外部运行了一个基本的stress-ng,以衡量每秒允许内部和外部的操作次数,结果与以“-1”的配额运行时基本相同,也就是说没有配额。
外跑:
$ ./stress-ng --cpu-load 50 -c 40 --timeout 20s --metrics-brief
stress-ng: info: [25649] dispatching hogs: 40 cpu
stress-ng: info: [25649] successful run completed in 20.44s
stress-ng: info: [25649] stressor bogo …Run Code Online (Sandbox Code Playgroud)