terraform - 添加到多个路由表aws的路由

时间:2017-05-04 08:32:23

标签: amazon-web-services routes terraform

我需要在AWS中向多个路由表添加相同的路由。我想为此使用terraform。对于单个表,我可以使用类似的东西:

resource "aws_route" "route" {
  route_table_id = "${var.routetableid}"
  destination_cidr_block = "${var.destcidrblock}"
  instance_id = "${aws_instance.vpn.id}"
}

但是,我想为用户指定的每个route_table_id添加路由作为列表。这可能吗?

1 个答案:

答案 0 :(得分:2)

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是路由表ID的列表。