GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer et configurer MongoDB sur CentOS 8

MongoDB est une base de données NoSQL qui offre des performances élevées, une haute disponibilité et une mise à l'échelle automatique. La base de données NoSQL signifie que, contrairement à MySQL ou PostgreSQL, elle ne prend pas en charge SQL (Structured Query Language) pour récupérer ou manipuler les données stockées.

MongoDB ne stocke pas les données dans des tables. Au lieu de cela, il stocke les données dans une structure "document" similaire à JSON (dans MongoDB appelée BSON). MongoDB a été introduit pour la première fois en 2009, il y a six ans, et est actuellement développé par MongoDB MongoDB Inc.

Dans ce tutoriel, nous allons vous montrer comment installer et configurer MongoDB 4.4 sur le serveur CentOS 8. Nous allons installer MongoDB, modifier certains paramètres système pour corriger une erreur sur MongoDB, créer l'utilisateur administrateur pour MongoDB, puis l'authentification MongoDB.

Prérequis

  • Serveur CentOS 8
  • Privilèges root
  • Comprendre la commande Linux/CentOS de base

Qu'allons-nous faire ?

  • Ajouter un référentiel MongoDB
  • Installer MongoDB sur CentOS 8
  • Corriger une erreur MongoDB
  • Créer un utilisateur administrateur MongoDB
  • Activer l'authentification MongoDB
  • Test

Étape 1 - Ajouter un référentiel MongoDB

Tout d'abord, connectez-vous à votre serveur à l'aide de votre utilisateur et de votre mot de passe SSH, puis mettez à jour tous les packages vers la dernière version à l'aide de la commande ci-dessous.

ssh [email protected]
sudo dnf update

Allez maintenant dans le répertoire '/etc/yum.repos.d' et créez un nouveau fichier de référentiel 'mongodb-4.4.repo' à l'aide de l'éditeur vim.

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

Collez-y le référentiel MongoDB 4.4 suivant.

