【问题标题】:Terraform error No default VPC found in this regionTerraform 错误在此区域中未找到默认 VPC
【发布时间】:2021-01-18 04:00:39
【问题描述】:

我正在关注 PluralSight 课程“Terraform - Getting Started”,他们在其中引用了这个 terraform 文件 module_three.tf,其中说明了以下内容:

我已将原值us-east-1 更改为我选择的区域eu-west-2...

variable "region" {
  default = "eu-west-2"
}

...和...

#This uses the default VPC.  It WILL NOT delete it on destroy.
resource "aws_default_vpc" "default" {

}

terraform initterraform plan 命令按预期执行(并且如课程中所述),但 terraform apply 会产生以下输出:

aws_default_vpc.default: Creating...

Error: No default VPC found in this region.

如何确定给定区域中的默认 VPC,以及如何为我的区域指定默认 VPC?

不得不问这个问题似乎违反了 AWS 文档,正如他们在Default VPC and default subnets 部分中明确指出的那样:

如果您在 2013 年 12 月 4 日之后创建 AWS 账户,则它仅支持 EC2-VPC。在这种情况下,您在每个 AWS 区域都有一个 default VPC。一种 默认 VPC 可供您使用,因此您无需创建 并配置您自己的 VPC。您可以立即开始启动亚马逊 EC2 实例到您的默认 VPC。您还可以使用服务,例如 默认情况下的 Elastic Load Balancing、Amazon RDS 和 Amazon EMR VPC。

【问题讨论】:

  • 听起来您的帐户是在 2013-12-04 之前创建的,或者在某个时候,您帐户中的默认 VPC(位于 eu-west-2 区域)已被删除。在您链接到的那个页面上,如果您向下滚动一点,如果默认 VPC 尚不存在,则会有创建默认 VPC 的说明。

标签: amazon-web-services amazon-vpc terraform-provider-aws


【解决方案1】:

这是因为 terraform 未在该区域中找到任何默认 VPC。 您可以按如下方式添加默认 VPC

aws ec2 create-default-vpc

【讨论】:

    【解决方案2】:

    关注these instructions并创建了默认VPC。

    我假设 VPC 是由 AWS 以存储库样式定义的,但它实际上只是在账户自己的 VPC 列表中创建的一个条目。

    【讨论】:

      猜你喜欢
      • 2021-12-02
      • 1970-01-01
      • 2021-11-01
      • 2012-02-28
      • 2021-07-05
      • 1970-01-01
      • 2023-01-08
      • 2019-01-21
      • 2018-08-28
      相关资源
      最近更新 更多