19 de Fevereiro de 2024 - @Walmir Neto
Depois de Configurando usuário Terraform na AWS, vamos dá uma olhada por cima do Terraform OU você pode seguir o Instalando OpenTofu e trocar todos os comandos terraform
nesse artigo por tofu
Agora vamos criar uma nova arquivo para os novos testes, no meu caso vou criar uma pasta chamada devops
e dentro dela vou criar um arquivo main.tf
. Neles vamos ter que criar alguns blocos. O primeiro deles é referente ao provider que será utilizado, além de setar a região, entre outos. Nesse caso basicamente ficaria assim:
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 3.0"
}
}
}
provider "aws" {
# N. Virginia
region = "us-east-1"
}
resource "aws_instance" "ows-apps" {
# Identificador do sistema operacional (Lembrando que é por região)
ami = "ami-09e67e426f25ce0d7"
# Elegível como plano gratuito (caso não extrapole os limites da AWS)
instance_type = "t2.micro"
# Nome da chave ssh (Lembrando que é por região e não precisa de extensão do arquivo)
key_name = "ows-apps"
tags = {
# nome da instancia na AWS
Name = "ows-apps"
}
}
Dentro do bloco provider
, temos o parametro key_name
que é relacionado a chave ssh. Precisamos criar uma, nesse caso vou criar uma chave chamada ows-apps
:
ssh-keygen -t rsa -C [email protected] -f ~/.ssh/ows-apps
Com isso será criado os dois arquivos ows-apps.pub
e ows-apps
dentro de ~/.ssh
e você precisa importa-lá na AWS.
Na barra de pesquisa procure por "Key pairs", clique "Key pairs", em seguida em "Actions" > "Import key pair":
Em seguida ou selecione o arquivo que você criou (no campo "key pair file") ou adicione o conteúdo no textarea:
Feito isso, sua chave vai está salva:
Após a criação do seu arquivo qualquer_coisa.tf
, que no caso atual é o main.tf
. É preciso rodar alguns comandos do terraform.
terraform init # Prepara/inicializa o projeto (baixa dependencias)