Есть обычный ec2 инстанс с user_data, который уже работает:
resource "aws_instance" "myWebServer" {
  ami                    = "ami-0c6ebbd55ab05f070" # Ubuntu Linux AMI
  instance_type          = "t2.micro"
  vpc_security_group_ids = [aws_security_group.webServerSG.id]
  user_data = templatefile("externalScripts/user_data.tpl", {
    name  = "Leo",
    names = ["Vasya", "Petya"]
  })
  tags = {
    Name = "myWebServer"
  }
Если добавить что-то в user_data, то при terraform plan вместо того, чтобы предложить удалить старый инстанс и заменить его на новый он предлагает сделать только 1 изменение - поменять хэш от user_data, т.к. он стал другой. В итоге после запуска он абсолютно ничего не изменит на самом сервере. в Чём может быть проблема? Если это может быть важно, то к этому инстансу еще привязан elastic ip
Пример добавления данных в user_data:
resource "aws_instance" "myWebServer" {
  ami                    = "ami-0c6ebbd55ab05f070" # Ubuntu Linux AMI
  instance_type          = "t2.micro"
  vpc_security_group_ids = [aws_security_group.webServerSG.id]
  user_data = templatefile("externalScripts/user_data.tpl", {
    name  = "Leo",
    names = ["Vasya", "Petya", "MASHA"]
  })
  tags = {
    Name = "myWebServer"
  }