首页>软件资讯>常见问题

常见问题

RedHat 9 Cgroup 切换

发布时间:2023-11-30 10:10:52人气:272


在 Red Hat 9 中,Cgroup v2 是默认启用的,它采用单一层次结构模型,简化了控制组的管理,并与 systemd 进行了深度集成,提高了在 RHEL 系统上配置资源控制时的用户体验。


它具有一些 cgroup-v1 没有的功能,同时,cgroup-v1 也包含一些 cgroup-v2 没有的传统功能。因此,直接依赖 cgroup-v1 的第三方软件在 cgroup-v2 环境中可能无法正常运行。


但是有一些软件必须是在v1上运行,我们作为用户如何在v1和v2之间来回切换呢?


首先,我们需要检查当前的 Cgroup 版本。通过运行 "docker info" 命令,我们可以看到 Docker 的 Cgroup 版本,如果显示的是 v1,那么说明当前正在使用 Cgroup v1,如果显示的是 v2,那么说明当前正在使用 Cgroup v2。


如果现在使用的是Cgroup v1 想使用 Cgroup v2具体切换步骤如下:


首先,我们需要编辑 /etc/default/grub 或者 /etc/sysconfig/grub,添加以下内容来启用 cgroup v2:


GRUB_CMDLINE_LINUX="cgroup_no_v1=all systemd.unified_cgroup_hierarchy=1"  

保存文件后,运行以下命令更新 GRUB 配置:


grub2-mkconfig -o /boot/grub2/grub.cfg

然后重启系统以应用内核启动参数。


接下来,我们需要确认 cgroup v2 已经启用。运行以下命令:


mount | grep cgroup

你应该会看到类似以下的输出,其中 cgroup2 被挂载:


cgroup2 on /sys/fs/cgroup/unified type cgroup2 (rw,nosuid,nodev,noexec,relatime)

至此,我们已经成功将 Cgroup v1 切换为 v2。


如果在 Red Hat 9 上,想要切换回 Cgroup v1,那么我们可以参考以下步骤:


如果需要使用 cgroup-v1,需要在GRUB_CMDLINE_LINUX添加以下参数:



GRUB_CMDLINE_LINUX="systemd.unified_cgroup_hierarchy=0 systemd.legacy_systemd_cgroup_controller"


以上就是在 Red Hat 9 中切换 Cgroup v1 与 v2 的方法,希望对大家有所帮助。



上一条:红帽企业版 Linux 9.3 版本发布,强化了对容器的支持

下一条:红帽的AI愿景:通过开源让AI为您效力