繁体   English   中英

Terraform nat 网关 AWS

[英]Terraform nat gateway AWS

我正在尝试使用 AWS 作为提供者从 terraform 创建 nat 网关,但资源 aws_nat_gateway 中的子网 ID 总是给我错误。 我正在尝试在 variables.tf 文件中的资源“aws_nat_gateway”“sample_nat_gateway”上的子网 ID 中分配公共子网,但没有这样做,如果有人可以提供帮助,是否需要支持?

下面是我的 vpc 模块的 vpc.tf 文件

 resource "aws_subnet" "public-subnet" {
  for_each = var.prefix
 
  availability_zone_id = each.value["az"]
  cidr_block = each.value["cidr"]
  vpc_id     = aws_vpc.sample_vpc.id     
  tags = {
    Name = "${var.name}-${each.value["az"]}"
 }
}
resource "aws_nat_gateway" "sample_nat_gateway" {
  allocation_id = aws_eip.sample_eip.id
  subnet_id      = ""
  tags = {
    Name = "${var.name}-sample-nat-gateway"
    Environment = var.environment
}
  depends_on = [aws_internet_gateway.sample_igw]
}

变量.tf

variable "prefix" {
   type = map
   default = {
      sub-1 = {
         az = "use2-az1"
         cidr = "10.0.1.0/16"
      }
      sub-2 = {
         az = "use2-az2"
         cidr = "10.0.2.0/24"
      }
   }
}

Subent不能为空您必须提供要放置 NAT 的有效子网 ID。 例如:

resource "aws_nat_gateway" "sample_nat_gateway" {
  allocation_id = aws_eip.sample_eip.id

  subnet_id      = aws_subnet.public-subnet["sub-1"].id

  tags = {
    Name = "${var.name}-sample-nat-gateway"
    Environment = var.environment
}
  depends_on = [aws_internet_gateway.sample_igw]
}

其中aws_subnet.example是您的 VPC 中的公有子网之一。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM