Terraform 多实例创建错误
Terraform Multiple instance creation error
您好,我正在尝试基于计数变量创建多个实例。我目前有 1 个带有 2 个 cidr 块的私有子网,但是当我尝试创建实例时,我得到
“错误:启动源实例时出错:InvalidSubnetID.NotFound:子网 ID“10.7.90.96/27”不存在
状态代码:400,请求 ID:d7ef5147-ac30-4d31-815a-ad6a46bfe456
在 .terraform\modules\vpc\AWS-VPC-Module\main.tf 第 1427 行,在资源“aws_instance”“FID”中:
1427: 资源 "aws_instance" "FID" {"
显然 TF 确实创建了子网
resource "aws_instance" "FID" {
depends_on = [aws_kms_key.aws-wm-wmad-prod]
count = var.How_many_FID
ami = var.windows_dc_ami_2016
availability_zone = element(var.availability_zones, count.index)
ebs_optimized = var.windows_dc_ebs_optimized
instance_type = var.windows_dc_instance_type_FID
key_name = var.key_name
monitoring = true
subnet_id = element(var.private_subnet_cidr_blocks, count.index)
associate_public_ip_address = false
这是我的子网创建代码:
resource "aws_subnet" "private" {
count = length(var.private_subnet_cidr_blocks) # count = 2
vpc_id = aws_vpc.default.id #id34odfjdf
cidr_block = var.private_subnet_cidr_blocks[count.index]
availability_zone = var.availability_zones[count.index]
tags = merge(
{
Name_TF = "dctr-ad-sbn-use1-az1A-prod-lan-0${count.index+1}",
Project = var.project,
Environment = var.environment
},
var.tags
)
}
subnet_id
必须是实际的子网 ID,而不是它的 CIDR:
subnet_id = element(aws_subnet.private, count.index).id
您好,我正在尝试基于计数变量创建多个实例。我目前有 1 个带有 2 个 cidr 块的私有子网,但是当我尝试创建实例时,我得到
“错误:启动源实例时出错:InvalidSubnetID.NotFound:子网 ID“10.7.90.96/27”不存在 状态代码:400,请求 ID:d7ef5147-ac30-4d31-815a-ad6a46bfe456
在 .terraform\modules\vpc\AWS-VPC-Module\main.tf 第 1427 行,在资源“aws_instance”“FID”中: 1427: 资源 "aws_instance" "FID" {"
显然 TF 确实创建了子网
resource "aws_instance" "FID" {
depends_on = [aws_kms_key.aws-wm-wmad-prod]
count = var.How_many_FID
ami = var.windows_dc_ami_2016
availability_zone = element(var.availability_zones, count.index)
ebs_optimized = var.windows_dc_ebs_optimized
instance_type = var.windows_dc_instance_type_FID
key_name = var.key_name
monitoring = true
subnet_id = element(var.private_subnet_cidr_blocks, count.index)
associate_public_ip_address = false
这是我的子网创建代码:
resource "aws_subnet" "private" {
count = length(var.private_subnet_cidr_blocks) # count = 2
vpc_id = aws_vpc.default.id #id34odfjdf
cidr_block = var.private_subnet_cidr_blocks[count.index]
availability_zone = var.availability_zones[count.index]
tags = merge(
{
Name_TF = "dctr-ad-sbn-use1-az1A-prod-lan-0${count.index+1}",
Project = var.project,
Environment = var.environment
},
var.tags
)
}
subnet_id
必须是实际的子网 ID,而不是它的 CIDR:
subnet_id = element(aws_subnet.private, count.index).id