blog-image

RocketChat : Migration vers une autre unité Rock64

  • dHENRY
  • 16/03/2019
  • (Durée de lecture : 2 mn)

Update : Attention cette documentation est obsolète

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” :

# Arrêt du service Rocketchat
systemctl stop 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.
cd /root/
mongodump -d rocketchat
# Création d'une archive (tar+gzip)
tar cfz dump.tgz dump
#  Nettoyage du dump
rm -r dump
# Déplacer maintenant le fichier dump.tgz vers le serveur mongodb qui accueillera la base de donnes Rocketchat
scp dump.tgz xxxxx:/root/.
# Nettoyage archive
rm dump.tgz
# Arrêtez le service mongodb
systemctl stop mongod

Préparation nouveau serveur mongodb

Sur le nouveau serveur Mongodb (rock64) :

# Installation des outils mongodb
apt install mongo-tools
# Démarrage du service mongodb
systemctl start mongod

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
# Extraction des fichiers de sauvegarde mongodb
tar xfz dump.tgz
# nettoyage de l'archive
rm dump.tgz
# Restauration de la base
mongorestore -d rocketchat dump/

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
# Suppression de l'intégralité des données (irréversible)
rm -r *
tar xvz /root/bck.tgz
rm /root/bck.tgz
# Démarrage du service mongod
systemctl start 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…

Licence de ce document : Creative Commons (CC BY-NC-ND 4.0)

CETTE DOCUMENTATION EST LIVRÉE “EN L’ÉTAT”, SANS GARANTIE D’AUCUNE SORTE ET DISTRIBUÉE DANS UN BUT ÉDUCATIF EXCLUSIVEMENT. L’AUTEUR, CONTRIBUTEURS DE CETTE DOCUMENTATION OU ©MYTINYDC.COM NE SAURAIENT EN AUCUN CAS ÊTRE TENUS RESPONSABLES DES DOMMAGES DIRECTS OU INDIRECTS POUVANT RÉSULTER DE L’APPLICATION DES PROCÉDURES MISES EN ŒUVRE DANS CETTE DOCUMENTATION, OU DE LA MAUVAISE INTERPRÉTATION DE CE DOCUMENT.