Terraform é uma poderosa ferramenta de infraestrutura como código que permite aos usuários provisionar, gerenciar e automatizar infraestrutura em nuvem. Ao seguir este tutorial, você aprenderá o básico de como usar o Terraform para criar e gerenciar recursos na LetsCloud. Este guia cobre um método direto, mas o Terraform oferece diversas opções de personalização para configurações mais avançadas.

Pré-requisito

Antes de começar, certifique-se de que o Terraform está instalado no seu sistema. Você pode baixá-lo no site oficial do Terraform e seguir as instruções de acordo com seu sistema operacional (Windows, Linux ou macOS).

Objetivos

  • Aprender como configurar rapidamente uma instância básica usando Terraform na LetsCloud.
  • Entender os passos fundamentais para o provisionamento de infraestrutura com Terraform.

Passo 1: Instalar o Terraform

Certifique-se de que o Terraform está instalado, seguindo o Guia de Instalação do Terraform. Você pode verificar a instalação com:

$

terraform -version

Saída esperada:

Terraform v1.8.4

Isso confirma que o Terraform está disponível no PATH do sistema e pronto para uso.

Passo 2: Configurar o Provider da LetsCloud

Crie um diretório de projeto e entre nele:

$$

mkdir letscloud-terraform cd letscloud-terraform

Dentro deste diretório, crie um novo arquivo chamado main.tf. Este arquivo define sua configuração Terraform, incluindo o provider necessário e suas credenciais:

main.tf

terraform {
  required_providers {
    letscloud = {
      source = "letscloud-community/letscloud"
    }
  }
}

provider "letscloud" {
  #O token da API pode ser definido via variável de ambiente LETSCLOUD_API_TOKEN
  #api_token = "seu-token-aqui"
}

O provider letscloud permite que o Terraform se comunique com a API da LetsCloud e gerencie sua infraestrutura.

Passo 3: Criar uma Chave SSH

Se você ainda não tem um par de chaves SSH, gere uma com:

$

ssh-keygen -t rsa -b 4096 -C "seu_email@exemplo.com"

Aceite o caminho padrão quando solicitado (geralmente ~/.ssh/id_rsa).

Depois, adicione a chave na sua configuração Terraform:

main.tf

resource "letscloud_ssh_key" "main" {
  label = "main-key"
  key   = file("~/.ssh/id_rsa.pub")
}

Este passo garante acesso seguro à sua instância após a criação.

Passo 4: Configurar e Criar a Instância

Adicione ao seu main.tf a definição da instância que será provisionada:

main.tf

resource "letscloud_instance" "basic" {
  label         = "basic-instance"
  plan_slug     = "1vcpu-1gb-10ssd"
  image_slug    = "ubuntu-24.04-x86_64"
  location_slug = "MIA1"
  hostname      = "basic-instance.example.com"
  ssh_keys      = [letscloud_ssh_key.main.id]
  password      = "sua-senha-segura"
  depends_on    = [letscloud_ssh_key.main]
}

Você pode modificar os valores de plan_slug, image_slug e location_slug conforme necessário. Eles geralmente estão disponíveis na documentação do provider ou via API da LetsCloud.

Passo 5: Aplicar a Configuração do Terraform

Primeiro, inicialize seu diretório Terraform:

$

terraform init

Isso baixará os plugins necessários e preparará o ambiente.

Depois, visualize o plano de execução:

$

terraform plan

E aplique a configuração:

$

terraform apply

Confirme a ação digitando yes quando solicitado. Exemplo de saída:

Apply complete! Resources: 2 added, 0 changed, 0 destroyed.

Passo 6: Acessar sua Instância

Após a criação, o Terraform mostrará as informações da instância, incluindo o IP público.

Você pode acessá-la com:

$

ssh root@ip-da-instancia

Certifique-se de que sua chave privada (~/.ssh/id_rsa) tem as permissões corretas:

$

chmod 600 ~/.ssh/id_rsa

Conclusão

Parabéns! Você provisionou com sucesso uma instância na LetsCloud usando o Terraform. Esta abordagem automatizada aumenta a eficiência e a repetibilidade na gestão da infraestrutura.

Lembre-se, este tutorial mostra o cenário mais simples. O Terraform permite uma ampla personalização e configurações avançadas para atender demandas mais complexas.

Recursos Adicionais

Read more about: PT-BR