terraform - 将路由添加到多个路由表 aws
terraform - add route to multiple route tables aws
我需要将相同的路由添加到 AWS 中的多个路由 table。我想为此使用地形。对于单个 table 我可以使用类似的东西:
resource "aws_route" "route" {
route_table_id = "${var.routetableid}"
destination_cidr_block = "${var.destcidrblock}"
instance_id = "${aws_instance.vpn.id}"
}
不过,我想为每个 route_table_id 添加由用户指定为列表的路线。这可能吗?
Terraform 资源允许您使用 count meta parameter.
循环访问它们
在你的情况下你可以这样做:
variable "route_tables" { type = "list" }
resource "aws_route" "route" {
count = "${length(var.route_tables)}"
route_table_id = "${element(var.route_tables, count.index)}"
destination_cidr_block = "${var.destcidrblock}"
instance_id = "${aws_instance.vpn.id}"
}
其中 route_tables
是路由 table id 的列表。
我需要将相同的路由添加到 AWS 中的多个路由 table。我想为此使用地形。对于单个 table 我可以使用类似的东西:
resource "aws_route" "route" {
route_table_id = "${var.routetableid}"
destination_cidr_block = "${var.destcidrblock}"
instance_id = "${aws_instance.vpn.id}"
}
不过,我想为每个 route_table_id 添加由用户指定为列表的路线。这可能吗?
Terraform 资源允许您使用 count meta parameter.
循环访问它们在你的情况下你可以这样做:
variable "route_tables" { type = "list" }
resource "aws_route" "route" {
count = "${length(var.route_tables)}"
route_table_id = "${element(var.route_tables, count.index)}"
destination_cidr_block = "${var.destcidrblock}"
instance_id = "${aws_instance.vpn.id}"
}
其中 route_tables
是路由 table id 的列表。