防止 terraform AWS VPC 创建默认资源

Preventing terraform AWS VPC from creating default resources

我刚刚注意到使用 Terraform 创建基本 VPC 也会创建一些 "resources",例如 DHCP 选项集、路由 Table 等

如果您还在 Terraform 中定义了这些资源,则会添加新资源,但永远不会删除 "defaults" 资源(没有标签)。

这是正常行为吗?如何删除它们或阻止它们的创建?

我正在使用 Terraform 0.9.5

与VPC关联的默认资源是由AWS自己创建的,Terraform无法控制它们的创建。 Terraform 可以创建新资源并重新配置 VPC 以使用它们(从而保留未使用的默认值),或者在某些情况下,可以 "adopt" 将默认值纳入 Terraform 管理,以便使用 Terraform 进行更新。

路由tables 是实现最完整的资源类型。 The aws_route_table_association resource allows a new, Terraform-managed route table to be connected to a VPC. Alternatively, the aws_default_route_table resource 允许 Terraform 取得 VPC 默认路由的所有权 table。

Terraform 还提供 a similar resource for managing a VPC's default network ACL.

在撰写本文时,默认 DHCP 选项没有此类资源,但是 terraform import 支持 aws_vpc_dhcp_options,它提供一种将默认 DHCP 选项置于 Terraform 控制之下的不同方式。