Actualités Tutoriels

LSCI #5 : sauvegarder son serveur avec Datacube

Header LSCI Datacube

Sauvegarder son serveur est certainement l’une des choses les plus importantes pour un administrateur et de nombreuses solutions existent. Pour ce 5ème article dédié à la sauvegarde, nous allons découvrir ensemble Datacube, un service sauvegarde pour vos serveurs, développé par Flemzord.

Actuellement en beta, Datacube est accessible gratuitement pour tous. Il est ainsi possible de tester le service jusqu’à sa sortie officielle avec une limite de sauvegarde de 50Go et tout cela gratuitement. Une surprise sera offerte aux utilisateurs de la beta lorsque Datacube sera officiellement disponible. Deux offres seront alors disponibles (9,99€ et 19,99€ par mois) avec 250Go d’espace disponible. La différence résidera dans la réplication des données qui se fera sur 3 serveurs dans l’offre pro.

Offres Datacube

 Le fonctionnement de Datacube est très simple. Il vous suffit de créer un compte sur le site et d’installer l’agent du vos serveurs. Il ne vous reste plus qu’à créer vos fichiers de configuration afin de définir ce que vous souhaitez sauvegarder. Les sauvegardes sont ensuite chiffrées et envoyées en FTP sur le stockage de Datacube. Vous pouvez ensuite les récupérer simplement via votre dashboard sur le site.

Inscription et ajout d’un serveur

La première étape va bien entendu être de créer un compte sur Datacube.io. Profitez-en, le service est encore en beta et est donc gratuit pendant quelques jours. Il faudra ensuite ajouter un serveur en indiquant son nom ainsi que son adresse IP/domaine.

Datacube Panel
Panel de gestion de vos sauvegardes.

Une fois le serveur ajouté, vous obtiendrez toutes les informations nécessaires pour pouvoir le sauvegarder. En effet, pour la configuration initiale du script, vous aurez besoin de l’identifiant du serveur ainsi que des informations de connexion FTP pour que l’agent puisse déposer les fichiers de sauvegarde chez Datacube.

Installation de l’agent Datacube

L’installation de l’agent est très simple et se fait avec une simple commande :

wget --no-check-certificate -N https://raw.githubusercontent.com/flemzord/datacube/master/install.sh && bash install.sh

Il vous suffit ensuite de remplir les champs demandés par le script d’installation. Les informations sont disponibles directement dans votre dashboard, sur la page associée à votre serveur. Vous pouvez y retrouver les accès FTP ainsi que l’identifiant de votre serveur.

Datacube Script Installation

La sauvegarde s’effectue par défaut tous les jours à 1h du matin. Vous pouvez bien entendu modifier cela en modifiant la tache cron associée :

cat /etc/cron.d/datacube

Et c’est tout pour l’installation ! Nous allons maintenant configurer l’outil pour qu’il sauvegarde ce que nous souhaitons.

 Sauvegarde d’un site WordPress

Par défaut, rien n’est sauvegardé par l’agent Datacube. Nous allons donc créer un script personnalisé qui dans cet exemple va nous permettre de sauvegarder un site sous WordPress. Nous allons donc sauvegarder à la fois le répertoire contenant les fichiers du CMS ainsi que la base de données associée.

Il nous faut tout d’abord créer le fichier de configuration :

nano /opt/datacube/custom_script/wordpress.cfg

Puis nous y collons le contenu suivant (pensez à modifier les informations de votre base de données) :

#!/bin/bash
# Auteur : Maxence Maireaux
# Modifie par : Edouard Patout
# Version : 1.0

#############
# Variables #
#############

. /etc/datacube/datacube.cfg
. /opt/datacube/config/no-touch.cfg

HOST="localhost"
USER="wordpress"
PASSWD="password"
DATABASE="wordpress"

dir_sites="/var/www/wordpress"

##########
# Script #
##########

# Backup des fichiers du site
cd ${dir_sites}
for site_list in `ls`; do
 tar czf ${BACKUP_DIR}/backup_Files_${site_list}.tar.gz ${site_list};
done

# Backup des bases de données
${mysqldump_bin} -h $HOST -u $USER -p$PASSWD --events --opt -Q -B $DATABASE | ${gzip_bin} -c > ${BACKUP_DIR}/backup_MySQL_$DATABASE.sql.gz

Il ne reste plus qu’à ajouter le script dans le fichier load_script.sh pour qu’il soit appelé lors du lancement du backup :

nano /opt/datacube/load_script.sh

Et le remplir de cette façon :

#!/bin/bash
# /!\ Use folder custom_script
### Example :
#Sauvegarde des fichiers
#echo "On lance la sauvegrade des fichiers"
sh /opt/datacube/custom_script/wordpress.cfg

Votre installation de WordPress sera donc sauvegardée sur les serveurs Datacube toutes les nuits à 1h du matin. Vous pourrez ensuite récupérer vos sauvegardes directement sur votre Dashboard pour les restaurer facilement.

Restauration

Si vous avez un jour besoin de restaurer une sauvegarde (je ne vous le souhaite pas), il vous suffit de la récupérer sur votre dashboard et de la déchiffrer à l’aide de la commande suivante :

openssl aes-256 -d -a -in VOTRE_SAUVEGARDE.tar.gz -out VOTRE_SAUVEGARDE_decrypt.tar.gz

Il faudra alors lui indiquer la clé de déchiffrement présente dans votre fichier de configuration /etc/datacube/datacube.cfg. Il ne vous restera plus qu’à extraire votre archive et remettre les fichiers en place. Ce n’est pas parfaitement intuitif mais ça a le mérite d’être tout à fait fonctionnel. Peut-être qu’une méthode de restauration intégrée sera mise en place dans une future mise à jour ?


Pour conclure

Datacube est donc une solution de sauvegarde simple, efficace et sans prise de tête. L’installation se fait en quelques minutes et la sauvegarde est quasiment opérationnelle dans la foulée. La solution est encore jeune mais nul doute que l’ajout de nouvelles fonctionnalités d’ici quelques mois permettra à Datacube de devenir une solution vraiment parfaite pour la sauvegarde quotidienne de nos serveurs.

Related posts

Razer : Chroma s’ouvre et les switches se libèrent

Edouard Patout

Sauvegarder son NAS Synology sur le Public Cloud OVH

Julien Doclot

Installer un certificat Let’s Encrypt sur Postfix/Dovecot

Julien Doclot

Leave a Comment

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More