Terraform 强制按计划/应用现有安全组创建新的 ec2 资源

2024-01-11

我有一段非常简单的 Terraform 代码:

provider "aws" {
  region = "eu-west-1"
}

module ec2 {
  source = "./ec2_instance"
  name = "EC2 Instance 1"
} 

其中模块是:

variable "name" {
    default = "Default Name from ec2_instance.tf"
}

resource "aws_instance" "example" {
  ami = "ami-e5083683"
  instance_type = "t2.nano"
  subnet_id = "subnet-3e976259"
  associate_public_ip_address = true
  security_groups = [ "sg-7310e10b" ]
  tags {
    Name = "${var.name}"
  }
}

当我第一次运行它时,我得到以下输出:

security_groups.#:            "" => "1"
security_groups.1642973399:   "" => "sg-7310e10b"

然而,下次我尝试plan I get:

  security_groups.#:            "0" => "1" (forces new resource)
  security_groups.1642973399:   "" => "sg-7310e10b" (forces new resource)

是什么赋予了?!


您错误地分配了vpc_security_group_id into security_groups,而不是进入vpc_security_group_ids.

Change

security_groups = [ "sg-7310e10b" ]

to

vpc_security_group_ids = [ "sg-7310e10b" ]

一切都会好起来的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Terraform 强制按计划/应用现有安全组创建新的 ec2 资源 的相关文章

随机推荐