我以前创建了一个Amazon Web Services S3存储桶,但未指定要存储的地理区域。如何确定存储桶所在的区域?
我的理由是,我正准备在数据库中运行一些“Amazon Elastic MapReduce”作业,这项服务会询问我希望该作业运行的区域。由于尽可能接近数据来运行作业似乎是合理的,我想知道数据的实际位置。
Elastic MapReduce中的选项是:
如果这些是S3中可用的完全相同的位置,我不是。无论如何,我想确定一个至少最接近我的数据的那个。
答案 0 :(得分:6)
除非你另有说明,否则它将是北美。
如果您登录Amazon web services并查看使用情况报告,它会告诉您这是欧盟/美国还是其他。
从阅读Amazon S3 / MapReduce的内容来看,两个应用程序之间的区域不同,因此您可能希望坚持使用欧盟或美国(而不是东部或西部)。
干杯
答案 1 :(得分:3)
您可以使用GET Location Bucket请求。很可能你的水桶在美国。
答案 2 :(得分:0)
对于遇到此问题的任何其他人,无论您是否是存储桶所有者(这是GET bucket location的约束),都需要一种确定存储桶区域的方法,请使用HEAD Bucket ,例如:
curl -sI foo.s3.amazonaws.com | awk '/^x-amz-bucket-region:/ { print $2 }'
返回桶“ foo”的头文件x-amz-bucket-region
的值,在这种情况下:
us-east-1