我需要在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添加路由作为列表。这可能吗?
答案 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的列表。