Faire un backup de son blog sur Amazon S3

On utilise Amazon S3 depuis 3 mois pour les fichiers statiques de 64k. Il s’agit d’un service d’hébergement très performant et bon marché utilisant l’infrastructure de serveurs d’Amazon. Mais S3 sert également à faire des backups, ce qui nous intéresse plus particulièrement dans ce billet.

J’avais déjà vu cet article de Paul Stamatiou qui explique comment faire un backup de son site avec ce service, mais je n’avais pas vraiment pris le temps de tester. Je suis tombé sur un billet de Christina Warren qui m’a décidé, puisqu’il décrit toute la procédure pour faire un backup d’un (gs) Grid-Service de Media Temple sur Amazon S3. Justement le même hébergement que 64k.
La procédure devrait également fonctionner si votre hébergement dispose d’un accès SSH et de Ruby On Rails, mais elle est principalement destinée aux (gs) Grid-Service. Mais bon comme presque tout le monde en a un ^-^

Pour commencer, connectez-vous en SSH à votre serveur :

ssh serveradmin%monblog.com@monblog.com

Récupérez S3Sync avec wget :

wget http://s3.amazonaws.com/ServEdge_pub/s3sync/s3sync.tar.gz

Décompressez l’archive

tar xvzf s3sync.tar.gz

Excécutez cette série de commande :

rm s3sync.tar.gz
cd s3sync
mkdir certs
cd certs
wget http://mirbsd.mirsolutions.de/cvs.cgi/~checkout~/src/etc/ssl.certs.shar
sh ssl.certs.shar
cd ..
mkdir s3backup

Cela va supprimer l’archive, créer les différents dossiers et mettre en place les certificats SSL nécessaires à S3.

Maintenant il faut aller dans le dossier /users/.home/s3sync que vous venez de créer et éditer le fichier s3config.yml.sample avec vos aws_access_key et aws_secret_access_key.

aws_access_key_id: XXXXXXXXXXXXXXXXXXXX
aws_secret_access_key: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ssl_cert_dir: /home/XXXXX/users/.home/s3sync/certs
AWS_CALLING_FORMAT: SUBDOMAIN

ssl_cert_dir correspond au chemin vers votre dossier SSL, c’est-à-dire /home/xxxxx/users/.home/s3sync/certs où xxxx est le nom de votre serveur. Vous pouvez connaitre ce dernier en tapant pwd en mode console. Il faut également ajouter cette ligne : AWS_CALLING_FORMAT: SUBDOMAIN.
Sauvez ce fichier et renommer le en s3config.yml.

Editez le fichier s3config.rb et remplacer la ligne avec confpath = [xxxxx] par

confpath = ["./", "#{ENV['S3CONF']}", "#{ENV['HOME']}/.s3conf", "/etc/s3conf"]

Maintenant téléchargez le script backup_server.sh et modifiez-le avec vos paramètres (le dossier de votre blog à sauvegarder, le nom de votre serveur à la place de xxxxx, vos paramètres MySQL, le nom de votre bucket S3, etc).

Placer ce fichier dans le dossier /data et modifier ses permissions (755) :

chmod a+x backup_server.sh

Vous pouvez maintenant testez le script :

cd data
./backup_server.sh

Si tout fonctionne vous devriez trouver les backups sous forme d’archive gzip sur votre bucket Amazon S3.

Backup Amazon S3
Backup Amazon S3

Pour peaufiner le tout, il ne reste plus qu’à configurer une tâche journalière qui va s’occuper de faire ça automatiquement. Il faut vous rendre dans l’interface de votre (gs) Grid-System et cliquer sur Cron Jobs. Le chemin de votre est script est :

/home/xxxxx/data/backup_server.sh

Et voilà, votre blog sera désormais sauvegardé chaque jour !

Une contraction par jour…

… en forme toujours.

Je corrige ce que je disais dans le dernier article « Je n’ai jamais eu aussi mal aux reins de ma vie » (pendant les 4h de contractions entre mardi et mercredi)…. Finalement c’est HIER que je n’ai jamais eu aussi mal aux reins de ma vie! Et ça a pris 3 minutes pour m’en persuader, pas 4 heures.

Le soucis des contractions douloureuses (aieuuuhhh) que j’ai ressenties jusque maintenant, c’est que systématiquement, j’étais couchée; Je gère tente de gérer en m’asseyant bien droite, le dos calé contre des coussins, en appuyant sur mes reins et en respirant tentant de respirer bien fort et calmement. Quand je suis dans cette position ça va +- mieux. Le tout est de réussir de passer de la position couchée à la position assise. C’est un supplice. Celui qui veut que je prenne la position gynécologique (couchée, pieds dans les étriers et surtout reins cambrés) pour accoucher, il se prendra les étriers où je pense.

Bon sang comment je vais survivre à l’accouchement.

A la prochaine, je tente une autre position pour gérer.