Tam*_*van 5 terraform terraform-provider-aws
我正在尝试使用 terraform 创建 ec2 实例并设置负载均衡器,但我正面临以下错误。如何在单个 main.tf 文件中创建实例和配置负载均衡器?
错误:引用未声明的资源
"aws_lb_target_group" "front-end":27: vpc_id = "${aws_vpc.terrafom-elb.id}" 托管资源 "aws_vpc" "terrafom-elb" 尚未在根模块中声明。source`
代码:
region = "us-east-1"
access_key = "*********************"
secret_key = "**********************"
}
resource "aws_instance" "terraform" {
ami = "ami-07ebfd5b3428b6f4d"
instance_type = "t2.micro"
security_groups = ["nodejs","default"]
tags = {
Name = "terrafom-elb"
}
}
resource "aws_lb" "front-end"{
name = "front-end-lb"
internal = false
security_groups = ["nodejs"]
}
resource "aws_lb_target_group" "front-end" {
name = "front-end"
port = 8989
protocol = "HTTP"
vpc_id = "${aws_vpc.terrafom-elb.id}"
depends_on = [aws_instance.terraform]
}
Run Code Online (Sandbox Code Playgroud)
小智 12
您分配 vpc_id 时存在拼写错误:
vpc_id = "${aws_vpc.terrafom-elb.id}"
Run Code Online (Sandbox Code Playgroud)
应该:
vpc_id = "${aws_vpc.terraform-elb.id}"
Run Code Online (Sandbox Code Playgroud)
注意“terraform”一词中缺少的“r”
小智 5
您可以data
在顶部添加一个结构并将 VPC ID 作为变量传递:
data "aws_vpc" "selected" {
id = var.vpc_id
}
Run Code Online (Sandbox Code Playgroud)
并将其引用为 vpc_id = data.aws_vpc.selected.id
归档时间: |
|
查看次数: |
23495 次 |
最近记录: |