如何在Centos 7上为mongodb禁用THP

Jor*_*rdi 4 linux centos mongodb centos7

我刚刚安装了一个Centos 7的新实例

Linux version 3.10.0-229.1.2.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.2 20140120 (Red Hat 4.8.2-16) (GCC) ) #1 SMP Fri Mar 27 03:04:26 UTC 2015
Run Code Online (Sandbox Code Playgroud)

我安装了一个mongodb 3.0,当我连接时,我有这个奇怪的消息:

2015-04-15T07:48:55.583+0000 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2015-04-15T07:48:55.583+0000 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2015-04-15T07:48:55.583+0000 I CONTROL  [initandlisten]
2015-04-15T07:48:55.583+0000 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2015-04-15T07:48:55.583+0000 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
Run Code Online (Sandbox Code Playgroud)

如何禁用此版本的THP?

我没有运气的事情

我可以禁用它运行此命令:

echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
Run Code Online (Sandbox Code Playgroud)

但是,当我重新启动时,问题再次出现.

我试图修改/etc/rc.local添加这些行:

if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
  echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
  echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
exit 0
Run Code Online (Sandbox Code Playgroud)

重启并没有结果

我也尝试修改/ etc/default/grub ...

Joa*_*nvo 6

我遇到了同样的问题,并通过以下方式解决了这个问题/etc/rc.local:

echo never > /sys/kernel/mm/transparent_hugepage/enabled;
echo never > /sys/kernel/mm/transparent_hugepage/defrag;
Run Code Online (Sandbox Code Playgroud)

我还给了执行权限 /etc/rc.d/rc.local

现在每次启动时都会被禁用.

  • 还有值得检查mongodb,redis等,在执行rc.local之前没有启动. (3认同)