27. Cgroups, 深入了解Kubernetes 的资源管理

本文探讨了 Cgroups 在 Kubernetes 中的角色,如何管理节点资源,以及如何设置 Pod 的资源请求和限制。Cgroups 是 Linux 内核功能,负责分配和监控资源,同时也是容器的基础。Kubernetes 使用 Cgroups 将 Pod 分配到不同 QoS 类别的 cgroups,通过 cgroupfs 文件系统中的文件来控制资源使用。了解 Cgroups 工作原理对于调试和利用高级功能如 Memory QoS、容器感知 OOM 杀手等至关重要。
摘要由CSDN通过智能技术生成

注意:这是中文翻译稿,借助星火大模型直接翻译。参考价值还是有的,所以翻译出来供参考。

在本文中,我们将深入探讨 cgroups 是什么、Kubernetes 如何使用它们来管理 Node 资源,以及我们如何在 Pod 上设置资源请求和限制之外利用它们。

什么是Cgroups

首先是最重要的 - Cgroups 到底是什么? - Cgroups,或简称为 cgroups,是 Linux 内核的一个功能,负责资源分配(CPU 时间、内存、网络带宽、I/O)、优先级和计费(即容器使用了多少)。此外,除了是 Linux 的基本功能之外,Cgroups 还是容器的基础构建块,因此没有 Cgroups 就不会有容器。

正如其名称所示 - Cgroups 是组,所以它们将进程分组在父-子层次结构中,形成一棵树。例如,如果一个父级 cgroup 被分配了 128Mi 的 RAM,那么其所有子进程的总 RAM 使用量不能超过 128Mi。

这个层次结构存在于 /sys/fs/cgroup/ 目录下,它是 cgroupfs 文件系统。在那里你可以找到所有 Linux 进程的子树。在这里我们关注的是 Cgroups 如何影响调度以及分配给我们的 Kubernetes Pods 的资源,因此我们关心的是 kubepods.slice/:


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiaodeshi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值