Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Bug] Não cria nova instância, apenas atualiza! Não cria novo index.html

Ao executar o comando terraform apply uma nova instância não é criada apenas atualizada, e o terraform parece não reconhecer o comando dentro do user_data = <<-EOF EOF.

1 resposta
solução!

[Premissa] : Capitulo 2 ter funcionado corretamente.

[Solução] : Analisei varios comentários e soluções propostas para o problema, estava com o mesmo problema informado acima. Para solucionar é necessário destuir a instância/maquina atual e criar uma nova (Pronto é somente isso).

Então é simples, apenas executar o:

terraform destroy
terraform apply

Done! .... Pode acessar a nova maquina/instancia que irá funcionar.

[ATENÇÃO]: Necessário verificar os novos dados da conexao, string do ssh e ip publico.

O terraform não reconhece que precisar criar uma nova instância quando adicionamos o comando o user_data (A priori no arquivo atual, parece não reconhecer o comando dentro de user_data como um script a ser executado).

[BONUS] : Adicionei ao codigo o comando user_data_replace_on_change = true .Fiz alguns testes e observei, que apos destruir a instancia antiga e criar uma nova, todas as alterações que fiz dentro do "user_data", o terraform ""passou a reconhecer as alterações", e automaticamente, apos executar o terraform apply passou a destruir e recriar minhas instancias automaticamente. Não sendo mais necessário executar o "terraform destroy" manual.

[Importante] : Todos os passos até o final do capitulo 2 tenham funcionado corretamente.

Vou postar meu codigo caso tenham duvida da estrutura.

#configuracao provedor
terraform {
  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = "~> 4.16"
    }
  }

  required_version = ">= 1.2.0"
}
#configuracao regiao
provider "aws" {
  profile = "default"
  region  = "us-west-2"
}

resource "aws_instance" "app_server" {
  ami           = "ami-03f65b8614a860c29"
  instance_type = "t2.micro"
  key_name = "sua_chave"
  user_data = <<-EOF
                #!/bin/bash
                cd /home/ubuntu
                echo "<h1>this is man/h1>" > index.html
                nohup busybox httpd -f -p 8080 &
              EOF
  user_data_replace_on_change = true
  tags = {
    Name = "Instancia NEW EC2 X2"
  }
}