gpt4 book ai didi

amazon-web-services - 如何在北京(中国)存储桶和全局存储桶之间同步 S3 中的数据?

转载 作者:行者123 更新时间:2023-12-03 09:29:22 34 4
gpt4 key购买 nike

北京(中国)地区非常独特,因为它几乎所有的东西都是独立的(与 AWS 全局分开)。例如,要使用 AWS CLI 列出我们必须指定的对象 regionendpoint-url :

aws --region cn-north-1 \
--endpoint-url https://s3.cn-north-1.amazonaws.com.cn \
--profile AN_AWS_CN_PROFILE \
s3 ls s3://AN_AWS_CN_BUCKET/

我的问题是如何在北京(中国)存储桶和全局存储桶之间同步数据?首先,无法使用指定的 region 识别全局存储区。 & endpoint-url以上。例如,
aws --region cn-north-1 \
--endpoint-url https://s3.cn-north-1.amazonaws.com.cn \
--profile AN_AWS_CN_PROFILE \
s3 cp s3://AN_AWS_CN_BUCKET/ s3://AN_AWS_IRELAND_BUCKET/

会给

fatal error: An error occurred (NoSuchBucket) when calling the ListObjects operation: The specified bucket does not exist



(目标存储桶确实存在。)

到目前为止,我已经探索了 CLI 参数,以及 .aws/config文件来定义配置文件。也许可以使用多个 profile在单个命令中,但似乎无法配置 endpoint-url.aws/config ,因为没有提到 here .

现在我只是将文件复制到本地然后上传,随着数据集的快速增长,这将成为一个问题。使用 EMR 可以解决扩展问题,但它增加了额外的复杂性。我想知道是否有更好且可能更简单的解决方案?谢谢你。

最佳答案

BJS/ZHY 区域与经典区域在不同的分区下(BJS/ZHY 为 aws-cn,其他区域为 aws)

不同的分区阻止了来自 BJS 和经典区域的账户相互交谈——他们无法理解来自其他分区的 ARN,也无法将来自其他分区的账户列入白名单或授予权限。

中国地区的 S3 也存在一些问题,即某些 S3 url/IP 被本地网络提供商阻止。

根据我的经验,实现这一目标的最佳方法是创建一个 Lambda 函数将 S3 对象上传到经典分区中的存储桶,或者配置 SNS->SQS->SQS 监听器模式。

关于amazon-web-services - 如何在北京(中国)存储桶和全局存储桶之间同步 S3 中的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45609558/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com