簡體   English   中英

在創建 EC2 期間將 Terraform 實例屬性引用到用戶數據

[英]Referencing Terraform instance attributes to user data during creation of EC2

如何將aws_instance資源的public_dns值傳遞給user_data部分?

resource "aws_instance" "app_server" {
  ami                    = "ami-04ad2567c9e3d7893"
  instance_type          = "t2.micro"
  vpc_security_group_ids = [aws_security_group.web-sg.name]


  user_data = <<-EOF
                  #!/bin/bash
                  sudo su
                  echo "<p> The Public DNS of instance: ${self.app_server.public_dns} </p>" >> index.html
                  python -m SimpleHTTPServer 80
                  EOF
  tags = {
    Name = "web_instance"
  }

}

我嘗試使用selfaws_instance.app_server.public_dns聲明,但它們都沒有出現以下錯誤。

在此處輸入圖片說明

在此處輸入圖片說明

實例啟動后,公共 dns 將可用。 無法在用戶數據中引用它。 您可以使用以下命令閱讀它:

curl http://169.254.169.254/latest/meta-data/public-hostname

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM