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) :
- Installer le service mongod (voir https://www.mytinydc.com/index.php/2019/02/19/installer-mongodb-3-6-x-sur-un-rock64-arm64/)
# 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.