我有以下内容deploy.tf
file:
provider "aws" {
region = "us-east-1"
}
provider "aws" {
alias = "us_west_1"
region = "us-west-2"
}
resource "aws_us_east_1" "my_test" {
# provider = "aws.us_east_1"
count = 1
ami = "ami-0820..."
instance_type = "t2.micro"
}
resource "aws_us_west_1" "my_test" {
provider = "aws.us_west_1"
count = 1
ami = "ami-0d74..."
instance_type = "t2.micro"
}
我正在尝试使用它部署 2 台服务器,每个区域一台。我不断收到如下错误:
aws_us_east_1.narc_test: Provider doesn't support resource: aws_us_east_1
我尝试为两个提供程序块设置别名,并以多种不同的方式引用正确的区域。我已经阅读了有关多区域支持的内容,一些答案表明这可以通过模块来完成,但是,这是一个简单的测试,我想保持简单。目前这可能吗?
是的,它可以用于在不同区域创建资源,甚至可以在一个文件内创建资源。无需为您的测试场景使用模块。
您的错误可能是由拼写错误引起的。如果您想启动 ec2 实例,您想要创建的资源是aws_instance
并不是aws_us_west_1
or aws_us_east_1
.
果然 Terraform 不知道这种资源,因为它根本不存在。将其更改为aws_instance
你应该可以走了!此外,您可能应该以不同的方式命名它们,以避免使用双重命名my_test
对于这两种资源。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)