MongoDB è un sistema di gestione di database NoSQL (NoSQL-Database-Management-System) orientato a documenti.
In questa guida descriviamo come può mettere attivo MongoDB sul suo Managed Flex Server.
Requisiti
MongoDB può essere attivato a partire da Managed Flex Server M.
Installazione
Per eseguire i seguenti passi, deve essere collegato al suo Managed Flex Server tramite SSH.
Per l'installazione per prima viene creato il folder:
mkdir -p ~/.mongod/data/db
Avviare MongoDB
Lei può scegliere tra due diverse versioni di MongoDB. Le versioni attualmente disposinbili possono essere trovate nel folder /usr/local sotto mongodbxx.
Si prega di avviare MongoDB in una shell con la versione corrispondente:
/usr/local/mongodbxx/bin/mongod --dbpath ~/.mongod/data/db
Creare un user
In una nuova shell esegui il comando mongo per creare l'utente. Nel seguente esempio si tratta di un user Root, che ha accesso a tutti i database. Ulteriori informazioni sui diversi ruoli può trovare nella documentazione di MongoDB: https://www.mongodb.com/docs/manual/
Collegarsi con la database admin:
use admin
Creare un user:
db.createUser(
{ user: "User",
pwd: "password",
roles:[{role: "userAdminAnyDatabase" , db:"admin"}]})
Ulteriori informazioni sui diversi ruoli può trovare nella documentazione di MongoDB: https://www.mongodb.com/docs/manual/
L'integrazione di MongoDB nel Custom Service Control (CSC)
Il Custom Service Control (CSC) può occuparsi del funzionamento e della gestione automatica della sua applicazione (ad esempio dell’avvio e dell’arresto in caso di interventi di manutenzione sul server.).
La configurazione di MongoDB nel CSC è molto semplice. Per fare questo crei un nuovo servizio personalizzato (un custom service) per MongoDB come segue:
hpservices supervisord add mongodb
Questo crea uno schema di configurazione per il nuovo servizio nel file ~/.services/supervisord/mongodb/service.conf . Per MongoDB è necessario adeguare il comando; tutti gli altri valori proposti possono essere adottati (rimuovere il punto e virgola all’inizio della riga).
[program:mongodb]
command=/usr/local/mongodbxx/bin/mongod --auth --dbpath /home/USER/.mongod/data/db
;directory=%(ENV_HOME)s/app/mongodb/ ; directory to cwd to before exec (default no cwd)
autostart=true ; start application at supervisord start (default: true)
stopwaitsecs=10 ; max num secs to wait before SIGKILL (default 10)
stdout_logfile=%(ENV_HOME)s/.services/supervisord/mongodb/log/default.log
stdout_logfile_maxbytes=1MB ; filesize at which to rotate logfiles (default ist 50MB)
stdout_logfile_backups=10 ; number of stdout logfile backups (0 means none, default 10)
stderr_logfile=%(ENV_HOME)s/.services/supervisord/mongodb/log/default.err
stderr_logfile_maxbytes=1MB ; filesize at which to rotate logfiles (default is 50MB)
stderr_logfile_backups=10 ; number of stderr logfile backups (0 means none, default 10)
Con il comando supervisorctl update si può attivare la nuova configurazione per MongoDB:
supervisorctl update
mongodb: added process group
Informazioni più dettagliate sul funzionamento e le opzioni disponibili con il CSC, possono essere trovate nella guida del Custom Service Control.
Testare l'istanza di MongoDB
L'istanza di MongoDB può ora essere testata con questo comando:
mongo
Se tutto è stato configurato correttamente, dovrebbe ricevere la seguente risposta:
MongoDB shell version v5.0.5
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("818c38f7-8cfa-497f-901c-0b94818f8862") }
MongoDB server version: 5.0.5
Ulteriori informazioni
Per richieste di supporto la preghiamo di usare invece questo modulo.