GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare e configurare MongoDB su CentOS 8

MongoDB è un database NoSQL che offre prestazioni elevate, disponibilità elevata e ridimensionamento automatico. Il database NoSQL significa che, a differenza di MySQL o PostgreSQL, non supporta SQL (Structured Query Language) per recuperare o manipolare i dati archiviati.

MongoDB non memorizza i dati nelle tabelle. Invece, memorizza i dati in una struttura "documento" simile a JSON (in MongoDB chiamato BSON). MongoDB è stato introdotto per la prima volta nel 2009, sei anni fa, e attualmente sviluppato da MongoDB MongoDB Inc.

In questo tutorial, ti mostreremo come installare e configurare MongoDB 4.4 sul server CentOS 8. Installeremo MongoDB, modificheremo alcune impostazioni di sistema per correggere alcuni errori su MongoDB, creeremo l'utente amministratore per MongoDB e quindi l'autenticazione MongoDB.

Prerequisiti

  • Server CentOS 8
  • Privilegi di root
  • Comprendere i comandi di base di Linux/CentOS

Cosa faremo?

  • Aggiungi repository MongoDB
  • Installa MongoDB su CentOS 8
  • Correggi alcuni errori di MongoDB
  • Crea utente amministratore MongoDB
  • Abilita l'autenticazione MongoDB
  • Test

Passaggio 1:aggiungi il repository MongoDB

Innanzitutto, accedi al tuo server utilizzando il tuo utente e password SSH, quindi aggiorna tutti i pacchetti all'ultima versione utilizzando il comando seguente.

ssh [email protected]
sudo dnf update

Ora vai nella directory '/etc/yum.repos.d' e crea un nuovo file di repository 'mongodb-4.4.repo' usando l'editor vim.

cd /etc/yum.repos.d/
vim mongodb-4.4.repo

Incolla il seguente repository MongoDB 4.4 al suo interno.

