谷歌建议删除并督促创建自己的VPC
此资源管理默认VPC:https://www.terraform.io/docs/providers/aws/r/default_vpc.html
但我想设置一个不同的VPC是默认和删除自动创建一个。
这怎么可能?
该default
网络没有任何特定的配置,使得它成为默认的网络。这仅仅是一个始终以一个新项目一起创建了一个网络,每当未指定网络(例如,部署GAE Flex应用程序时),使用的网络将是一个名为default
。当你创建一个Terraform项目,你可以指定auto_network_creation = "false"
。
但是,这不会阻止默认网络的建立,将直接删除它完全创建项目之前。这意味着,在Terraform创建过程中,这是不可能创建一个名为default
另一个网络。在创建原始默认网络后必须完成的,因此,该项目创建之后。
您可以尝试使用this tutorial与Terraform创建项目。接下来的片段是教程,其中包括我要删除的项目创建的默认网络线的一部分。
variable "project_name" {}
variable "billing_account" {}
variable "org_id" {}
variable "region" {}
provider "google" {
region = "${var.region}"
}
resource "random_id" "id" {
byte_length = 4
prefix = "${var.project_name}-"
}
resource "google_project" "project" {
name = "${var.project_name}"
project_id = "${random_id.id.hex}"
billing_account = "${var.billing_account}"
org_id = "${var.org_id}"
auto_create_network = "false" //This is supposed to delete default network on project creation
}
resource "google_project_services" "project" {
project = "${google_project.project.project_id}"
services = [
"compute.googleapis.com"
]
}
output "project_id" {
value = "${google_project.project.project_id}"
}
尽管如此,我已经尝试过了自己和默认的网络仍然存在。
作为Terraform你描述所需配置的状态时,它是不可能的隐式发送“销毁请求”给没有被Terraform管理的资源。
然而,你可以尝试importing它首先那么它将被Terraform进行管理,当你不包括在您的* .tf文件的默认子网掩码应在terraform apply
一步被删除。