我们有很多实例(我知道...牛,不是宠物,但在这种情况下,它们确实是宠物)
resource "aws_instance" "read_00" {
count = "${var.read_00_count}"
resource "aws_instance" "read_01" {
count = "${var.read_01_count}"
我们有一个ELB,我们要在其中基于实例的count变量动态添加实例,如下所示:
resource "aws_elb" "read_slaves" {
instances = ["${aws_instance.read_.*.id}"]
但是那当然行不通。
只有实例ID的数量不为零时,才可以动态创建实例ID的列表吗?
我知道这与事实背道而驰,但是如果可能的话,那就太棒了。
答案 0 :(得分:1)
使用Terraform 0.12会容易得多,但是现在可以这样做:
[...]
resource "aws_instance" "read_01" {
[...]
count = "${var.read_01_count}"
tags {
Role = "read_slave"
}
}
data "aws_instances" "read-slaves" {
instance_tags {
Role = "read_slave"
}
// optional filters
}
resource "aws_elb" "read_slaves" {
instances = ["${data.aws_instances.read-slaves.ids}"]
listener {
...
}
}
因此:
aws_intances
的列表aws_elb