使用 Terraform 在不同区域中创建 AWS S3 存储桶



尝试在提供程序声明中提到的区域以外的其他区域中创建 S3 存储桶时,我收到以下错误。

错误:创建 S3 存储桶时出错:非法位置约束异常:eu-central-1 位置约束与此请求发送到的区域特定终端节点不兼容。 状态代码:400,请求 ID:CDC41B1AC8DECE02,主机 ID:rZq1QatrmMLJ4pKfM5Ry5vg2asFYOGTJJNVVquXgnr3L506hHpFZf67YOiatapSc3UGtYntQsbU=

溶液: 似乎根据AWS文档,https://docs.aws.amazon.com/cli/latest/reference/s3api/create-bucket.html 还需要提及LocationConstraint。

$ aws s3api create-bucket --bucket my-bucket --region eu-west-1 --create-bucket-configuration LocationConstraint=eu-west-1

但是,我在 Terraform 代码文档 https://www.terraform.io/docs/providers/aws/r/s3_bucket.html 中没有看到等效的配置参数。我使用最新的地形版本:0.12.3

地形代码示例:

resource "aws_s3_bucket" "public-alb-logs-bucket" {
bucket  = "alb-access-logs-prod"
region  = "eu-central-1"
}
provider "aws" {
version   = "~> 2.14.0"
region  = "us-west-2"  
}

如果两个区域相同,则相同的代码有效。(在 S3 资源和提供程序部分中)。

任何帮助/想法将不胜感激。 谢谢。 如有任何其他信息,也请告诉我。

我无法确认,但我认为问题是您的区域不匹配:

resource "aws_s3_bucket" "public-alb-logs-bucket" {
bucket  = "alb-access-logs-prod"
region  = "eu-central-1" ### This region is different from the one below
}
provider "aws" {
version   = "~> 2.14.0"
region  = "us-west-2" ### This region is different from the one above
}

我目前使用不同区域中的帐户以及在多个区域中拥有资源的帐户。 但我从未尝试使用与资源区域不匹配的提供程序区域部署资源。

所以我猜这就是问题所在??

相关内容

  • 没有找到相关文章

最新更新