【问题标题】:LXC - Cgroup memory controller: missingLXC - Cgroup 内存控制器:缺失
【发布时间】:2013-03-14 07:11:28
【问题描述】:

我正在尝试在我的 Debian 6 上安装 LXC (0.7.4.1),但是当我运行 lxc-checkconfig 时,我得到“Cgroup memory controller: missing”

root@lxcsrv01:~# lxc-checkconfig
Kernel config /proc/config.gz not found, looking in other places...
Found kernel config file /boot/config-2.6.32-5-686
--- Namespaces ---
Namespaces: enabled
Utsname namespace: enabled
Ipc namespace: enabled
Pid namespace: enabled
User namespace: enabled
Network namespace: enabled
Multiple /dev/pts instances: enabled

--- Control groups ---
Cgroup: enabled
Cgroup namespace: enabled
Cgroup device: enabled
Cgroup sched: enabled
Cgroup cpu account: enabled
Cgroup memory controller: missing
Cgroup cpuset: enabled

--- Misc ---
Veth pair device: enabled
Macvlan: enabled
Vlan: enabled
File capabilities: enabled
enabled

Note : Before booting a new kernel, you can check its configuration
usage : CONFIG=/path/to/config /usr/bin/lxc-checkconfig

根据谷歌搜索,我需要重新编译我的内核,但我不知道如何。 有人可以解释一下怎么做吗?

最好的问候

【问题讨论】:

    标签: linux kernel debian lxc


    【解决方案1】:

    Debian 6 的内核没有内存 cgroup 功能。 但是你可以在没有它的情况下运行 lxc。

    如果您需要内存 cgroup,安装新内核很容易 来自backports

    1. 添加 apt-line 的 backports
    2. 运行“apt-get install linux-image-3.2.0-0.bpo.4-amd64”(或 -686 用于 i386)
    3. 将内核引导选项“cgroup_enable=memory”添加到引导加载程序设置 (例如 /etc/default/grub)来启用它。
    4. 重启

    或者,如果你想重新编译内核,你可以使用 Debian 的 kernel-package 系统; http://newbiedoc.sourceforge.net/system/kernel-pkg.html

    【讨论】:

      【解决方案2】:

      here 更新内核。

      然后重新启动您的系统。这个问题会自动解决,但如果没有,请转到/boot/config-<versionnumber>-generic。例如:/boot/config-3.11.0-13-generic

      在这里查看CONFIG_CGROUP_MEM_RES_CTLR=y 是否可用。如果“是”,则可以,否则将其粘贴。

      【讨论】:

        【解决方案3】:

        我有类似的内存 cgroup 问题,并且已经研究了很多。我写了一篇关于这里的博文:

        http://blog.raymond.burkholder.net/index.php?/archives/639-Debian-Stretch-LXC-Memory-Controller.html

        总而言之,内核是在必要的内存 cgroup 支持下编译的。美中不足:lxc-checkconfig 有一个 bug,无法正确显示内存 cgroup 的状态。 CONFIG_CGROUP_MEM_RES_CTLR=y 仅适用于较旧的内核(我相信在 3.6 之前的某个时间)。

        我最终做了两项调整:一项针对/boot/config-$version 的调整,一项针对/etc/default/grub 的调整。两者都在文章中进行了解释。

        但最重要的是,一般建议似乎是:如果您确实不需要对容器执行内存限制管理,请不要启用它。存在一些性能和内存开销。

        【讨论】:

          猜你喜欢
          • 2021-02-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-06-21
          • 2018-11-24
          • 1970-01-01
          • 2017-10-21
          相关资源
          最近更新 更多