如何将 aws 私有存储桶复制到 azure 存储

How to copy an aws private bucket to azure storage

我想将包含大文件的文件夹复制到 Azure 存储。

我发现这篇文章展示了如何将 public aws 存储桶复制到 azure:https://microsoft.github.io/AzureTipsAndTricks/blog/tip220.html

但是如果 aws 存储桶是私有的,我该怎么做呢?我如何将凭据传递给 azcopy,以便它直接将我的文件从 aws 存储桶复制到 azure?

一种解决方案(虽然不是理想的解决方案)是您可以请求 AWS Snowball with your bucket data on it, then use Azure Import/Export 服务将 Snowball 发送到 Azure 进行摄取。

您是否尝试过在复制期间生成带有有限 ttl 的预签名 url?

https://docs.aws.amazon.com/AmazonS3/latest/dev/ShareObjectPreSignedURL.html

这样你就可以执行 azcopy

url 两边都包含 authn/authz 所需的信息。

来自Copy data from Amazon S3 to Azure Storage by using AzCopy | Microsoft Docs

AzCopy is a command-line utility that you can use to copy blobs or files to or from a storage account. This article helps you copy objects, directories, and buckets from Amazon Web Services (AWS) S3 to Azure blob storage by using AzCopy.

本文介绍了如何同时提供 Azure 和 AWS 凭据。

需要注意的一件事是 Amazon S3 无法 'send' 将数据存储到 Azure Blob 存储。因此,有些东西需要在 S3 上调用 GetObject() 来检索数据,然后将其发送到 Azure。我假设 Azure Blob Storage 不能直接从 Amazon S3 请求数据,所以这意味着数据将从 S3 'downloaded',然后 'uploaded' 到 Azure。为了提高效率,运行 来自 AWS 或 Azure 虚拟机的 AzCopy 命令,以减少通过您自己的计算机发送的延迟。