26.2. 内核资源控制器简介


内核资源控制器启用控制组的功能。RHEL 10 支持用于 控制组版本 1 (cgroups-v1)和 控制组版本 2 (cgroups-v2)的各种控制器。

资源控制器也称为控制组子系统,是一个代表单一资源的内核子系统,如 CPU 时间、内存、网络带宽或磁盘 I/O。Linux 内核提供由 systemd 服务管理器自动挂载的一系列资源控制器。

您可以在 /proc/cgroups 文件中找到当前挂载的资源控制器的列表。

可用于 cgroups-v1的控制器
  • blkio :设置对块设备的输入/输出访问的限制。
  • CPU :调整控制组任务的默认调度程序的参数。cpu 控制器与 cpuacct 控制器一起挂载在同一挂载上。
  • cpuacct :创建控制组中任务使用的 CPU 资源自动报告。cpuacct 控制器与 cpu 控制器一起挂载在同一挂载上。
  • cpuset:Restricts 控制组任务仅在指定 CPU 子集上运行,并指示任务仅在指定的内存节点上使用内存。
  • 设备 :控制对控制组中任务的访问。
  • freezer :暂停或恢复控制组中的任务。
  • Memory :设置控制组中任务的 内存使用 限制,并针对这些任务使用的内存资源生成自动报告。
  • net_cls :使用类标识符(classid)标记网络数据包,使 Linux 流量控制器( tc 命令)能够识别源自特定控制组任务的数据包。net_cls 子系统 net_filter (iptables) 也可使用此标签对此类数据包执行操作。
  • net_filter :使用防火墙标识符(fwid)标记网络套接字,允许 Linux 防火墙识别源自特定控制组任务的数据包(通过使用 iptables 命令)。
  • net_prio :设置网络流量的优先级。
  • PIDs :为控制组群中的多个进程及其子进程设置限值。
  • perf_event :通过 perf 性能监控和报告工具对任务进行分组。
  • RDMA :设置控制组群中的 Remote Direct Memory Access/InfiniBand 特定资源的限制。
  • HugeTLB :根据控制组群中的任务限制大量虚拟内存页面的使用。
可用于 cgroups-v2的控制器
  • io :设置对块设备的输入/输出访问的限制。
  • Memory :设置控制组中任务的 内存使用 限制,并针对这些任务使用的内存资源生成自动报告。
  • PIDs :为控制组群中的多个进程及其子进程设置限值。
  • RDMA :设置控制组群中的 Remote Direct Memory Access/InfiniBand 特定资源的限制。
  • CPU:调整控制组任务的默认调度程序的参数,并创建控制组中任务使用的 CPU 资源自动报告。
  • cpuset: 限制控制组任务仅在指定 CPU 子集上运行,并指示任务仅在指定的内存节点上使用内存。仅支持具有新分区功能的核心功能(cpus{,.effective}, mems{,.effective})。
  • perf_event :通过 perf 性能监控和报告工具对任务进行分组。perf_event 在 v2 层次结构上自动启用。
重要

资源控制器可以在 cgroups-v1 层次结构或 cgroups-v2 层次结构中使用,不能同时在两者中使用。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部