我有一个需要将文件从一个S3存储桶复制到另一个S3存储桶的要求。这些存储桶存在于不同的AWS账户中。 我尝试使用s3 sync命令。但是,对于此目标IAM用户,应授予其对源存储桶的读取访问权限。我没有使用此命令,因为我没有同一个IAM用户可以访问两个帐户。到目前为止,有两个AIM用户,每个用户一个。
反正我可以使用s3-dist-cp命令来满足此要求吗?
答案 0 :(得分:1)
截至撰写本文时,您不能为两个不同的存储桶配置两个不同的访问密钥。
您可以在多个帐户中配置同一IAM用户,并允许他们从一个帐户读取并向另一个帐户写入。 IAM角色可以在这里实现它。
如果您不想跨帐户使用同一IAM用户,请复制到本地hdfs并移回目标存储桶。
hadoop distcp -Dfs.s3a.awsAccessKeyId = -Dfs.s3a.awsSecretAccessKey = s3a:// sourcebucket hdfs:// tempcopy /
hadoop distcp -Dfs.s3a.awsAccessKeyId = -Dfs.s3a.awsSecretAccessKey = hdfs:// tempcopy / s3a:// destbucket
希望有帮助。