Déployer un Replica Set MongoDB avec authentification et sauvegarde automatisée

Publié le 17 juillet 2025

Base de données
Haute Disponibilité
Backup

Un Replica Set MongoDB permet d’assurer la haute disponibilité et la redondance des données. Ce guide détaille l’installation d’un Replica Set à trois nœuds, l’activation de l’authentification et la mise en place de sauvegardes automatisées via mongodump.

Prérequis

  • Trois serveurs Linux (Debian/Ubuntu ou RHEL/CentOS)
  • MongoDB Community Edition installé (v6.x)
  • Ports réseau ouverts : 27017

1. Configuration de l’authentification

Sur chaque nœud, éditez /etc/mongod.conf :

security:
  authorization: enabled

Redémarrez MongoDB :

sudo systemctl restart mongod

Créez un utilisateur administrateur :

mongo --eval "db.getSiblingDB('admin').createUser({user:'admin',pwd:'StrongPass123',roles:[{role:'root',db:'admin'}]});"

2. Initialisation du Replica Set

Dans /etc/mongod.conf, ajoutez :

replication:
  replSetName: "rs0"
net:
  bindIp: 0.0.0.0

Redémarrez les services, puis sur le premier nœud :

mongo -u admin -p StrongPass123 --authenticationDatabase admin --eval 'rs.initiate({_id:"rs0",members:[{_id:0,host:"node1:27017"},{_id:1,host:"node2:27017"},{_id:2,host:"node3:27017"}]});'

3. Vérification du statut

mongo -u admin -p StrongPass123 --authenticationDatabase admin --eval 'rs.status();'

4. Mise en place de la sauvegarde automatisée

Créez un script /usr/local/bin/mongo-backup.sh :

#!/bin/bash
TIMESTAMP=$(date +'%F_%H-%M')
BACKUP_DIR="/backups/mongo/$TIMESTAMP"
mkdir -p "$BACKUP_DIR"
mongodump --uri="mongodb://admin:StrongPass123@node1:27017,node2:27017,node3:27017/admin?replicaSet=rs0" --out="$BACKUP_DIR"
find /backups/mongo -maxdepth 1 -mtime +7 -type d -exec rm -rf {} \;

Rendez-le exécutable :

chmod +x /usr/local/bin/mongo-backup.sh

Ajoutez un cron pour sauvegarder chaque jour à 2h :

(crontab -l 2>/dev/null; echo "0 2 * * * /usr/local/bin/mongo-backup.sh >> /var/log/mongo-backup.log 2>&1") | crontab -

Conclusion

Vous avez mis en place un Replica Set MongoDB sécurisé avec authentification, haute disponibilité et sauvegardes automatisées pour garantir l’intégrité de vos données et la continuité de service.

Besoin d'aide sur ce sujet ?

Notre équipe d'experts est là pour vous accompagner dans vos projets.

Contactez-nous

Articles similaires qui pourraient vous intéresser