官术网_书友最值得收藏!

cgroups

cgroups work by allowing the host to share and also limit the resources each process or container can consume. This is important for both resource utilization and security, as it prevents denial-of-service (DoS) attacks on the host's hardware resources. Several containers can share CPU and memory while staying within the predefined constraints. cgroups allow containers to provision access to memory, disk I/O, network, and CPU. You can also access devices (for example, /dev/foo). cgroups also power the soft and hard limits of container constraints that we'll discuss in later chapters.

There are seven major cgroups:

  • Memory cgroup: This keeps track of page access by the group, and can define limits for physical, kernel, and total memory.
  • Blkio cgroup: This tracks the I/O usage per group, across the read and write activity per block device. You can throttle by group per device, on operations versus bytes, and for reads versus writes.
  • CPU cgroup: This keeps track of user and system CPU time and usage per CPU. This allows you to set weights, but not limits.
  • Freezer cgroup: This is useful in batch management systems that are often stopping and starting tasks in order to schedule resources efficiently. The SIGSTOP signal is used to suspend a process, and the process is generally unaware that it is being suspended (or resumed, for that matter.)
  • CPUset cgroup: This allows you to pin a group to a specific CPU within a multi-core CPU architecture. You can pin by application, which will prevent it from moving between CPUs. This can improve the performance of your code by increasing the amount of local memory access or minimizing thread switching.
  • Net_cls/net_prio cgroup: This keeps tabs on the egress traffic class (net_cls)  or priority (net_prio) that is generated by the processes within the cgroup.
  • Devices cgroup: This controls what read/write permissions the group has on device nodes.
主站蜘蛛池模板: 赤城县| 海淀区| 方正县| 尼勒克县| 泗阳县| 响水县| 依兰县| 循化| 香河县| 交口县| 政和县| 泗洪县| 吉林市| 侯马市| 桂林市| 北辰区| 东阳市| 凭祥市| 新民市| 措美县| 封丘县| 商洛市| 鄂州市| 竹北市| 神农架林区| 高密市| 青神县| 临汾市| 奉化市| 镇原县| 饶阳县| 新巴尔虎左旗| 岑巩县| 家居| 固镇县| 北碚区| 保康县| 泗水县| 当涂县| 瓦房店市| 祁门县|