Я хочу отразить свои ведра Amazon S3. Я хочу сделать это, потому что 1) я не хочу, чтобы все мои данные существовали только у одного поставщика; и 2) в случае ошибки программного обеспечения или нарушения безопасности, я хочу сделать резервную копию данных.
Я могу зеркалировать на локальный диск с помощью функции синхронизации s3cmd, но она не масштабируется для очень больших сегментов и не полезна для быстрого восстановления из резервной копии. Я бы предпочел, чтобы мои данные были отражены для конкурента, такого как Rackspace Cloud Files.
У кого-нибудь есть предложения по простому и надежному способу автоматизировать такое зеркалирование на Linux-боксе?
Ответы:
Вы можете использовать утилиту " s3cmd " с опцией "sync", хотя я наткнулся на ваш вопрос, потому что я пытаюсь выяснить, не испортил ли этот механизм синхронизации мои резервные копии двойственности.
источник
У меня возникла та же проблема, поэтому я разработал небольшую программу, специально разработанную для зеркалирования одного сегмента S3 в другой; Я называю это s3s3mirror.
Сначала я попробовал подход «s3cmd sync», но у меня было ведро с сотнями тысяч объектов, и «s3cmd sync» просто сидел там, ничего не делая, но занимая все больше и больше памяти, пока моя система не умерла. Я разработал s3s3mirror, чтобы сразу приступить к работе, использовать 100 параллельных потоков (настраиваемых) и скромно использовать процессор и память. Если я сам так скажу, это чертовски быстро.
Я сделал это доступным на github под лицензией Apache. Если вы решите повернуть его, пожалуйста, дайте мне знать, что вы думаете, и если есть что-то, что можно улучшить.
Вот ссылка: https://github.com/cobbzilla/s3s3mirror
Спасибо!
источник
У Amazon теперь есть поддерживаемый инструмент для этого, aws cli .
Он может отражать либо в направлении между локальным и удаленным, либо между двумя местоположениями s3.
К сожалению, он не имеет прямой поддержки для не-S3 локаций, таких как стоечное пространство, но я подумал, что это будет полезным ответом для некоторых, кто найдет этот вопрос. Как я, прежде чем я нашел это.
В частности,
источник
Проверьте сервер джунглей . Он работает с Amazon S3 и Rackspace Cloud Files. Вы можете смонтировать S3 и CF в разных местах вашей файловой системы, а затем использовать rsync между ними.
источник
Вы можете попробовать установить ведра с предохранителем, используя s3fs . После этого вы можете rsync из точки монтирования на локальный диск.
источник
Вы можете настроить сервер Minio , открытый исходный код и S3-совместимый API. Вы можете настроить его на EC2 или на любом облачном провайдере в качестве альтернативного сервера и периодически использовать команду клиентов Minio для
mc mirror
получения зеркала S3. Вы можете автоматизировать то же самое, написав простой скрипт cron.Надеюсь, поможет. Отказ от ответственности: я работаю на Minio
источник
Для онлайн-синхронизации сегментов вы можете использовать межрегиональную репликацию. Таким образом, все обновления в исходной корзине будут автоматически синхронизированы с корзиной S3 в другом регионе: https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html.
Имейте в виду, что для корзины необходимо включить управление версиями, поэтому, если вы делаете обновления / удаления объектов в корзинах, вы захотите включить политику жизненного цикла для удаления старых объектов.
источник