2015-04-03 10 views
11

ho aggiornato il MongoDB usandoavvisi di avvio dopo l'aggiornamento MongoDB

sudo apt-get install mongodb-org 

mongodb viene aggiornato 2,4-3,0. Subito dopo essermi connesso alla shell mongo, viene visualizzato il seguente avviso di avvio. Non sono a conoscenza di ripararlo. Suggeriscimi come risolvere questi avvertimenti?

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] 

risposta

12

L'aggiunta delle seguenti righe precedenti all'uscita 0 nel file /etc/rc.local con privilegi di root ha fatto la magia. Riavviato il sistema operativo dopo aver salvato il file. Quindi gli avvisi scomparivano nella shell mongo.

Fonte: documentazione 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 
+3

I documenti MongoDB ufficiali attuali (= 2015/09) vanno in un modo leggermente diverso (non usando /etc/rc.local ma uno script di avvio dedicato), dai un'occhiata a http://docs.mongodb.org/master/tutorial/transparent-huge-pages/Questo ha funzionato per me su Ubuntu 14. – hgoebl

+0

Ho provato il modo suggerito nella documentazione ufficiale e non ha funzionato per me (vai alla figura). Tuttavia, inserendolo nei lavori rc.local. C'è qualche svantaggio nell'usare invece rc.local? –

+0

Il file rc.local viene eseguito dal sistema operativo dopo ogni avvio all'ultimo livello di esecuzione, il che significa che esegue afters tutti i processi ei servizi avviati dal sistema operativo. Vedo che non c'è nessun svantaggio di usarlo –

0

Sembra che molte persone abbiano lo stesso problema. Puoi trovare la risposta nel MongoDB documentation, oppure puoi guardare una domanda simile che è stata posta su StackOverflow.

Una persona ha suggerito di digitare nella console sudo service mongod restart, che ha funzionato per loro.

+1

Seguendo la documentazione MongoDB mi ha aiutato a risolvere il problema –

+0

Sono contento che risolto. Contrassegna una delle risposte corrette. Grazie. –

6

Questi avvisi vengono visualizzati a causa delle impostazioni Transparent Huge Pages (THP).

Come indicato nella official MongoDB documentation:

Tuttavia, THP è noto per effettuare male sotto i carichi di lavoro, che tendono ad avere sparse anziché di accesso alla memoria contigua modelli. È necessario disabilitare THP su macchine Linux utilizzate per eseguire istanze di MongoDB per garantire le migliori prestazioni.

C'è un simile thread su StackOverflow dove è possibile trovare una possibile soluzione che consiglia l'aggiornamento del file mongod.conf in modo che si sovrascrive le proprietà THP indicati da MongoDB.

+0

La documentazione di MongoDB ha aiutato. grazie –

Problemi correlati