我正在阅读这里的terraform代码,https://github.com/linuxacademy/content-terraform/blob/master/course/terraform-aws/networking/main.tf,这里是我不太理解的代码。
data "aws_availability_zones" "available" {}
....
resource "aws_subnet" "tf_public_subnet" {
count = 2
vpc_id = "${aws_vpc.tf_vpc.id}"
cidr_block = "${var.public_cidrs[count.index]}"
map_public_ip_on_launch = true
availability_zone = "${data.aws_availability_zones.available.names[count.index]}"
tags {
Name = "tf_public_${count.index + 1}"
}
}我不明白什么时候填充了data.aws_availability_zones。
发布于 2019-07-01 09:31:52
data.aws_availability_zones是数据源,不同于resource (你粘贴的下一段代码)
请通过此url terraform data source了解数据源的工作原理
如果您不了解data.aws_availability_zones的工作原理,请查看以下url Data Source: aws_availability_zones
因此,从它的Attributes Reference中,我们知道它将有助于获取当前帐户的可用区。
zone_ids - A list of the Availability Zone IDs available to the account.它的属性name是zone_ids的别名,它们的输出相同。
https://stackoverflow.com/questions/56829161
复制相似问题