无法在特定区域中创建s3存储桶
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法在特定区域中创建s3存储桶相关的知识,希望对你有一定的参考价值。
我试图在python中使用boto3在AWS的每个区域中创建一个s3存储桶,但是我未能在4个区域中创建存储桶(af-south-1,eu-south-1,ap-east-1 &me-south-1)
我的python代码:
def create_bucket(name, region):
s3 = boto3.client('s3')
s3.create_bucket(Bucket=name, CreateBucketConfiguration='LocationConstraint': region)
以及我得到的例外:
botocore.exceptions.ClientError: An error occurred (InvalidLocationConstraint) when calling the CreateBucket operation: The specified location-constraint is not valid
我可以从aws网站在这些区域中创建存储桶,但这对我不利,因此我尝试不使用boto3而直接从其余API创建存储桶。
url:bucket-name。s3.amazonaws.com
正文:
<?xml version="1.0" encoding="UTF-8"?>
<CreateBucketConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<LocationConstraint>eu-south-1</LocationConstraint>
</CreateBucketConfiguration>
但是响应类似于例外:
<?xml version="1.0" encoding="UTF-8"?>
<Error>
<Code>InvalidLocationConstraint</Code>
<Message>The specified location-constraint is not valid</Message>
<LocationConstraint>eu-south-1</LocationConstraint>
<RequestId>********</RequestId>
<HostId>**************</HostId>
</Error>
有人知道为什么我可以从网站上手动执行但不能从python上手动执行吗?
答案
您的代码失败的区域是相对较新的区域,您需要先选择加入这些区域才能使用它们,请参见此处Managing AWS Regions
以上是关于无法在特定区域中创建s3存储桶的主要内容,如果未能解决你的问题,请参考以下文章
无法在 cloudformation 中创建带有事件的 s3 存储桶,以连接到它
使用 CloudFormation 在 S3 存储桶中创建 Lambda 通知
AWS Cloudformation 模板 - 在 S3 存储桶中设置区域