Linux cgroups: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
(Created page with "=Internal= * Docker Concepts")
 
No edit summary
Line 1: Line 1:
=External=
* https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/resource_management_guide/ch01
=Internal=
=Internal=


* [[Docker Concepts#cgroups|Docker Concepts]]
* [[Docker Concepts#cgroups|Docker Concepts]]
=Overview=
cgroups is a Linux kernel feature that allows allocation of resources (CPU, system memory, network bandwidth, or a combination of these) among user-defined groups of processes running on the system. cgroups can be configured via the cgconfig service.
cgroups are organized hierarchically, child cgroups inheriting certain attributes from their parent group. Many different hierarchies of cgroups can exist simultaneously on a system. Each hierarchy is attached to one or more subsystem, where a subsystem represents a single resource like CPU time or memory.
=cgroups Subsystems=
* blkio - sets limits on input/output access from and to block devices.
* cpu - uses the scheduler to provide cgroup tasks access to the CPU.
* cpuacct - generates automatic reports on CPU resources.
* cpuset - assigns individual CPUs and memory nodes to tasks in a cgroup.
* devices
* freezer
* memory
* net_cls - tags network packets with a tag identifier (classid) that allow the Linux traffic controller (tc) to identify packets.
* net_prio
* ns - the namespace subsystem
* perf_event

Revision as of 21:47, 16 January 2018

External

Internal

Overview

cgroups is a Linux kernel feature that allows allocation of resources (CPU, system memory, network bandwidth, or a combination of these) among user-defined groups of processes running on the system. cgroups can be configured via the cgconfig service.

cgroups are organized hierarchically, child cgroups inheriting certain attributes from their parent group. Many different hierarchies of cgroups can exist simultaneously on a system. Each hierarchy is attached to one or more subsystem, where a subsystem represents a single resource like CPU time or memory.

cgroups Subsystems

  • blkio - sets limits on input/output access from and to block devices.
  • cpu - uses the scheduler to provide cgroup tasks access to the CPU.
  • cpuacct - generates automatic reports on CPU resources.
  • cpuset - assigns individual CPUs and memory nodes to tasks in a cgroup.
  • devices
  • freezer
  • memory
  • net_cls - tags network packets with a tag identifier (classid) that allow the Linux traffic controller (tc) to identify packets.
  • net_prio
  • ns - the namespace subsystem
  • perf_event