Aws-cli: aws s3api create-bucket 为 us-east-2 引发错误

创建于 2017-05-12  ·  16评论  ·  资料来源: aws/aws-cli

aws s3api create-bucket --bucket dev-xxxx-com-state --region us-east-2

调用 CreateBucket 操作时发生客户端错误 (IllegalLocationConstraintException):未指定的位置约束与此请求发送到的区域特定端点不兼容。

适用于 us-east-1。

aws --版本
aws-cli/1.7.45 Python/2.7.10 达尔文/16.5.0

documentation guidance s3api service-api

最有用的评论

对于那些希望通过 CLI 创建存储桶的人,请运行以下命令:

aws s3api create-bucket --bucket my-bucket-name --region us-west-2 --create-bucket-configuration LocationConstraint=us-west-2

所有16条评论

您需要为除us-east-1之外的每个区域指定位置约束。 有关示例,请参阅文档

或者,您可以使用mb来为您处理。

即使我使用了 LocationConstraint 但最终得到了异常,检查参数的详细信息表明我们有有限的位置列表。 我可以使用 AWS Web 控制台创建区域为 us-east-2 的存储桶,但即使在使用区域为 us-east-2 的 locationconstraint 后也无法通过 awscli create-bucket 创建存储桶。

{
“位置约束”:“欧盟”|“eu-west-1”|“us-west-1”|“us-west-2”|“ap-south-1”|“ap-southeast-1”|“ap -southeast-2"|"ap-northeast-1"|"sa-east-1"|"cn-north-1"|"eu-central-1"
}

mb 似乎是替代方法,并会尝试,但 awscli create-bucket 应该修复这种不一致。

撞。

在这里面临与重复/博托相同的问题......(eu-central-1)
在桶创建尝试我得到:

<Error><Code>IllegalLocationConstraintException</Code><Message>The EU location constraint is incompatible for the region specific endpoint this request was sent to.</Message><RequestId>237A164CEBB07087</RequestId><HostId>oEDaB4OT/MlUGIJ0j1GJH7ezXqldUZa2sFKRPz3iHqAZsnpOyKiRGDV69hP/FTXK1j90ogcJB/Y=</HostId></Error>

如果我手动创建存储桶,一切正常......

请查看您的日志文件...

我在 Boto3 中修复了它:

os.environ['AWS_DEFAULT_REGION'] = 'eu-west-2'
myS3 = boto3.resource('s3')
results = myS3.create_bucket(
                             Bucket='zxvxdvx.gsdrgerrrczxczxcgggzxczxczxc',
                             CreateBucketConfiguration={'LocationConstraint': AWS_DEFAULT_REGION}
                            )

对于那些希望通过 CLI 创建存储桶的人,请运行以下命令:

aws s3api create-bucket --bucket my-bucket-name --region us-west-2 --create-bucket-configuration LocationConstraint=us-west-2

在这里张贴此以供后代使用。 存储桶名称是全球唯一的! 如果您与现有存储桶发生冲突并且您指定的区域与现有存储桶的区域不同,AWS CLI 将为您提供IllegalLocationConstraintException 。 如果您碰巧猜到了现有存储桶的正确区域,它会给您BucketAlreadyExists异常。

@thetomasz我不敢相信你在我遇到完全相同的问题之前 21 小时发布了这个消息。 太感谢了; 这正是我的问题。

以下对我不起作用:
aws s3api create-bucket --bucket avengers-docker-eb --region us-east-1 --create-bucket-configuration LocationConstraint=us-east-1

错误:
调用 CreateBucket 操作时发生错误 (IllegalLocationConstraintException):us-east-1 位置约束与此请求发送到的区域特定端点不兼容。

@thetomasz 非常感谢您的帖子! 我希望我在自己最终弄清楚这一点之前先看到了你的帖子。 该消息确实令人困惑,甚至具有误导性。

要查明名称是否已被占用并确定存储桶所在的区域(如果确实被占用),请查看名称“your-bucket-name.s3.amazonaws.com”的 DNS 记录。 例如:

$ dig test8765.s3.amazonaws.com

; <<>> DiG 9.11.3-1ubuntu1.3-Ubuntu <<>> test8765.s3.amazonaws.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39766
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;test8765.s3.amazonaws.com. IN  A

;; ANSWER SECTION:
test8765.s3.amazonaws.com. 2016 IN  CNAME   s3-us-west-2-w.amazonaws.com.
s3-us-west-2-w.amazonaws.com. 5 IN  A   52.218.216.10

;; Query time: 16 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Thu Jan 03 15:16:11 AEDT 2019
;; MSG SIZE  rcvd: 99

好吧,这解释了为什么我的“testbucket”存储桶名称不会通过;)谢谢大家。

我遇到过同样的问题。 使用aws s3 mb s3://<bucket-name> --region us-east-2对我有用。

我自己也遇到了这个错误。 来吧 AWS。 修理它。 如果错误是全局命名冲突,那就这么说吧。

当我在我的 lambda 脚本中进行存储桶加密时,我得到了这个错误。 有人可以帮忙吗

调用 PutBucketEncryption 操作时发生错误(IllegalLocationConstraintException):ap-east-1 位置约束与此请求发送到的区域特定端点不兼容。:ClientError

对于那些希望通过 CLI 创建存储桶的人,请运行以下命令:

aws s3api create-bucket --bucket my-bucket-name --region us-west-2 --create-bucket-configuration LocationConstraint=us-west-2

为我工作

对于尝试在 us-east-1 中创建存储桶的每个人,只需更改 --region us-east-2 即可完美创建并在我的 aws 控制台中可见。

在传递“”“”--create-bucket-configuration LocationConstraint=us-west-2“”“”参数选项后,它甚至对我有用

aws s3api create-bucket --bucket my-bucket-name --region us-west-2 --create-bucket-configuration LocationConstraint=us-west-2

此页面是否有帮助?
0 / 5 - 0 等级