Как синхронизировать два S3-совместимых контейнера, имеющих разные учетные данные?

Как синхронизировать два S3-совместимых контейнера, имеющих разные учетные данные?

У меня есть MinIO bucket (который использует API S3 для доступа), и я хочу скопировать все его данные в AWS S3 bucket. Они оба используют один и тот же API, но я не могу найти инструмент, который позволяет мне копировать напрямую из одного bucket в другой, используя два набора учетных данных.

Единственный способ, который я могу придумать, — это s3cmdзагружать файлы по одному, используя учетные данные MinIO, а затем использовать AWD CLI для загрузки их в S3.

Кто-нибудь знает лучший способ?

решение1

Вы можете использоватьмини-клиентдля копирования содержимого из одного бакета в другой. Если я настрою два псевдонима в minio:

mc alias set source https://minio-server... minio_access_key minio_secret_key
mc alias set destination https://s3.amazonaws.com/ aws_access_key aws_secret_key

Затем я могу скопировать отсюда sourceвот destinationтак:

mc cp source/bucket/path/to/file destination/bucket/path/to/file

Я бы сказал, что в целом клиент minio, вероятно, является лучшим доступным s3 cli. Нет смысла использовать s3cmd для одной операции, aws cli для другой и т. д. Просто используйте mc.

Связанный контент