Terraform:获取与每个子网关联的 ID
Terraform: Get id associated to each subnet
我有一个子网列表(1 个 public 和 2 个私有子网),我想获取与每个子网关联的 ID。
我的代码结构是:
-- Dev
-- main.tf
-- vars.tf
-- modules
-- sn
-- ressources.tf
-- vars.tf
这是我的main.tf
# Create Public Subnet
module "public-sn" {
source = "../modules/sn"
vpc_id = module.vpc.vpcId
sn_az = [ "********-3a" ]
sn_cidr = [ "********.0/24" ]
sn_tags = [ "********-sn-a" ]
sn_id = module.sn.snId
}
# Create Private Subnets
module "private-sn" {
source = "../modules/sn"
vpc_id = module.vpc.vpcId
sn_az = [ "eu-west-3a", "eu-west-3b" ]
sn_cidr = [ "********.0/24", "********.0/24" ]
sn_tags = [ "********-sn-a", "********-sn-b" ]
}
这是我的ressources.tf在../sn
resource "aws_subnet" "sn" {
count = length(var.sn_cidr)
vpc_id = var.vpc_id
cidr_block = var.sn_cidr[count.index]
availability_zone = var.sn_az [count.index]
tags = { Name = var.sn_tags[count.index] }
}
这是我在 ../sn 中的 output.tf 现在是空的。请帮助获取这些条件下的子网 ID。
提前致谢。
如果你想获得子网 ID 的 list,你在 ../modules/sn/output.tf
中的输出应该是:
output "subnet_ids" {
value = aws_subnet.sn[*].id
}
我有一个子网列表(1 个 public 和 2 个私有子网),我想获取与每个子网关联的 ID。
我的代码结构是:
-- Dev
-- main.tf
-- vars.tf
-- modules
-- sn
-- ressources.tf
-- vars.tf
这是我的main.tf
# Create Public Subnet
module "public-sn" {
source = "../modules/sn"
vpc_id = module.vpc.vpcId
sn_az = [ "********-3a" ]
sn_cidr = [ "********.0/24" ]
sn_tags = [ "********-sn-a" ]
sn_id = module.sn.snId
}
# Create Private Subnets
module "private-sn" {
source = "../modules/sn"
vpc_id = module.vpc.vpcId
sn_az = [ "eu-west-3a", "eu-west-3b" ]
sn_cidr = [ "********.0/24", "********.0/24" ]
sn_tags = [ "********-sn-a", "********-sn-b" ]
}
这是我的ressources.tf在../sn
resource "aws_subnet" "sn" {
count = length(var.sn_cidr)
vpc_id = var.vpc_id
cidr_block = var.sn_cidr[count.index]
availability_zone = var.sn_az [count.index]
tags = { Name = var.sn_tags[count.index] }
}
这是我在 ../sn 中的 output.tf 现在是空的。请帮助获取这些条件下的子网 ID。
提前致谢。
如果你想获得子网 ID 的 list,你在 ../modules/sn/output.tf
中的输出应该是:
output "subnet_ids" {
value = aws_subnet.sn[*].id
}