Terraform EC2用户数据未运行

时间:2019-07-18 15:52:23

标签: amazon-web-services terraform

我有以下实例:

provisioner "remote-exec" {
    inline = ["# Connected!"]
  } 

通过terraform运行它时,它会创建实例,但会在VM登录时停止,并且永远不会运行user_data代码。

我尝试像这样使用remote_exec:

condor ferry
condorferries
jersey ferry
condor ferries to guernsey
condor ferries £15 day trips

等待5分钟。并且当时实例还没有创建错误。

在此ec2实例中是否有通过Terraform运行用户数据的方法?当我在没有terraform的AWS中创建类似实例时,效果很好。

1 个答案:

答案 0 :(得分:1)

请勿将base64编码的数据传递到user_data,因为Terraform会为您进行base64编码。参见https://www.terraform.io/docs/providers/aws/r/instance.html#user_data

如果必须传递base64编码的数据,请改用user_data_base64

将代码更改为:

  user_data = "${join("", list("vmseries-bootstrap-aws-s3bucket=", var.MasterS3Bucket))}"