使用 Terraform 在 AWS VPC 中过滤以查找非主路由 table
Filter to find the non-main route table in AWS VPC with Terraform
必须使用什么特定语法才能使下面的 Terraform aws_route_table
数据源成功 return 未指定主路由 table 的路由 table在 VPC 中?
data "aws_route_table" "rt" {
vpc_id = var.vpcId
filter {
name = "association.main"
values = [false]
}
}
VPC中只有一条非主干路由table。因此,如果过滤语法正确,过滤 main=false
应该可以识别它。
以上代码目前产生的错误是:
Error: Your query returned no results. Please change your search criteria and try again
我自己做了一些测试,下面是我的一些发现。 aws_route_tables rather then aws_route_table 应该用于 return 多个转发:
data "aws_route_tables" "rt" {
vpc_id = var.vpcId
filter {
name = "association.main"
values = [false]
}
}
然而,关于,知道的事情很少:
- 不与任何子网关联的 RT 将不会return编辑。
- 如果主路由 table 与子网相关联,它仍然会被 return 编辑。基本上,如果 主路由 table 与子网相关联 它将同时被视为主路由和非主路由。
基本上,上述过滤器的实用性在很大程度上取决于您的 VPC 和 RT 的组织方式。
下面是 AWS CLI,我也用它来仔细检查其中的一些发现:
aws ec2 describe-route-tables --filters Name=vpc-id,Values=vpc-0a347b77b8c0109b6 Name=association.main,Values=false
必须使用什么特定语法才能使下面的 Terraform aws_route_table
数据源成功 return 未指定主路由 table 的路由 table在 VPC 中?
data "aws_route_table" "rt" {
vpc_id = var.vpcId
filter {
name = "association.main"
values = [false]
}
}
VPC中只有一条非主干路由table。因此,如果过滤语法正确,过滤 main=false
应该可以识别它。
以上代码目前产生的错误是:
Error: Your query returned no results. Please change your search criteria and try again
我自己做了一些测试,下面是我的一些发现。 aws_route_tables rather then aws_route_table 应该用于 return 多个转发:
data "aws_route_tables" "rt" {
vpc_id = var.vpcId
filter {
name = "association.main"
values = [false]
}
}
然而,关于,知道的事情很少:
- 不与任何子网关联的 RT 将不会return编辑。
- 如果主路由 table 与子网相关联,它仍然会被 return 编辑。基本上,如果 主路由 table 与子网相关联 它将同时被视为主路由和非主路由。
基本上,上述过滤器的实用性在很大程度上取决于您的 VPC 和 RT 的组织方式。
下面是 AWS CLI,我也用它来仔细检查其中的一些发现:
aws ec2 describe-route-tables --filters Name=vpc-id,Values=vpc-0a347b77b8c0109b6 Name=association.main,Values=false