Как организовать инкрементальный бэкап S3?



@vitaly_il1

Заказчик попросил ежедневный бэкап объектов из S3.
Я за пару минут написал

aws s3 sync s3://origin-bucket/folder s3://backup-bucket/folder-CURRENT_TIMESTAMP

Но потом призадумался. Заказчик мечтает
— о чем-то инкрементальном
— да еще хорошо бы зазиппованный архив (для простоты скажем что хранятся документы, и хочется возможности откатиться к нужной версии, «как в Git»).

Насколько понимаю, эти пожелания выполнить непросто — первое по причине отсутствия простой возможноcти фильтровать объекты по дате, а второе — так как для этого придется скачивать файлы на локальную машину.
Я думаю включить versioning в S3 для бэкапа. Или есть более элегантное решение?

UPDATE: большое спасибо всем ответившим! Вы заставили меня подумать, и я понял, что надо использовать S3 versioning and replication, вместо того чтобы изобретать велосипед со скриптами и cronjobs.


Решения вопроса 3



@romesses

Как чисто «наколенный» вариант, использовать:

EC2 инстанс с запускаемым софтом:
1. Монтирование S3 (source, target) в качестве папки: goofys или s3fs.
2. В качестве резервирующего ПО: Bup для дедупликации. Умеет подобно Git…
На входе папка исходного бакета, а на выходе — целевая.

Сам не пробовал. Просто как идея.



2

комментария


Ответы на вопрос 0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *