Terraform在变量中引用的未知资源



我是Terraform的初学者。我正在尝试执行从Terraform入门指南中执行的代码。

provider "aws" {
  access_key = "${var.access_key}"
  secret_key = "${var.secret_key}"
  region     = "${var.region}"
}
resource "aws_instance" "example" {
  ami           = "${lookup(var.amis, var.region)}"
  instance_type = "t2.micro"
  tags {
    Name = "newprovisionerstest"
  }
  provisioner "local-exec" {
    command = "echo ${aws_instance.example.public_ip} > ip_address.txt"
  }
}
output "ip" {
  value = "${aws_eip.ip.public_ip}"
}

我运行

Terraform应用

Terraform刷新

它给出以下错误:

错误:输出'ip':未知资源'aws_eip.ip'在变量aws_eip.ip.ip.public_ip

中引用

为什么这样?是因为" aws_eip"资源在任何地方都没有声明?

就像您自己说的那样,没有称为IP的AWS_EIP资源。如果您使用

aws_instance.example.public_ip

它应该完全正常

最新更新