失败关联EIP:InvalidParameterCombination:将地址映射到VPC实例时必须指定分配ID

Sno*_*ash 3 elastic-ip terraform

鉴于这种:

resource "aws_instance" "example" {
  ami           = "ami-2757f631"
  instance_type = "t2.micro"
}

resource "aws_eip" "ip" {
  instance = "${aws_instance.example.id}"
}
Run Code Online (Sandbox Code Playgroud)

来自https://www.terraform.io/intro/getting-started/dependencies.html

我收到一个错误:

* aws_eip.ip: Failure associating EIP: InvalidParameterCombination: You must specify an allocation id when mapping an address to a VPC instance
Run Code Online (Sandbox Code Playgroud)

知道为什么吗?

cat*_*sby 8

aws_eipTerraform中的资源使用vpc配置属性(truefalse)的值作为切换来确定资源ID是否应该是它的allocation_id,或者它是public_ip.然后,我们ID在API调用中使用它将EIP与实例相关联.

在EC2 Classic中,AssociateAddress调用public_id期望值.在EC2-VPC中,它allocation_id期望值.

对于aws_eip附加到VPC中的实例资源的资源,您需要包含vpc = trueaws_eip配置中.