Avez-vous besoin de faire une sauvegarde des données sur Amazon S3?

16

J'héberge 200 Go d'images de produits sur S3 (il s'agit de mon hôte de fichiers principal).

Dois-je sauvegarder ces données ailleurs, ou S3 est-il en sécurité tel quel?

J'ai essayé de monter le compartiment S3 sur une instance EC2, puis de faire une sauvegarde rsync nocturne. Le problème est qu'il s'agit d'environ 3 millions de fichiers, il faut donc du temps pour générer les différents besoins de rsync. La sauvegarde prend environ 3 jours.

Des idées pour mieux faire cela? (si c'est même nécessaire?)

Chrille
la source

Réponses:

5

J'ai fait des recherches là-dessus, assez drôle.

Vos sauvegardes sur S3 peuvent échouer en fonction de votre région en raison d'une éventuelle cohérence; l'avertissement de base est que si vous le faites suffisamment, vous aurez à un moment donné des erreurs lors de l'ouverture ou de la recherche de fichiers en tant que magie du système de fichiers en arrière-plan des synchronisations Amazon entre les serveurs, de sorte que vos sauvegardes peuvent ne pas être fiables.

Quant à savoir si vous devez les enregistrer d'une autre manière, cela dépend de votre gestion des risques. Faites-vous confiance à Amazon pour conserver vos données?

Il est possible qu'ils perdent quelque chose ou connaissent une défaillance plus importante de leur système de stockage; ils ont sans aucun doute des clauses dans leurs contrats spécifiant que s'ils perdent vos données, c'est votre problème. Pas le leur. De plus, étant donné que vos données sont hébergées ailleurs, vous ne savez pas ce qu'elles en feront; les forces de l'ordre veulent vos données? Vous ne savez peut-être même pas que quelqu'un d'autre y a accédé.

Tu lui fais confiance? Si les données ne sont pas essentielles à votre entreprise et que vous êtes prêt à accepter ce risque, il n'est pas nécessaire de les télécharger sur un stockage hors site. Si vous ne souhaitez pas risquer que vos données soient en sécurité sur les serveurs de stockage d'Amazon, vous devez prendre des dispositions pour les vider périodiquement sur votre propre stockage.

En d'autres termes, je ne pense pas qu'il y ait de réponse directe à cela, car cela dépend de votre tolérance au risque et de vos besoins commerciaux. Beaucoup de gens ne feraient pas entièrement confiance à leurs revenus uniquement sur le stockage avec le cloud, personnellement, je me sens un peu méfiant à ce sujet ...

Pour mieux faire cela, dans les discussions et la recherche, une autre approche à considérer consiste à créer un volume EBS suffisamment grand pour stocker les données, à le joindre à l'instance EC2, à y enregistrer vos données, puis vous pouvez démonter le volume et enregistrer ces données dans S3 . Je suis en train de rechercher si cela serait fait en enregistrant le fichier de volume lui-même sur S3 ou le contenu ... mais alors vous pouvez supprimer l'instance EBS lorsque vous avez terminé pour économiser les coûts de stockage.

EDIT Je vois en relisant que vous enregistrez de S3 vers l'instance EC2, et non l'inverse (même si je ne sais pas si le problème de cohérence éventuel pourrait toujours y causer des problèmes). Vous essayez d'enregistrer des données sur une instance EC2 en tant que sauvegarde? Je pense que, du point de vue des coûts, ce n'est pas une bonne tactique; il peut être moins coûteux de sauvegarder des données sur un disque local lorsque vous prenez en compte le stockage à long terme de ce type de données, ainsi que le temps de la machine virtuelle. Avec les coûts de lecteur, vous pouvez copier des données sur un disque local en tant que sauvegarde.

Je garderais toujours les avertissements sur la confiance d'Amazon et de leur stockage. Si vous souhaitez tout conserver dans Amazon S3 mais avez plus de redondance, dupliquez vos compartiments S3 entre les régions, et s'ils ont une panne affectant une région, cela ne devrait pas les éliminer tous. Vous espérez. Mais tout est possible.

Cela dépend de la valeur que vous accordez à vos données, du montant que vous êtes prêt à payer pour celles-ci et du niveau de risque que vous souhaitez tolérer.

Bart Silverstrim
la source
Merci pour votre réponse, mais je pense que vous avez mal compris. J'utilise S3 comme stockage principal (j'héberge les fichiers directement à partir de là en tant que cdn). Donc, ma question était de savoir si les fichiers sont en sécurité là-bas, ou si je dois en faire une sauvegarde quelque part (peut-être vers un autre bucker S3 ou une instance EC2)?
Chrille
Ajouté sur un montage.
Bart Silverstrim
Hmm, oui, peut-être qu'une sauvegarde locale serait plus sûre. Savez-vous si S3 et EC2 partagent le même matériel - en cas d'échec, S3 et ma sauvegarde EC2 disparaîtraient? Mes deux raisons pour effectuer une sauvegarde vers EC2 sont: (1) Il n'y a aucun frais de transfert entre EC2 et S3. Il en coûterait à peu près de copier 200 Go localement chaque semaine environ. (2) en cas de sinistre sur S3, je pourrais assez rapidement convertir mon instance EC2 pour partager les images de la sauvegarde à la place. Mais je comprends qu'une sauvegarde locale a aussi de nombreux avantages ...
Chrille
Honnêtement, je ne sais pas comment le matériel d'Amazon est configuré en arrière-plan; même si je le savais, rien ne garantit qu'ils ne le changeront pas à l'avenir.
Bart Silverstrim
4

J'ai utilisé des s3cmd s3cmd sync pour ce faire. C'est un peu comme rsync dans son fonctionnement, et peut pousser et tirer des répertoires entiers entre S3 et un autre système linux de votre choix.

Je ne vois aucune raison pour laquelle vous ne pouviez pas s3cmd syncaccéder à une instance EC2 en cours d'exécution, ni même à votre propre station de travail de développeur (ou à un serveur de stockage).

Vous voudrez peut-être configurer une instance de VPC, puis vous pourriez attribuer à un petit nœud à l'intérieur de votre VPC le rôle de serveur de sauvegarde, et lui donner à la fois une IP à l'intérieur du réseau d'Amazon, ainsi qu'à l'intérieur de votre sous-réseau local.

Tom O'Connor
la source
Ma préoccupation, qu'il devrait décider avec ses propres données financières, est le coût de la maintenance d'une instance EC2 et de l'espace EBS pour stocker ce type de données par rapport à la sauvegarde sur un disque dur externe local pour quelques centaines de dollars à la place. Si l'argent permet les frais de transfert, je le télécharge sur un disque local et le synchronise régulièrement (ce qui faisait également partie de votre solution).
Bart Silverstrim
L'EC2 d'Amazon n'est pas bon marché par aucune mesure du terme, surtout si vous voulez faire au niveau de l'entreprise, ou autre chose que les trucs simples. Si vous n'aimez pas ça, alors ce n'est peut-être pas pour vous.
Tom O'Connor
@BartSilverstrim: le transfert dans AWS n'est-il pas gratuit? Si c'est le cas, il pourrait être moins cher pour moi de copier sur EC2 que localement. J'ai une instance EC2 fonctionnant 24/7 de toute façon, donc c'est juste l'espace EBS qui coûterait.
Chrille
2

Mon conseil est que vos données sont de votre responsabilité, pas d'Amazon. Si la perte des données n'est pas si grave, alors ne faites pas votre propre sauvegarde. Si c'est le cas, prenez votre propre sauvegarde vers (au moins) un JBOD pas cher (et vérifiez régulièrement) comme je le fais.

Vous découvrirez quelle responsabilité Amazon est prête à assumer pour vos données, le jour où elles les perdront.

Tom Donnelly
la source
0

Si vous pouvez vous le permettre (comme je le fais), c'est que toutes mes données sont stockées sur mon serveur, mais en les tirant d'Amazon s3. Donc, si Amazon tombe en panne pour une raison quelconque (toucher du bois), je peux simplement extraire toutes mes données instantanément directement de mon serveur. Depuis mon serveur, je fais des sauvegardes mensuelles sur mon disque local. Comme mon site Web fait plus de 2 To sur le site.

daniel27lt
la source
Je trouve un peu flou quelle est votre recommandation. Quel est votre serveur et où est-il situé?
kasperd
0

Bien que ce soit un vieux fil, c'est la première chose qui arrive lors de la sauvegarde de Googling S3, donc j'ai pensé que j'y ajouterais ...

En faisant moi-même des recherches à ce sujet, j'ai découvert Rclone https://rclone.org/ - il s'agit d'un logiciel rsync-ish conçu pour copier entre les services de stockage de fichiers cloud et prend en charge la plupart d'entre eux. Aucune affiliation et je ne l'ai pas encore utilisé, donc je ne peux pas dire si c'est bon ou mauvais, mais j'ai pensé que cela pourrait aider quelqu'un.

Il me semble qu'il existe une opportunité pour un service hébergé qui effectue des sauvegardes «hors site» de fichiers hébergés dans le cloud (S3, Google Storage, Rackspace Cloud Files, etc.) ....

ckm
la source