Nah*_*hum 5 amazon-web-services amazon-vpc terraform terraform-provider-aws
我开启了人生的新篇章,这个 IaC(基础设施即代码)的世界真是太神奇了……
我在 YouTube 上看到了一个免费课程,介绍如何开始在 AWS 中使用 Terraform,但一路上有些东西无法正常工作,尽管代码看起来与视频和我的一样。
这是代码和结果。我将非常感谢您帮助我了解问题所在。
地形 v0.14.10
提供商registry.terraform.io/hashicorp/aws v3.36.0
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"
}
}
Run Code Online (Sandbox Code Playgroud)
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"
}
}
Run Code Online (Sandbox Code Playgroud)
resource "aws_route_table_association" "a" {
subnet_id = aws_subnet.subnet_1.id
route_table_id = aws_route_table.prod-route-table.id
}
Run Code Online (Sandbox Code Playgroud)
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" {
Run Code Online (Sandbox Code Playgroud)
我只添加了错误也指向我的代码部分。
您没有显示如何创建aws_internet_gateway.gw
资源的代码,但问题是该资源是普通的 Internet 网关,但您将值传递到egress_only_gateway_id
需要仅出口 Internet 网关的 ID 的字段。
解决方案是将aws_internet_gateway
资源更新为资源aws_egress_only_internet_gateway
,或者将属性更新route
为gateway_id
需要正常 Internet 网关 ID 而不是仅出口网关的属性。
如果您刚刚开始使用这些东西,我现在会避免仅出口互联网网关。
归档时间: |
|
查看次数: |
2426 次 |
最近记录: |