【问题标题】:Terraform error: error creating route: InvalidEgressOnlyInternetGatewayId.MalformedTerraform 错误:创建路由时出错:InvalidEgressOnlyInternetGatewayId.Malformed
【发布时间】:2021-07-09 11:40:28
【问题描述】:

我开启了人生的新篇章,这个 IaC(基础设施即代码)的世界真是太棒了……

我在 YouTube 上看到了一个免费课程,如何开始在 AWS 中使用 Terraform,但在此过程中有些东西无法正常工作,尽管代码与视频中的代码和我的一样。

这是代码和结果。 如果您能帮助我了解问题所在,我将不胜感激。

地形详情:

Terraform v0.14.10

  • 提供者 registry.terraform.io/hashicorp/aws v3.36.0

    代码:

    3。创建自定义路由表

    resource "aws_route_table" "prod-route-table" {
      vpc_id = aws_vpc.prod-vpc.id
    
      route {
        cidr_block = "0.0.0.0/0"
        gateway_id = aws_internet_gateway.gw.id
      }
    
      route {
        ipv6_cidr_block        = "::/0"
        egress_only_gateway_id = aws_internet_gateway.gw.id
      }
    
      tags = {
        Name = "example"
      }
    }
    

4。创建子网

    resource "aws_subnet" "subnet_1" {
      vpc_id            = aws_vpc.prod-vpc.id
      cidr_block        = "10.0.1.0/24"
      availability_zone = "us-east-1e"
    
      tags = {
        "name" = "Prod-subnet"
      }
    }

5。将 subent 与路由表关联

    resource "aws_route_table_association" "a" {
    
      subnet_id      = aws_subnet.subnet_1.id
      route_table_id = aws_route_table.prod-route-table.id
    
    }

错误:

    Error: error creating route: InvalidEgressOnlyInternetGatewayId.Malformed: Invalid id: "igw-07f6dac9f8bd89fd5" (expecting "eigw-...")
            status code: 400, request id: 7f7e2445-f537-4113-a52e-ac6b32dee888
    
      on main.tf line 26, in resource "aws_route_table" "prod-route-table":
      26: resource "aws_route_table" "prod-route-table" {

我只添加了错误也指向我的部分代码。

【问题讨论】:

    标签: amazon-web-services terraform amazon-vpc terraform-provider-aws


    【解决方案1】:

    您没有显示有关如何创建 aws_internet_gateway.gw 资源的代码,但问题是该资源是一个普通的 Internet 网关,但您将值传递给 egress_only_gateway_id 字段,该字段下需要一个 ID一个只有出口的互联网网关。

    解决方案是将aws_internet_gateway 资源更新为aws_egress_only_internet_gateway 资源,或者将route 属性更新为gateway_id,这需要正常的Internet 网关ID,而不是仅出口网关。

    如果您刚开始使用这些东西,我现在会避免只使用出口互联网网关。

    【讨论】:

    • 感谢您的回复。代码来自在线课程,我一步一步跟着课程。 youtube.com/watch?v=SLB_c_ayRMo&ab_channel=freeCodeCamp.org我在这里粘贴了完整的代码,但上传时遇到了一些问题。如果您想查看完整代码,可以单击我附加的链接,然后查看所有内容。
    • 重新观看视频,大约 1:39:00 他遇到了上面相同的错误并按照我描述的方式修复了它
    猜你喜欢
    • 2018-09-07
    • 2019-12-01
    • 2018-04-13
    • 2011-10-06
    • 1970-01-01
    • 2020-08-29
    • 1970-01-01
    • 2022-01-13
    相关资源
    最近更新 更多