首页 > 解决方案 > 将私有 IP 添加到文件 - Terraform

问题描述

我希望能够转储 Terraform 创建的 EC2 服务器的私有 IP。

resource "aws_instance" "hello"  {
  count = "3"
  tags {
      Name = "${var.name}"

  }

  ami = "${var.AWS_AMI}"
  instance_type = "${var.aws_instance_type}"
  subnet_id = "${var.aws_subnet_id}"

我如何将为此实例创建的私有 IP 作为逗号分隔列表转储到文件中,以便另一个 bash 脚本可以从那里读取它?

标签: terraform

解决方案


一种选择是在 terraform 文件中指定输出变量:

例子:

output hello_ec2_private_ip {
  value = "${join(",",aws_instance.hello.*.private_ip)}"
}

然后使用terraform output命令列出输出并将其通过管道传输到文件

例子:

terraform output  hello_ec2_private_ip > private_hello.txt

推荐阅读