[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc

Salva e chiudi.

Quindi, controlla tutti i repository disponibili sul sistema CentOS usando il comando dnf di seguito.

sudo dnf repolist

Di seguito è riportato il risultato che otterrai.

Di conseguenza, il repository MongoDB è stato aggiunto al sistema CentOS 8.

Passaggio 2:installazione del server di database MongoDB NoSQL

Per installare MongoDB NoSQL Database, esegui il comando dnf di seguito.

sudo dnf install -y mongodb-org

Una volta completata l'installazione, avvia il servizio MongoDB e aggiungilo all'avvio del sistema.

systemctl start mongod
systemctl enable mongod

Il servizio MongoDB è attivo e funzionante, verificalo utilizzando il comando seguente.

ss -plnt
systemctl status mongod

Di seguito è riportato il risultato che otterrai.

Come si può vedere, il servizio MongoDB è in esecuzione sulla porta TCP predefinita '27017'.

Passaggio 3:correzione dell'errore MongoDB

A questo punto, il servizio MongoDB è attivo e funzionante sul sistema CentOS 8. E per questo passaggio, miglioreremo la nostra installazione di MongoDB modificando alcune configurazioni di sistema per correggere alcuni errori.

- Disabilita Transparent Huge Pages (THP) usando Tuned

Per aumentare le prestazioni di installazione di MongoDB, dobbiamo disabilitare THP o Transparent Huge Pages sul nostro sistema. E per il sistema CentOS, puoi disabilitare THP tramite la configurazione del profilo ottimizzato.

Crea una nuova directory '/etc/tuned/virtual-guest-no-thp' per il profilo ottimizzato personalizzato denominato 'virtual-guest-no-thp'.

sudo mkdir -p /etc/tuned/virtual-guest-no-thp

Quindi, crea la configurazione 'tuned.conf' nella directory '/etc/tuned/virtual-guest-no-thp/' usando l'editor vim.

vim /etc/tuned/virtual-guest-no-thp/tuned.conf

Incolla la seguente configurazione al suo interno.

[main]
include=virtual-guest

[vm]
transparent_hugepages=never

Salva e chiudi.

Ora attiva il nuovo profilo sintonizzato personalizzato "virtual-guest-no-thp" utilizzando il comando sintonizzato-adm di seguito.

sudo tuned-adm profile virtual-guest-no-thp

Per verificare lo stato THP sullo stato Linux, controllare utilizzando il comando seguente.

cat /sys/kernel/mm/transparent_hugepage/enabled

Ora assicurati di avere '[mai]' risposta come di seguito.

Come si può vedere, le Transparent Huge Pages sul sistema CentOS sono state disabilitate tramite il profilo Tuned.

- Imposta UNIX Ulimit

Ulimits o Limiti utente viene utilizzato per definire la quantità di una risorsa a livello di sistema che un utente può utilizzare. Per migliorare e migliorare le prestazioni di MongoDB, è necessario aumentare le impostazioni ulimit per il servizio MongoDB.

Ora vai nella directory '/etc/security/limits.d/' e crea una nuova configurazione 'monogd.conf' usando l'editor vim.

cd /etc/security/limits.d/
vim mongod.conf

Incolla la seguente configurazione al suo interno.

mongod soft nproc 64000
mongod hard nproc 64000
mongod soft nofile 64000
mongod hard nofile 64000

Salva e chiudi.

Per applicare la nuova configurazione, esegui il comando seguente.

sysctl -p

Ora assicurati di non avere errori e che la configurazione di Ulimit per MongoDB sia stata completata.

- Disattiva avviso MongoDB Cloud Monitoring (opzionale)

Questa fase è facoltativa. Puoi ignorare le informazioni sul servizio MongoDB Cloud Monitoring quando hai effettuato l'accesso alla shell MongoDB.

Per disabilitare questo avviso, accedi alla shell di MongoDB usando il comando "mongo" di seguito.

mongo

Ora esegui la seguente query.

db.disableFreeMonitoring()

Digita 'uscita ' per disconnettersi dalla shell di MongoDB e ora riavviare il server.

sudo reboot

E di conseguenza, l'avviso dei servizi MongoDB Cloud Monitoring è scomparso.

Passaggio 4:crea l'utente amministratore MongoDB

In questo passaggio creeremo l'utente amministratore per MongoDB tramite la shell 'mongo'.

Accedi alla shell di MongoDB usando il comando 'mongo' di seguito.

mongo

Ora passa al database 'admin'.

use admin

Quindi crea il nuovo utente 'admin' con la password 'hakasepasswordformongodbadmin' usando la seguente query.

db.createUser(
  {
    user: "admin",
    pwd: "hakasepasswordformongodbadmin",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
  }
)

E l'utente MongoDB è stato creato, controlla tutti gli utenti su MongoDB utilizzando la query seguente.

show users

Di seguito è riportato il risultato che otterrai.

Di conseguenza, è stato creato l'utente amministratore per MongoDB, digita "exit" per disconnettersi dalla shell di MongoDB.

Passaggio 5:abilitazione dell'autenticazione MongoDB

Dopo aver creato l'utente amministratore, abiliteremo l'autenticazione MongoDB per impedire a un altro utente senza privilegi sufficienti di vedere i dati sul database.

Per abilitare l'autenticazione MongoDB, modifica la configurazione '/etc/mongod.conf' usando l'editor vim.

vim /etc/mongod.conf

Decommenta l'opzione 'sicurezza' e aggiungi la configurazione come di seguito.

security
    authorization: "enabled"

Salva e chiudi.

Quindi, riavvia il servizio MongoDB per applicare la nuova configurazione.

systemctl restart mongod

Assicurati che non ci siano errori e che l'autenticazione MongoDB sia stata abilitata.

Fase 6 - Test

Per testare la nostra installazione e configurazione dell'autenticazione MongoDB, puoi verificare tramite la shell MongoDB.

Accedi alla shell di MongoDB usando il comando seguente.

mongo

Quindi, passa al database "admin" e mostra tutti gli utenti su MongoDB utilizzando le seguenti query.

use admin
show users

Di seguito è riportato il risultato che otterrai.

Come si può vedere, non sei autorizzato a mostrare l'elenco di tutti gli utenti nel database 'admin'.

Successivamente, autenticati sul server MongoDB utilizzando la seguente query.

db.auth('admin', 'hakasepasswordformongodbadmin')

Ora assicurati di ricevere il numero di risposta '1' , il che significa che l'autenticazione è riuscita.

Successivamente, puoi mostrare e controllare tutti gli utenti disponibili sul tuo server MongoDB utilizzando la query seguente.

show users

E otterrai l'amministratore MongoDB che abbiamo appena creato in cima.

Di conseguenza, l'installazione e la configurazione di MongoDB NoSQL Database Server sul sistema CentOS 8 sono state completate correttamente.


Cent OS
  1. Come installare e configurare Nginx su CentOS 7

  2. Come installare e configurare R sul sistema Linux RHEL 8 / CentOS 8

  3. Come installare e configurare Redis su CentOS 7

  4. Come installare e configurare GitLab su CentOS 7

  5. Come installare e configurare CyberPanel su CentOS 8

Come installare e configurare ISPConfig CP su CentOS 7

Come installare e configurare ownCloud su CentOS 7

Come installare e configurare Samba su CentOS 8

Come installare e configurare Fail2ban su CentOS 8

Come installare e configurare HAproxy su CentOS 6

Come installare e configurare GlusterFS su CentOS 7/CentOS 8