这回说说怎样通过cgroups来管理cpu资源。先说控制进程的cpu使用。在一个机器上运行多个可能消耗大量资源的程序时,我们不希望出现某个程序占据了所有的资源,导致其他程序无法正常运行,或者造成系统假死无法维护。这时候用cgroups就可以很好地控制进程的资源占用。这里单说cpu资源。
cgroups里,可以用cpu.cfs_period_us和cpu.cfs_quota_us来限制该组中的所有进程在单位时间里可以使用的cpu时间。这里的cfs是完全公平调度器的缩写。cpu.cfs_period_us就是时间周期,默认为100000,即百毫秒。cpu.cfs_quota_us就是在这期间内可使用的cpu时间,默认-1,即无限制。
跑一个耗cpu的程序
复制代码