Допустим, у меня включена поддержка версий S3 для моего сегмента: http://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html
Затем, скажем, кто-то (например, младший сотрудник) портит корзину S3 (удаляет некоторые файлы случайно и т. Д.)
Как я могу восстановить весь версионный контейнер в определенный момент времени? Я полагаю, что это возможно, учитывая API S3, но я бы предпочел не писать такой скрипт сам, опасаясь пропустить что-то (я не эксперт AWS).
Есть ли хорошее решение этой проблемы? Я использую корзину S3 в качестве хранилища изображений для моего приложения на Rails, поэтому что-то на основе Ruby, которое я мог бы использовать в качестве грабли, было бы идеальным.
Если я правильно понимаю документацию , когда у вас включено управление версиями, удаление файла просто возвращает «последнюю» версию на один номер версии. Это, однако, не дает возможности восстановить целое ведро. Это делает предыдущие версии в S3 не подходящими для ваших нужд (например, восстановление после удаления).
Сохраните резервную копию в другом месте, а также на всякий случай. У Stack Overflow есть вопрос / ответ по этому вопросу
s3cmd
. Я уверен, что вы могли бы найти скрипт на основе Ruby где-нибудь или попросить помощь на этом сайте, если вам это нужно.источник
s3cmd
, но мне нравится иметь версионные снимки на S3.delete
вставка маркера удаления и последующие запросы возвращают 404, а не предыдущую версию. Чтобы ВОССТАНОВИТЬ, вы можете скопировать старую версию в новую или вы можете сделать этоdelete
с определенной версией текущего объекта - тогда будущимget
будет предоставлена вторая до последней версии. docs.aws.amazon.com/AmazonS3/latest/dev/... быть справедливым, доку вокруг ведра версионности имеет тенденцию быть расплывчатым и не хватает ...Вот небольшой удобный php-скрипт, который я использовал для восстановления своей корзины из резервной копии с версионированием:
Чтобы вернуться в ведро с включенным контролем версий
восстановить резервную копию из файлов, которые были версии между этими двумя временными метками
Вы можете скачать скрипт PHP здесь: http://boulderapps.co/post/backing-up-and-restoring-s3-to-a-versioned-bucket
источник