Minha alteração que fez funcionar:
userdata = <<-EOF
#!/bin/bash
cd /home/ubuntu <---- REMOVI
echo "AWS Teste Index" > index.html
nohup busybox httpd -f -p 8080 &
EOF
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Minha alteração que fez funcionar:
userdata = <<-EOF
#!/bin/bash
cd /home/ubuntu <---- REMOVI
echo "AWS Teste Index" > index.html
nohup busybox httpd -f -p 8080 &
EOF
Allen, teu código está perfeito. Ele funciona porque todos os comandos no script serão executados na pasta atual, tornando a linha que você removeu aparentemente obsoleta.
Talvez a linha não tenha funcionado para você porque teu usuário não é "ubuntu".
Uma alternativa para garantir que os arquivos serão criados, e os comandos executados, na pasta do usuário, é utilizar o alias universal cd ~