【发布时间】:2019-09-30 19:15:46
【问题描述】:
在运行“terraform apply”以使用 aws_eip 和配置程序 local-exec 命令创建最小 ec2 配置并将实例的 ip 记录到日志文件后,记录的 ip 与分配给创建的实例的 ip 不同
example.tf:
provider "aws" {
access_key = ""
secret_key = ""
region = "us-east-1"
}
resource "aws_instance" "example" {
ami = "ami-b374d5a5"
instance_type = "t2.micro"
provisioner "local-exec" {
command = \
"echo ${aws_instance.example.public_ip} >ip_address.txt"
}
}
resource "aws_eip" "ip" {
instance = "${aws_instance.example.id}"
}
预期结果是: 日志文件 ip_addtess.txt 中的地址 = elasticIp in created ec2 instance;
实际是:日志文件中的ip:34.239.128.148 ip ec2 创建实例:3.216.120.212
【问题讨论】:
-
弹性IP地址和公网IP地址不是一回事:docs.aws.amazon.com/AWSEC2/latest/UserGuide/…。此外,您应该使用
output清晰地显示这些值:terraform.io/docs/configuration/outputs.html
标签: terraform