我收到mongodb关于THP的以下警告
2015-03-06T21:01:15.526-0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'. 2015-03-06T21:01:15.526-0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
但是我确实设法手动关闭了THP
frederick@UbuntuVirtual:~$ cat /sys/kernel/mm/transparent_hugepage/enabled always madvise [never] frederick@UbuntuVirtual:~$ cat /sys/kernel/mm/transparent_hugepage/defrag always madvise [never]
我加入的伎俩transparent_hugepage=never,以GRUB_CMDLINE_LINUX_DEFAULT中/etc/default/grub和添加
transparent_hugepage=never
GRUB_CMDLINE_LINUX_DEFAULT
/etc/default/grub
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then echo never > /sys/kernel/mm/transparent_hugepage/defrag fi
至 /etc/rc.local
/etc/rc.local
我到底该如何避免该警告?
MongoDB官方文档为该问题提供了几种解决方案。您也可以尝试此解决方案,该解决方案对我有用:
注意: 如果MongoDB版本大于3.0, 请尝试使用官方文档指令 __
打开/etc/init.d/mongod文件。 (如果没有此类文件,您可以检查/etc/init.d/mongod,/etc/init/mongod.conf文件-信用:以下评论)
/etc/init.d/mongod
/etc/init/mongod.conf
在紧接着的chown $DAEMONUSER /var/run/mongodb.pid之前和之后在下面添加以下行end script。
chown $DAEMONUSER /var/run/mongodb.pid
end script
重新启动mongod(service mongod restart)。
mongod
service mongod restart
以下是要添加到的行/etc/init.d/mongod:
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then echo never > /sys/kernel/mm/transparent_hugepage/enabled fi if test -f /sys/kernel/mm/transparent_hugepage/defrag; then echo never > /sys/kernel/mm/transparent_hugepage/defrag fi
而已!