Cgroup變化分析(2.6.34~3.10)

Cgroup變化分析

                                                                                                                 

1      子系統

2.6.34

3.10

說明

Cpuset

Cpuset

 

Ns

 

掛載ns cgroup後,可以在創建新命名空間時自動創建新的cgroup,後來取消該子系統,cgroup和namespace解耦合。

Cpu

Cpu

 

Cpuacct

Cpuacct

 

Memory

Memory

 

Device

Device

 

Freezer

Freezer

 

Net_cls

Net_cls

 

Blkio

Blkio

 

 

Perf_event

通過perf record -G name或者perf record --cgroup name,就可以profile那個cgroup的所有進程。

 

Net_prio

用戶設置網絡接口優先級的cgroup

 

Hugetlb

實現cgroup對hugetlb的支持,可以限制cgroup中進程對hugetlb的使用量。

 

2      接口文件

標紅的爲新增的可配置接口文件

2.6.34

3.10

說明

blkio.sectors

blkio.time

blkio.weight

blkio.avg_queue_size

blkio.dequeue

blkio.empty_time

blkio.group_wait_time

blkio.idle_time

blkio.io_merged

blkio.io_merged_recursive

blkio.io_queued

blkio.io_queued_recursive

blkio.io_service_bytes

blkio.io_service_bytes_recursive

blkio.io_serviced

blkio.io_serviced_recursive

blkio.io_service_time

blkio.io_service_time_recursive

blkio.io_wait_time

blkio.io_wait_time_recursive

blkio.leaf_weight

blkio.leaf_weight_device

blkio.reset_stats

blkio.sectors

blkio.sectors_recursive

blkio.throttle.io_service_bytes

blkio.throttle.io_serviced

blkio.throttle.read_bps_device

blkio.throttle.read_iops_device

blkio.throttle.write_bps_device

blkio.throttle.write_iops_device

blkio.time

blkio.time_recursive

blkio.unaccounted_time

blkio.weight

blkio.weight_device

2.6.34內核只能簡單的設置權重,3.10上增加了一些功能,比如對cgroup中具體的設備的設置、對設備讀寫帶寬和次數的限制等,也增加了更多設備讀寫相關信息的展示。

cgroup.event_control

cgroup.procs

cgroup.clone_children

cgroup.event_control

cgroup.procs

cgroup.sane_behavior

新增了clone_children的配置,可以讓新建的cpuset子系統拷貝父cgroup的cpuset配置。

cpuacct.stat

cpuacct.usage

cpuacct.usage_percpu

cpuacct.stat

cpuacct.usage

cpuacct.usage_percpu

 

cpu.rt_period_us

cpu.rt_runtime_us

cpu.shares

cpu.cfs_period_us

cpu.cfs_quota_us

cpu.rt_period_us

cpu.rt_runtime_us

cpu.shares

cpu.stat

3.10增加了對cfs調度的cpu時間管理的支持;增加了cpu運行的統計信息;

cpuset.cpu_exclusive

cpuset.cpus

cpuset.mem_exclusive

cpuset.mem_hardwall

cpuset.memory_migrate

cpuset.memory_pressure

cpuset.memory_pressure_enabled

cpuset.memory_spread_page

cpuset.memory_spread_slab

cpuset.mems

cpuset.sched_load_balance

cpuset.sched_relax_domain_level

cpuset.cpu_exclusive

cpuset.cpus

cpuset.mem_exclusive

cpuset.mem_hardwall

cpuset.memory_migrate

cpuset.memory_pressure

cpuset.memory_pressure_enabled

cpuset.memory_spread_page

cpuset.memory_spread_slab

cpuset.mems

cpuset.sched_load_balance

cpuset.sched_relax_domain_level

 

devices.allow

devices.deny

devices.list

devices.allow

devices.deny

devices.list

 

 

hugetlb.2MB.failcnt

hugetlb.2MB.limit_in_bytes

hugetlb.2MB.max_usage_in_bytes

hugetlb.2MB.usage_in_bytes

3.10增加了對hugetlb的使用限制(這裏的2M是設置的hugetlb大小)

memory.failcnt

memory.force_empty

memory.limit_in_bytes

memory.max_usage_in_bytes

memory.memsw.failcnt

memory.memsw.limit_in_bytes

memory.memsw.max_usage_in_bytes

memory.memsw.usage_in_bytes

memory.move_charge_at_immigrate

memory.soft_limit_in_bytes

memory.stat

memory.swappiness

memory.usage_in_bytes

memory.use_hierarchy

memory.failcnt

memory.force_empty

memory.kmem.failcnt

memory.kmem.limit_in_bytes

memory.kmem.max_usage_in_bytes

memory.kmem.slabinfo

memory.kmem.tcp.failcnt

memory.kmem.tcp.limit_in_bytes

memory.kmem.tcp.max_usage_in_bytes

memory.kmem.tcp.usage_in_bytes

memory.kmem.usage_in_bytes

memory.limit_in_bytes

memory.max_usage_in_bytes

memory.memsw.failcnt

memory.memsw.limit_in_bytes

memory.memsw.max_usage_in_bytes

memory.memsw.usage_in_bytes

memory.move_charge_at_immigrate

memory.numa_stat

memory.oom_control

memory.pressure_level

memory.soft_limit_in_bytes

memory.stat

memory.swappiness

memory.usage_in_bytes

memory.use_hierarchy

3.10增加了kmem的支持,可以設置內核內存的使用量;增加了對numa信息的顯示;增加了對cgroup oom和內存使用壓力的監控;

net_cls.classid

net_cls.classid

 

 

net_prio.ifpriomap

net_prio.prioidx

增加了對網絡接口優先級的設置;

notify_on_release

release_agent

tasks

notify_on_release

release_agent

tasks

 

(一些相同的接口文件也有一些變化,比如增加了一些信息的顯示,如memory.stat;另外,對一些子系統如freeze增加的hierarchy的支持,這些變化對用戶影響不大,這裏不詳細展開列舉。)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章