【问题标题】:When/where does the data aws_availability_zones is initialised or injected?何时/何地初始化或注入数据 aws_availability_zones?
【发布时间】:2019-11-11 17:25:29
【问题描述】:

我正在阅读这里的 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 何时填充。

【问题讨论】:

    标签: terraform


    【解决方案1】:

    data.aws_availability_zones是数据源,不同于resource(你粘贴的下一个代码)

    请通过此网址terraform data source 了解数据源的工作原理

    如果您不了解data.aws_availability_zones 的工作原理,请浏览此网址Data Source: aws_availability_zones

    所以从它的Attributes Reference,我们知道这将有助于获取当前帐户的可用区。

    zone_ids - A list of the Availability Zone IDs available to the account.
    

    它的属性namezone_ids的别名,它们的输出是一样的。

    【讨论】:

    • 谢谢!从您的链接中,我刚刚了解到前缀在 terraform 中实际上很重要。很有用!
    猜你喜欢
    • 2015-01-23
    • 2021-05-15
    • 1970-01-01
    • 1970-01-01
    • 2017-07-07
    • 1970-01-01
    • 1970-01-01
    • 2019-05-17
    • 1970-01-01
    相关资源
    最近更新 更多