RocketChat : Migration mongodb vers une autre unité Rock64

RocketChat : Migration mongodb vers une autre unité Rock64

16 mars 2019 bases de données chat privé Support 0

La documentation Rocketchat préconise de ne pas utiliser les services mongod et rocketchat sur une même unité, afin d’améliorer les performances…

Sauvegarde des données

Se connecter au serveur disposant du service “Rocketchat” :

  • systemctl stop rocketchat / Arrêt du service Rocketchat
  • cd /root/;mongodump -d rocketchat / Sauvegarde de la base mongodb utilisée pour stocker les conversations Rocketchat. Cette instruction crée un répertoire dump contenant les données nécessaires pour une restauration.
  • tar cfz dump.tgz dump / Création d’une archive (tar+gzip).
  • rm -r dump / Nettoyage du dump
  • Déplacer maintenant le fichier dump.tgz vers le serveur mongodb qui accueillera la base de donnes Rocketchat (scp dump.tgz xxxxx:/root/.)
  • rm dump.tgz / Nettoyage archive
  • systemctl stop mongod / Arrêtez le service mongodb

Préparation nouveau serveur mongodb

Sur le nouveau serveur Mongodb (rock64) :

Restauration des données

Avec la commande mongorestore

  • “Uploader” le fichier dump.tgz précédemment crée sur le nouveau serveur (dans le répertoire /root)
  • cd /root;tar xfz dump.tgz / Extraction des fichiers de sauvegarde mongodb
  • rm dump.tgz / nettoyage de l’archive
  • mongorestore -d rocketchat dump/ / Restauration de la base

Par copie du filesystem original

Une autre méthode de restauration reste possible, attention, possible uniquement dans le cas où vous déplacer l’intégralité des bases de données mongodb.
Sur le serveur original, créer une archive des bases mongodb, le service mongod doit être stoppé :
systemctl stop mongod;cd /var/lib/mongodb; tar cvz /root/bck.tgz *
Envoyer le fichier bck.tgz sur le nouveau serveur ( scp /root/bck.tgz xxxxx:/root/.) et supprimer l’archive : rm /root/bck.tgz

Sur le nouveau serveu

  • cd /var/lib/mongodb / Répertoire des données mongodb
  • rm -r * / Suppression de l’intégralité des données (irréversible)
  • tar xvz /root/bck.tgz
  • rm /root/bck.tgz
  • systemctl start mongod / Démarrage du service mongod

Redémarrage Rocketchat

Sur le serveur original : systemctl start rocketchat (patience… vous pouvez consulter le démarrage à l’aide de la commande tail -f /var/log/syslog

Conclusion

Les premiers tests montrent de manière significative, une amélioration des performances avec une utilisation d’unités de type “Rock64”. Surtout sur l’envoi d’images…