我在名为 myproject 的目录中有一组 terraform 代码:
\myproject\ec2.tf
\myproject\provider.tf
\myproject\s3.tf
....
provider.tf 显示:
provider "aws" {
region = "us-west-1"
profile = "default"
}
因此,如果我在 myproject 文件夹中应用 terraform,则会在我的帐户下的 us-west-1 中启动一组 aws 资源。
现在我想介绍一个 AWS Glue 资源,它仅在不同的区域 us-west-2 中可用。那么我该如何布局glue.tf 文件呢?
目前我将它存储在 myproject 下的子目录中并在该子目录中运行 terraform apply 即
\myproject\glue\glue.tf
\myproject\glue\another_provider.tf
another_provider.tf 是:
provider "aws" {
region = "us-west-2"
profile = "default"
}
它是在不同区域存储文件启动资源的唯一方法吗?有更好的方法吗?
如果没有更好的办法,那么我还需要在glue子文件夹中再有一个后端文件,此外,myproject目录中的一些公共变量不能共享。
--------- 更新:我点击了 Phuong Nguyen 发布的链接,
provider "aws" {
region = "us-west-1"
profile = "default"
}
provider "aws" {
alias = "oregon"
region = "us-west-2"
profile = "default"
}
resource "aws_glue_connection" "example" {
provider = "aws.oregon"
....
}
但我看到了:
Error: aws_glue_connection.example: Provider doesn't support resource: aws_glue_connection