Предупреждения о запуске Mongodb после обновления

Я обновил mongodb, используя

sudo apt-get install mongodb-org

mongodb обновляется с 2.4 до 3.0. Вскоре после того, как я подключился к оболочке mongo, он отображает приведенные ниже предупреждения о запуске. Я не знаю, как это исправить. Предложите мне, как исправить эти предупреждения?

MongoDB shell version: 3.0.1
connecting to: test  
Server has startup warnings: 
2015-04-03T13:37:53.536+0530 I CONTROL  [initandlisten] 
2015-04-03T13:37:53.536+0530 I CONTROL  [initandlisten] ** WARNING:        /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2015-04-03T13:37:53.536+0530 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2015-04-03T13:37:53.536+0530 I CONTROL  [initandlisten] 
2015-04-03T13:37:53.537+0530 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2015-04-03T13:37:53.537+0530 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2015-04-03T13:37:53.537+0530 I CONTROL  [initandlisten] 

Ответ 1

Добавление следующих строк до выхода 0 в файле /etc/rc.local с привилегиями root делало магию. Перезагрузите ОС после сохранения файла. Затем предупреждения исчезли в оболочке mongo.

Источник: документация MongoDB (http://docs.mongodb.org/manual/reference/transparent-huge-pages/#transparent-huge-pages-thp-settings)

if test -f /sys/kernel/mm/transparent_hugepage/khugepaged/defrag; then
echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag
fi
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

Ответ 2

Эти предупреждения появляются из-за настроек Transparent Huge Pages (THP).

Как указано в официальной документации MongoDB :

Однако, как известно, THP плохо работает под нагрузкой базы данных, которые имеют тенденцию иметь разреженный, а не непрерывный доступ к памяти узоры. Вы должны отключить THP на компьютерах Linux, используемых для запуска MongoDB чтобы обеспечить наилучшую производительность.

В StackOverflow есть аналогичный поток, где вы можете найти возможное решение, рекомендующее обновить файл mongod.conf, чтобы вы перезаписали свойства THP, указанные MongoDB.

Ответ 3

Кажется, что у многих людей такая же проблема. Вы можете найти ответ в документации MongoDB, или вы можете посмотреть аналогичный вопрос, который был задан на fooobar.com/info/62317/....

Один человек предложил ввести в консоль sudo service mongod restart, который работал для них.