MongoDB - Réplication Et Sharding
MongoDB - Réplication Et Sharding
MongoDB - Réplication Et Sharding
Exercices
Nous voulons ici tester le système de tolérance aux pannes de MongoDB. Pour cela, nous allons
lancer des serveurs avec des ReplicaSets.
Nous allons créer ici un replicaSet composé de 5 serveurs, dont 1 primaire, 3 secondaires et un
arbitre.
Nous souhaitons automatiser le lancement d’un serveur réplicat. Pour cela, nous allons créer un
fichier de configuration (/data/mongo1.conf) Il est nécessaire de créer un fichier de configuration par
serveur (chaque serveur en théorie est sur une machine distincte).
# mongo1.conf
#Fichier de log du serveur. Le répertoire doit être créé et mongo doit avoir les droits d’écriture.
#Un fichier de log par serveur
logpath=/var/log/mongodb/mongod1.log
logappend=true
Nous souhaitons maintenant distribuer les données sur plusieurs serveurs de données.
— Consulter l’état de la distribution des données sur la console “mongos” (port 29000) :
sh.status();
— Compter le nombre du documents dans la base :
db.publis.count();
— Puis lancer une console mongo sur chaque serveur (27017, 27018) et compter :
use DBLP
db.publis.count();
Vous constaterez une différence, pourquoi ?
— Sur la console “mongos” compter les publis de “Toru Ishida”
— Idem sur chaque console de serveur
— Ajouter un nouveau shard (port 27019). Constater les changements sur le status et la répartition
sur chaque sur chaque serveur (cela peut prendre du temps)