O Terraform é uma ferramenta para construir, alterar e controlar a infraestrutura de TI de forma segura e eficiente.
O Terraform pode gerenciar provedores de serviços existentes e populares como OpenStack, Azure, AWS, Digital Ocean, entre outros, bem como soluções internas personalizadas.
A infraestrutura que o Terraform pode gerenciar inclui componentes de baixo nível, como instâncias de computação, armazenamento e redes, bem como componentes de alto nível, como entradas DNS, recursos SaaS, etc.
Infraestrutura usada neste projeto:
-
Siga o passo-a-passo da página https://developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli.
-
Teste a instalação pelo terminal digitando o comando abaixo.
terraform --version
-
Na sua máquina clone o repositório
git clone https://github.com/kledsonhugo/app-helloworld-aws.git
-
Dentro do diretório terraform/, crie o diretório .aws/.
-
Dentro do diretório terraform/.aws/, crie o arquivo credentials, inclua o conteúdo de exemplo abaixo e substitua pelas infos da sua conta AWS.
[iac] aws_access_key_id = ********************* aws_secret_access_key = *********************
-
Dentro do diretório terraform/.aws/, crie o arquivo config e inclua o conteúdo abaixo.
[profile iac] region = us-east-1 output = json
-
Abra o terminal e execute o comando abaixo.
terraform -chdir=./terraform init
- O texto em verde Terraform has been successfully initialized! será mostrado indicando que o Terraform inicializou corretamente.
-
Valide que não existem erros no código Terraform.
terraform -chdir=./terraform validate
-
Planeje a criação dos recursos de TI na AWS.
terraform -chdir=./terraform plan -out tfplan
-
Crie os recursos de TI na AWS.
terraform -chdir=./terraform apply tfplan
-
Verifique as informações dos recursos de TI criados na AWS.
terraform -chdir=./terraform show
- Abra o portal AWS e valide a configuração dos recursos de TI criados (VPC, Internet Gateway, SubRede, Tabela de Roteamento, Security Group e EC2).
-
Destruir os recursos de TI criados na AWS.
terraform -chdir=./terraform plan -destroy -out tfplan terraform -chdir=./terraform apply tfplan