设为首页收藏本站language 语言切换
查看: 1326|回复: 9
收起左侧

[分享] 【SPOTO思博网络】【网工入门必看】运维基础—Cgroup

[复制链接]
发表于 2022-5-5 16:15:06 | 显示全部楼层 |阅读模式
本帖最后由 SPOTO 于 2022-7-21 11:41 编辑



容器=cgroup + namespace + rootfs + 容器引擎

Cgroup:资源控制

namespace:访问隔离

rootfs:文件系统隔离。镜像的本质就是一个rootfs文件

容器引擎:生命周期控制



Cgroup


Cgroup是Controlgroup 的简称,是Linux内核提供的一个特性,用于限制和隔离一组进程对系统资源的使用。对不同资源的具体管理是由各个子系统分工完成的。

1.png



Cgroup可以对进程进行任意分组,如何分组由用户自定义。



file:///C:/Users/SPOTO/AppData/Local/Temp/ksohtml14160/wps1.jpg

子系统介绍

01 cpuset 子系统


cpuset 可以为一组进程分配指定的CPU和内存节点。cpuset 一开始用在高性能计算上,在 NUMA(non-uniform memory access) 架构的服务器上,通过将进程绑定到固定的 CPU 和内存节点上,来避免进程在运行时因跨节点内存访问而导致的性能下降。


cpuset的主要接口如下:


cpuset.cpus: 允许进程使用的CPU列表


cpuset.mems:允许进程使用的内存节点列表



02 cpu 子系统


cpu 子系统用于限制进程的 CPU 利用率。具体支持三个功能:


第一,CPU 比重分配。使用 cpu.shares 接口。

第二,CPU 带宽限制。使用 cpu.cfs_period_us 和 cpu.cfs_quota_us 接口。

第三, 实时进程的 CPU 带宽限制。使用 cpu_rt_period_us 和 cpu_rt_quota_us 接口。


03 cpuacct 子系统


统计各个 Cgroup 的 CPU 使用情况,有如下接口:


cpuacct.stat: 报告这个 Cgroup 在用户态和内核态消耗的 CPU 时间,单位是 赫兹。


cpuacct.usage:报告该 Cgroup 消耗的总 CPU 时间。


cpuacct.usage_percpu:报告该 Cgroup 在每个 CPU 上的消耗时间。



04 memory 子系统


限制 Cgroup 所能使用的内存上限:



memory.limit_in_bytes:设定内存上限,单位字节。



默认情况下,如果使用的内存超过上限,Linux 内核会试图回收内存,如果这样仍无法将内存降到限制的范围内,就会触发 OOM,选择杀死该Cgroup 中的某个进程。



memory.memsw,limit_in_bytes: 设定内存加上交换内存区的总量。



memory.oom_control:如果设置为0,那么内存超过上限时,不会杀死进程,而是阻塞等待进程释放内存;同时系统会向用户态发送事件通知。


memory.stat: 报告内存使用信息。




05 blkio


限制 Cgroup 对 阻塞 IO 的使用:



blkio.weight: 设置权值,范围在[100, 1000],属于比重分配,不是绝对带宽。因此只有当不同 Cgroup 争用同一个 阻塞设备时才起作用


blkio.weight_device:对具体设备设置权值。它会覆盖上面的选项值。


blkio.throttle.read_bps_device: 对具体的设备,设置每秒读磁盘的带宽上限。


blkio.throttle.write_bps_device: 对具体的设备,设置每秒写磁盘的带宽上限。


blkio.throttle.read_iops_device: 对具体的设备,设置每秒读磁盘的IOPS带宽上限。


blkio.throttle.write_iops_device: 对具体的设备,设置每秒写磁盘的IOPS带宽上限。




06 devices 子系统


控制 Cgroup 的进程对哪些设备有访问权限:



devices.list: 只读文件,显示目前允许被访问的设备列表,文件格式为类型[a|b|c] 设备号[major:minor] 权限[r/w/m 的组合]a/b/c 表示 所有设备、块设备和字符设备。


devices.allow:只写文件,以上述格式描述允许相应设备的访问列表。


devices.deny:只写文件,以上述格式描述禁止相应设备的访问列表。

每天通过一位IE,每两位IE,一位在思博
群里有一群一起备考的战友哦
回贴可领取实验手册噢
游客,如果您要查看本帖隐藏内容请回复


——————————————————————————————————
HCIE/CCIE的提升空间有多少?看看群内聊天讨论就知道!


                               
登录/注册后可看大图


添加老杨老师微信:spotoa,加入全国网工交流群(已建立50+个),获取更多CCIE/HCIE考试一手资讯+考试必备资料,也欢迎添加
网工老杨老师微信:spotoa


                               
登录/注册后可看大图



【推荐阅读】
 楼主| 发表于 2022-5-17 11:24:38 | 显示全部楼层
有问题可咨询微信:spotoa
5# 2022-5-17 11:24:38 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2022-5-17 16:35:27 | 显示全部楼层
非常有用!感谢大佬分享啊啊啊
6# 2022-5-17 16:35:27 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-25 14:01:34 | 显示全部楼层
有问题请咨询微信:spotoa
7# 2022-5-25 14:01:34 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-31 11:46:16 | 显示全部楼层
有问题请咨询微信:spotoa
9# 2022-5-31 11:46:16 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-6-21 09:59:37 | 显示全部楼层
本帖最后由 SPOTO 于 2022-7-21 11:42 编辑

如果你有以下需求:
1. 有需要思科/华为考证【稳定题库】
2. 想要进入全国网工交流群,和更多同伴连接
3. 对网工生涯迷茫,想要有大佬可以指点迷津~

欢迎扫描下方二维码,加老杨老师的微信,作为CCIE+9年网工,他对行业的了解可谓是颇深。围观他的朋友圈,能学习到的技术和视野远远超过你的想象,欢迎扫码加v!!!


                               
登录/注册后可看大图
10# 2022-6-21 09:59:37 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-2-2 10:47 , Processed in 0.067371 second(s), 13 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表