簡體   English   中英

如何使用 terraform 獲取默認的 vpc id

[英]How to get the default vpc id with terraform

我正在嘗試使用terraform在我的aws帳戶中獲取default vpc 的vpc_id

這是我嘗試過的,但它給出了一個錯誤

錯誤:數據源無效

這是我嘗試過的:

data "aws_default_vpc" "default" {

}


# vpc
resource "aws_vpc" "kubernetes-vpc" {
  cidr_block = "${var.vpc_cidr_block}"
  enable_dns_hostnames = true

  tags = {
    Name = "kubernetes-vpc"
  }
}

aws_default_vpc確實不是有效的數據源。 但是aws_vpc數據源確實有一個布爾default ,您可以使用它來選擇默認 vpc:

data "aws_vpc" "default" {
  default = true
} 

為了完整起見,我將添加一個aws_default_vpc資源,該資源還管理默認 VPC 並實施資源生命周期,而無需真正創建 VPC*,但會更改資源,例如更改標簽(包括其名稱)。

* 除非你強行銷毀默認 VPC

從文檔:

這是一種高級資源,在使用它時需要注意一些特殊的注意事項。 在使用此資源之前,請完整閱讀本文檔。

https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/default_vpc

這個

resource "aws_default_vpc" "default" {
}

會做。

我認為這對於管理整個 AWS 賬戶的 terraform 項目很方便,但我建議不要在單個組織賬戶中部署多個 terraform 項目時使用它。 在這種情況下,您最好繼續使用@blokje5 的回答

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM