Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Problema: Errore "Impossibile avviare MongoDB"

Soluzione

Introduzione

In questo documento viene descritto come risolvere i problemi relativi all'errore "MongoDB not able to start" (Impossibile avviare MongoDB) su CloudCenter Orchestrator (CCO).

Prerequisiti

Requisiti

Cisco raccomanda la conoscenza dei seguenti argomenti:

- MongoDB

- Ambienti di macchine virtuali

Componenti usati

Le informazioni fornite in questo documento si basano sulla versione 4.7.x/4.8.x di CloudCenter.

Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.

Problema: Errore "Impossibile avviare MongoDB"

Dopo aver configurato MongoDB per CCO, è probabile che si verifichi un errore quando non è in grado di connettersi correttamente a MongoDB. Il problema può essere dovuto a diversi fattori. Tuttavia, lo scenario menzionato è quello di uno spazio su disco rigido insufficiente su CCO per il lancio di MongoDB.

Per la risoluzione di questo problema, si consiglia sempre di consultare i file di log e verificare la causa effettiva dell'errore.

Questo errore si trova nel log CCO osmosix.

INFO policy.GatewayPolicyServiceImpl  Inject Context id org.springframework.web.context.WebApplicationContext: ,name Root WebApplicationContext

2017-05-22 06:58:17,077 ERROR context.ContextLoader [localhost-startStop-1] - Context initialization failed

com.mongodb.MongoTimeoutException: Timed out after 30000 ms while waiting for a server that matches ReadPreferenceServerSelector

. Client view of cluster state is {type=UNKNOWN, servers=[{address=localhost:27017, type=UNKNOWN, state=CONNECTING, exception=

{com.mongodb.MongoSocketOpenException: Exception opening socket}

Questo errore viene generato all'avvio del servizio MongoDB.

service mongod start

E l'errore è

Job for mongod.service failed. See "systemctl status mongod.service" and "journalctl -xe" for details.

Ora, quando si esegue:

sudo systemctl status mongod.service

è possibile che venga visualizzato il seguente messaggio di errore:

[root@localhost ~]# systemctl status mongod.service

● mongod.service - SYSV: Mongo is a scalable, document-oriented database.

Loaded: loaded (/etc/rc.d/init.d/mongod; bad; vendor preset: disabled)

Active: failed (Result: exit-code) since Fri 2017-06-23 06:07:56 UTC; 19h ago

Docs: man:systemd-sysv-generator(8)

Process: 2547 ExecStop=/etc/rc.d/init.d/mongod stop (code=exited, status=0/SUCCESS)

Process: 2588 ExecStart=/etc/rc.d/init.d/mongod start (code=exited, status=1/FAILURE)

Main PID: 2350 (code=exited, status=0/SUCCESS)

Jun 23 06:07:56 localhost.localdomain systemd[1]: Starting SYSV: Mongo is a scalable, document-oriented database....

Jun 23 06:07:56 localhost.localdomain runuser[2597]: pam_unix(runuser:session): session opened for user mongod by (uid=0)

Jun 23 06:07:56 localhost.localdomain mongod[2588]: Starting mongod: [FAILED]

Jun 23 06:07:56 localhost.localdomain systemd[1]: mongod.service: control process exited, code=exited status=1

Jun 23 06:07:56 localhost.localdomain systemd[1]: Failed to start SYSV: Mongo is a scalable, document-oriented database..

Jun 23 06:07:56 localhost.localdomain systemd[1]: Unit mongod.service entered failed state.

Jun 23 06:07:56 localhost.localdomain systemd[1]: mongod.service failed.

Soluzione

Provare ad avviare il servizio MongoDB e controllare i registri MongoDB. Questi errori potrebbero essere rilevati nel registro /var/log/mongodb/mongod.log .

2017-06-23T06:07:56.763+0000 [initandlisten] recover : no journal files present, no recovery needed

2017-06-23T06:07:56.763+0000 [initandlisten]

2017-06-23T06:07:56.763+0000 [initandlisten] ERROR: Insufficient free space for journal files

2017-06-23T06:07:56.764+0000 [initandlisten] Please make at least 3379MB available in /var/lib/mongo/journal or use --smallfiles

2017-06-23T06:07:56.764+0000 [initandlisten]

2017-06-23T06:07:56.809+0000 [initandlisten] exception in initAndListen: 15926 Insufficient free space for journals, terminating

2017-06-23T06:07:56.809+0000 [initandlisten] dbexit:

2017-06-23T06:07:56.809+0000 [initandlisten] shutdown: going to close listening sockets...

Mongo richiede 3 GB di spazio libero sul disco rigido per iniziare. È necessario verificare che il disco rigido disponga di spazio sufficiente prima di avviare un'istanza e che sia necessario riavviare il sistema per MongoDB? per l'avvio automatico.