Vraag Hoe maak ik een back-up van een AWS S3-bucket zonder de bronbucker te verslaan [gesloten]


Is er een manier om te herstellen van onbedoelde verwijderingen van een Amazon S3 Bucket?

We hebben kritieke informatie in onze emmers en ik moet het risico van onbedoelde of kwaadwillende verwijderingen van de bucket zelf beperken.

Ik weet dat ik de hele bucket lokaal kan synchroniseren, maar dit is niet zo praktisch als mijn bucket-grootte 100 GB is.

Enige ideeën over back-upstrategieën?


37


oorsprong


Hier is een S3-gids voor backupstrategieën die ik heb geschreven: eladnava.com/backing-up-your-amazon-s3-buckets-to-ec2 - Elad Nava


antwoorden:


Een andere benadering is om S3-versiebeheer op uw bucket in te schakelen. U kunt vervolgens verwijderde bestanden herstellen, enz. Raadpleeg de S3-documentatie voor informatie over het inschakelen van dit

Het gebruik van tools van derde partijen zoals BucketExplorer maakt het werken met versioning behoorlijk triviaal (door de API zelf rechtstreeks aan te roepen).

U kunt ook verwijderen van meerdere factoren inschakelen voor uw S3-buckets - waardoor "per ongeluk verwijderen" net iets moeilijker wordt;)

Meer geen Multi-Factor Authenticatie Verwijderen
Meer over het verwijderen van objecten


21



De vraag is om dit te bereiken zonder versiebeheer. - Anuruddha


Je zou s3cmd kunnen gebruiken http://s3tools.org/s3cmd

Dus om een ​​back-up te maken van een bucket genaamd mybucket

s3cmd mb s3://mybucket_backup
s3cmd --recursive cp s3://mybucket s3://mybucket_backup

13



Is er een snellere manier om dit te doen? Als er n-sleutels in de bucket zitten, zijn er ten minste n verzoeken om te kopiëren plus enkele voor het vermelden (en waarschijnlijk voor het controleren van de resultaten). Dit kan enige tijd duren voor grote emmers. - Kariem
Kun je de back-upbewerking gedetailleerd beschrijven wanneer mybucket beschadigd is en je mybucket_backup moet herstellen? - Augustin Riedinger


Dit is geen goedkope oplossing, maar als je emmers echt kritisch zijn, doe je het als volgt: boot een Amazon EC2-instantie en synchroniseer de inhoud daar periodiek.

Amazon EC2 is hun virtualisatie-hostingprovider. Je kunt voorbeelden van Linux, Windows, etc draaien en alles draaien wat je maar wilt. Je betaalt per uur en je krijgt lokaal een behoorlijk grote opslagruimte voor die server. Ik gebruik bijvoorbeeld de instantie "grote" grootte, die wordt geleverd met 850 GB lokale schijfruimte.

Het leuke is dat het zich op hetzelfde netwerk als S3 bevindt en dat je onbeperkte overschrijvingen tussen S3 en EC2 krijgt. Ik gebruik de $ 20 Jungle Disk software op een Windows EC2-instance, waarmee ik mijn S3-buckets kan openen alsof het lokale schijfmappen waren. Dan kan ik geplande batch-bestanden maken om dingen uit S3 te kopiëren en naar mijn lokale EC2-schijfruimte. Je kunt het automatiseren om elk uur back-ups te maken, of, als je wilt gokken, JungleDisk (of zijn Linux-equivalenten) instellen om eens per uur te synchroniseren. Als iemand een bestand verwijdert, heb je minimaal een paar minuten de tijd om het terug te krijgen van EC2. Ik zou echter regelmatig de gescripteerde back-ups aanbevelen - het is eenvoudig om een ​​paar dagen back-ups te houden als je ze comprimeert tot een volume van 850 GB.

Dit is echt handig voor het verzenden van SQL-logboeken, maar ik kan zien hoe het uw doel ook zou bereiken.


6



Ik denk dat je een micro-instantie zou kunnen gebruiken en zoveel EBS (Elastic Block Storage) zou kunnen toevoegen als je nodig hebt. Kan een goedkopere optie zijn. - Shawn Vader


Een mogelijke oplossing zou kunnen zijn om gewoon een "reserve-emmer" te maken en daar uw gevoelige informatie te dupliceren. In theorie zijn uw gegevens veiliger in S3 dan op uw harde schijf.

Ook weet ik niet zeker of onbedoelde verwijderingen een echt probleem zijn, omdat u dat moet doen per ongeluk verwijder al uw bucket-sleutels voordat u de bucket kon verwijderen.


5



+1 omdat het vrij moeilijk is om 'per ongeluk' alles in een bucket te verwijderen en vervolgens de bucket ook te verwijderen.
als je een tool als s3cmd gebruikt, is het niet moeilijker om een ​​volledige mappenboom te verwijderen met rm -rf - jberryman
Hoe zit het met Amazon Glacier? Is het een optie? - Tony


Een andere mogelijke oplossing is om uw bucket naar de Europa-zone te repliceren in S3. Hierdoor kan de emmer na uw onopzettelijke verwijdering lang genoeg aanhouden om te herstellen.


5



Bucket-replicatie is een geweldige optie. Gebruik voor een extra beveiligingslaag de replicatie van meerdere accounts om te zorgen dat elke schending van de bronaccount geen gegevensverlies tot gevolg heeft. - Gareth Oakley


Om Brent's (uitstekend) antwoord een beetje aan te passen; het is niet nodig om het exemplaar aan de gang te houden. Maak een EC2 AMI die uw gegevens naar beneden haalt, deze synchroniseert met een EBS-volume, snapshots maakt van dat volume en zichzelf afsluit.

Je zou het volume ook zelf kunnen laten werken, maar snapshoting zou voldoende moeten zijn voor een back-up. Als je aangepaste AMI dit allemaal doet (inclusief zichzelf afsluiten nadat het gedaan is) zonder interactie, dan moet je 'backup' script gewoon 'ec2run -n 1 -t m1.small ami-' en vuur en vergeet.


5



Ik hou van dit idee dat anderen, dit is meer redelijke en goedkopere oplossing. - BMW