J'ai une instance EC2 exécutant un serveur Web qui stocke les fichiers téléchargés des utilisateurs sur S3. Les fichiers sont écrits une seule fois et ne changent jamais, mais sont parfois récupérés par les utilisateurs. Nous accumulerons probablement quelque part entre 200 et 500 Go de données par an. Nous souhaitons garantir la sécurité de ces données, en particulier contre les suppressions accidentelles, et souhaiter pouvoir restaurer les fichiers supprimés quelle qu'en soit la raison.
J'ai lu des informations sur la fonction de gestion des versions pour les compartiments S3, mais je n'arrive pas à trouver si la récupération est possible pour les fichiers sans historique de modification. Consultez les documents AWS ici sur la gestion des versions:
http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectVersioning.html
Dans ces exemples, ils ne montrent pas le scénario dans lequel les données sont téléchargées, mais jamais modifiées, puis supprimées. Les fichiers supprimés dans ce scénario sont-ils récupérables?
Ensuite, nous avons pensé que nous pourrions simplement sauvegarder les fichiers S3 sur Glacier en utilisant la gestion du cycle de vie des objets:
http://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
Mais, il semble que cela ne fonctionnera pas pour nous, car l'objet fichier n'est pas copié dans Glacier mais déplacé vers Glacier (plus précisément, il semble que ce soit un attribut d'objet qui soit modifié, mais de toute façon ...).
Il semble donc qu'il n'y ait aucun moyen direct de sauvegarder les données S3, et le transfert des données de S3 vers des serveurs locaux peut prendre du temps et entraîner des coûts de transfert importants au fil du temps.
Enfin, nous avons pensé créer un nouveau bucket chaque mois pour servir de sauvegarde complète mensuelle, et copier les données du bucket d'origine vers le nouveau le jour 1. Puis utiliser quelque chose comme la duplicité ( http://duplicity.nongnu.org/ ), nous synchroniserions le compartiment de sauvegarde tous les soirs. À la fin du mois, nous plaçions le contenu du compartiment de sauvegarde dans le stockage Glacier et créons un nouveau compartiment de sauvegarde en utilisant une nouvelle copie actuelle du compartiment d'origine ... et répétons ce processus. Il semble que cela fonctionnerait et minimiserait les coûts de stockage / transfert, mais je ne suis pas sûr que la duplicité permette les transferts de compartiment à compartiment directement sans apporter les données au client contrôlant au préalable.
Donc, je suppose qu'il y a quelques questions ici. Premièrement, le contrôle de version S3 permet-il la récupération de fichiers qui n'ont jamais été modifiés? Existe-t-il un moyen de "copier" des fichiers de S3 vers Glacier que j'ai manqué? La duplicité ou tout autre outil peut-il transférer des fichiers entre des compartiments S3 directement pour éviter les coûts de transfert? Enfin, suis-je loin de la marque dans mon approche de la sauvegarde des données S3?
Merci d'avance pour toute information que vous pourriez fournir!