Terraform 无法将标记添加到传输网关默认路由表中
我在google上搜索过,一直试图将标签添加到transit gateway默认路线,但没有成功。以下是我尝试过的代码:Terraform 无法将标记添加到传输网关默认路由表中,terraform,terraform-provider-aws,Terraform,Terraform Provider Aws,我在google上搜索过,一直试图将标签添加到transit gateway默认路线,但没有成功。以下是我尝试过的代码: resource "aws_default_route_table" "example" { default_route_table_id = "${aws_ec2_transit_gateway.tgw.association_default_route_table_id}" tags = { Name = "default table" } } 有办
resource "aws_default_route_table" "example" {
default_route_table_id = "${aws_ec2_transit_gateway.tgw.association_default_route_table_id}"
tags = {
Name = "default table"
}
}
有办法做到这一点吗 aws_default_route_表用于管理专有网络的默认路由。
我相信你想要的资源是 例如
专有网络中的默认路由表不由Terraform创建或管理。因此,无法标记默认路由表。根据我的经验,在AWS VPC中不使用默认值是一种“最佳实践”。部署一个新的VPC,定制它以满足您的需要、子网、标签等
一个好的起点是使用官方的Terraform AWS VPC模块。它是非常全面的,涵盖了几乎任何您可以抛出的用例 我想出来了,这可能对某人有所帮助:
data "aws_ec2_transit_gateway_route_table" "default" {
filter {
name = "default-association-route-table"
values = ["true"]
}
filter {
name = "transit-gateway-id"
values = ["${aws_ec2_transit_gateway.tgw.id}"]
}
}
resource "null_resource" "tag-default-rt" {
provisioner "local-exec" {
command = "aws ec2 create-tags --resources ${data.aws_ec2_transit_gateway_route_table.default.id} --tags Key=Name,Value=Default-Route-Table"
}
depends_on = ["aws_ec2_transit_gateway.tgw"]
}
语法看起来是正确的。您遇到的错误是什么?@JohnB无错误它没有更新默认路由表。这不会更新传输网关的默认路由表。这将为该中转网关创建一个新路由表。
data "aws_ec2_transit_gateway_route_table" "default" {
filter {
name = "default-association-route-table"
values = ["true"]
}
filter {
name = "transit-gateway-id"
values = ["${aws_ec2_transit_gateway.tgw.id}"]
}
}
resource "null_resource" "tag-default-rt" {
provisioner "local-exec" {
command = "aws ec2 create-tags --resources ${data.aws_ec2_transit_gateway_route_table.default.id} --tags Key=Name,Value=Default-Route-Table"
}
depends_on = ["aws_ec2_transit_gateway.tgw"]
}