当前位置:首页 > 编程笔记 > 正文
已解决

Cgroups定义及验证

来自网友在路上 163863提问 提问时间:2023-11-04 15:09:08阅读次数: 63

最佳答案 问答题库638位专家为你答疑解惑

sudo lsb_release -a可以看到操作系统版本是20.04sudo uname -r可以看到内核版本是5.4.0-156-generic
在这里插入图片描述

Linux Cgroups 的全称是 Linux Control Group。它最主要的作用,就是限制一个进程组能够使用的资源上限,包括 CPU、内存、磁盘、网络带宽等等。

sudo mount -t cgroup展示Cgroups给用户暴露出来的操作接口等文件系统。
在这里插入图片描述

ls /sys/fs/cgroup/cpu 看一下CPU 子系统中配置文件。
在这里插入图片描述

我们可以使用底下的方法来使用上边子系统的配置文件:
cd /sys/fs/cgroup/cpu进入特定的目录,然后使用mkdir container创建一个新目录。
在这里插入图片描述

container这样的目录称为一个控制组,操作系统会在你新创建的 container 目录下,自动生成该子系统对应的资源限制文件,ls container/显示了生成的各种文件,如下图。
在这里插入图片描述

cd container/进入特定的目录。
while : ; do : ; done &后台执行while脚本开始进行吃内存。
在这里插入图片描述

q退出top

sudo cat /sys/fs/cgroup/cpu/container/cpu.cfs_quota_us
sudo cat /sys/fs/cgroup/cpu/container/cpu.cfs_period_us

显示对应配置值。

在这里插入图片描述

sudo echo 20000 > /sys/fs/cgroup/cpu/container/cpu.cfs_quota_us把20000写入cpu.cfs_quota_us中。
在这里插入图片描述

sudo echo 28435 > /sys/fs/cgroup/cpu/container/tasks把PID——28435写入到tasks中。
在这里插入图片描述

这里的PID——28435是上边执行while语句产生的。
在这里插入图片描述

再使用top看一下,28435的CPU使用率下降到20%左右。
在这里插入图片描述

q退出top

sudo kill -9 28435把进程杀死。
在这里插入图片描述

此文章为11月Day 3学习笔记,内容来源于极客时间《深入剖析 Kubernetes》。

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"Cgroups定义及验证":http://eshow365.cn/6-31912-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!