[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

Enregistrez et fermez.

Ensuite, vérifiez tous les référentiels disponibles sur le système CentOS à l'aide de la commande dnf ci-dessous.

sudo dnf repolist

Vous trouverez ci-dessous le résultat que vous obtiendrez.

En conséquence, le référentiel MongoDB a été ajouté au système CentOS 8.

Étape 2 - Installer le serveur de base de données MongoDB NoSQL

Pour installer la base de données MongoDB NoSQL, exécutez la commande dnf ci-dessous.

sudo dnf install -y mongodb-org

Une fois l'installation terminée, démarrez le service MongoDB et ajoutez-le au démarrage du système.

systemctl start mongod
systemctl enable mongod

Le service MongoDB est opérationnel, vérifiez-le à l'aide de la commande ci-dessous.

ss -plnt
systemctl status mongod

Vous trouverez ci-dessous le résultat que vous obtiendrez.

Comme on peut le voir, le service MongoDB s'exécute sur le port TCP par défaut '27017'.

Étape 3 - Correction de l'erreur MongoDB

À ce stade, le service MongoDB est opérationnel sur le système CentOS 8. Et pour cette étape, nous allons améliorer notre installation MongoDB en modifiant certaines configurations système pour corriger certaines erreurs.

- Désactiver les pages géantes transparentes (THP) à l'aide de Tuned

Pour augmenter les performances d'installation de MongoDB, nous devons désactiver le THP ou Transparent Huge Pages sur notre système. Et pour le système CentOS, vous pouvez désactiver THP via une configuration de profil optimisée.

Créez un nouveau répertoire '/etc/tuned/virtual-guest-no-thp' pour le profil réglé personnalisé nommé 'virtual-guest-no-thp'.

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

Ensuite, créez la configuration 'tuned.conf' dans le répertoire '/etc/tuned/virtual-guest-no-thp/' à l'aide de l'éditeur vim.

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

Collez-y la configuration suivante.

[main]
include=virtual-guest

[vm]
transparent_hugepages=never

Enregistrez et fermez.

Activez maintenant le nouveau profil personnalisé "virtual-guest-no-thp" à l'aide de la commande tuned-adm ci-dessous.

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

Pour vérifier l'état THP sur l'état Linux, vérifiez à l'aide de la commande suivante.

cat /sys/kernel/mm/transparent_hugepage/enabled

Assurez-vous maintenant d'obtenir "[jamais]" réponse ci-dessous.

Comme on peut le voir, les grandes pages transparentes sur le système CentOS ont été désactivées via le profil Tuned.

- Configurer UNIX Ulimit

Ulimits ou Limites utilisateur est utilisé pour définir la quantité d'une ressource à l'échelle du système qu'un utilisateur peut utiliser. Pour améliorer et améliorer les performances de MongoDB, vous devez augmenter les paramètres ulimit pour le service MongoDB.

Allez maintenant dans le répertoire '/etc/security/limits.d/' et créez une nouvelle configuration 'monogd.conf' à l'aide de l'éditeur vim.

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

Collez-y la configuration suivante.

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

Enregistrez et fermez.

Pour appliquer la nouvelle configuration, exécutez la commande ci-dessous.

sysctl -p

Assurez-vous maintenant qu'il n'y a pas d'erreur et que la configuration d'Ulimit pour MongoDB est terminée.

- Désactiver l'avertissement MongoDB Cloud Monitoring (facultatif)

Cette étape est facultative. Vous pouvez ignorer les informations sur le service MongoDB Cloud Monitoring lorsque vous vous êtes connecté au shell MongoDB.

Pour désactiver cet avertissement, connectez-vous au shell MongoDB à l'aide de la commande "mongo" ci-dessous.

mongo

Exécutez maintenant la requête suivante.

db.disableFreeMonitoring()

Tapez 'quitter ' pour vous déconnecter du shell MongoDB et maintenant redémarrer votre serveur.

sudo reboot

Et par conséquent, l'avertissement des services MongoDB Cloud Monitoring a disparu.

Étape 4 - Créer un utilisateur administrateur MongoDB

Dans cette étape, nous allons créer l'utilisateur administrateur pour MongoDB via le shell 'mongo'.

Connectez-vous au shell MongoDB à l'aide de la commande 'mongo' ci-dessous.

mongo

Passez maintenant à la base de données 'admin'.

use admin

Créez ensuite le nouvel utilisateur 'admin' avec le mot de passe 'hakasepasswordformongodbadmin' en utilisant la requête suivante.

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

Et l'utilisateur MongoDB a été créé, vérifiez tous les utilisateurs sur MongoDB en utilisant la requête ci-dessous.

show users

Vous trouverez ci-dessous le résultat que vous obtiendrez.

En conséquence, l'utilisateur administrateur de MongoDB a été créé, tapez 'exit' pour vous déconnecter du shell MongoDB.

Étape 5 - Activer l'authentification MongoDB

Après avoir créé l'utilisateur administrateur, nous activerons l'authentification MongoDB pour empêcher un autre utilisateur sans privilèges suffisants de voir les données sur la base de données.

Pour activer l'authentification MongoDB, modifiez la configuration '/etc/mongod.conf' à l'aide de l'éditeur vim.

vim /etc/mongod.conf

Décommentez l'option 'sécurité' et ajoutez la configuration comme ci-dessous.

autorisation de
security
    authorization: "enabled"

Enregistrez et fermez.

Ensuite, redémarrez le service MongoDB pour appliquer la nouvelle configuration.

systemctl restart mongod

Assurez-vous qu'il n'y a pas d'erreur et que l'authentification MongoDB a été activée.

Étape 6 - Tester

Pour tester notre installation et configuration de l'authentification MongoDB, vous pouvez vérifier via le shell MongoDB.

Connectez-vous au shell MongoDB à l'aide de la commande ci-dessous.

mongo

Ensuite, passez à la base de données "admin" et affichez tous les utilisateurs sur MongoDB en utilisant les requêtes suivantes.

use admin
show users

Vous trouverez ci-dessous le résultat que vous obtiendrez.

Comme on peut le voir, vous n'êtes pas autorisé à afficher la liste de tous les utilisateurs sur la base de données "admin".

Ensuite, authentifiez-vous auprès du serveur MongoDB à l'aide de la requête suivante.

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

Assurez-vous maintenant que vous obtenez le numéro de réponse '1' , ce qui signifie que l'authentification est réussie.

Ensuite, vous pouvez afficher et vérifier tous les utilisateurs disponibles sur votre serveur MongoDB en utilisant la requête ci-dessous.

show users

Et vous obtiendrez l'administrateur MongoDB que nous venons de créer en haut.

En conséquence, l'installation et la configuration du serveur de base de données MongoDB NoSQL sur le système CentOS 8 ont été effectuées avec succès.


Cent OS
  1. Comment installer et configurer Nginx sur CentOS 7

  2. Comment installer et configurer R sur le système Linux RHEL 8 / CentOS 8

  3. Comment installer et configurer Redis sur CentOS 7

  4. Comment installer et configurer GitLab sur CentOS 7

  5. Comment installer et configurer CyberPanel sur CentOS 8

Comment installer et configurer ISPConfig CP sur CentOS 7

Comment installer et configurer ownCloud sur CentOS 7

Comment installer et configurer Samba sur CentOS 8

Comment installer et configurer Fail2ban sur CentOS 8

Comment installer et configurer HAproxy sur CentOS 6

Comment installer et configurer GlusterFS sur CentOS 7/CentOS 8