Este guia mostra como começar a usar o Azion Terraform Provider para gerenciar sua infraestrutura como código.


Pré-requisitos

Antes de começar, certifique-se de ter:


Passo 1: Instalar o Terraform

Você deve ter o Terraform Core instalado em seu ambiente. Veja como instalar.

Verifique a instalação:

Terminal window
terraform version

Passo 2: Configurar o Provider

Crie um novo diretório para seu projeto Terraform:

Terminal window
mkdir azion-terraform
cd azion-terraform

Crie o arquivo main.tf:

terraform {
required_providers {
azion = {
source = "aziontech/azion"
version = "2.0.0"
}
}
}
provider "azion" {
# Recomendado: use variável de ambiente AZION_API_TOKEN
# api_token = var.api_token
}

Passo 3: Configurar Autenticação

Opção 1: Variável de Ambiente (Recomendado)

Terminal window
export AZION_API_TOKEN="seu-token-pessoal"

Opção 2: Arquivo de Variáveis

Crie variables.tf:

variable "api_token" {
type = string
description = "Personal Token da Azion"
sensitive = true
}

Crie terraform.tfvars (adicione ao .gitignore):

api_token = "seu-token-pessoal"

Atualize main.tf:

provider "azion" {
api_token = var.api_token
}

Passo 4: Criar Sua Primeira Infraestrutura

Crie resources.tf:

# Criar um workload
resource "azion_workload" "my_workload" {
name = "meu-primeiro-workload"
}
# Criar um connector
resource "azion_connector" "my_connector" {
name = "meu-connector"
}
# Criar uma application
resource "azion_application_main_settings" "my_app" {
name = "minha-aplicacao"
}
# Criar uma zona DNS
resource "azion_intelligent_dns_zone" "my_zone" {
name = "exemplo.com"
active = true
}

Passo 5: Inicializar e Aplicar

Inicializar o Terraform

Terminal window
terraform init

Verificar o Plano

Terminal window
terraform plan

Aplicar as Mudanças

Terminal window
terraform apply

Digite yes quando solicitado para confirmar.


Passo 6: Verificar os Recursos

Terminal window
# Listar todos os recursos
terraform state list
# Ver detalhes de um recurso específico
terraform state show azion_workload.my_workload

Exemplo de Início Rápido

Aqui está um exemplo completo para começar com o Azion Terraform Provider v2.0:

terraform {
required_providers {
azion = {
source = "aziontech/azion"
version = "2.0.0"
}
}
}
provider "azion" {
api_token = var.api_token
}
# Criar um workload
resource "azion_workload" "example" {
name = "meu-workload"
# Configurações adicionais...
}
# Criar um connector
resource "azion_connector" "example" {
name = "meu-connector"
# Configurações adicionais...
}
# Criar uma application
resource "azion_application_main_settings" "example" {
name = "minha-aplicacao"
# Configurações adicionais...
}

Estrutura do Projeto

Uma estrutura recomendada para projetos maiores:

azion-terraform/
├── main.tf # Provider e configurações gerais
├── variables.tf # Variáveis de entrada
├── outputs.tf # Outputs
├── terraform.tfvars # Valores das variáveis (não versionar)
├── modules/
│ ├── workload/
│ ├── application/
│ └── security/
└── environments/
├── dev/
├── staging/
└── prod/

Próximos Passos


Solução de Problemas

Erro de Autenticação

Error: error configuring Terraform Azion Provider: personal token is required

Solução: Verifique se o token está configurado corretamente via variável de ambiente ou arquivo de configuração.

Versão Incompatível

Error: provider registry.terraform.io/aziontech/azion: no compatible versions

Solução: Verifique se você está usando Terraform 1.0 ou superior.

Recursos Não Encontrados

Error: resource not found

Solução: Verifique se o recurso existe na API v4. Alguns recursos da v3 foram removidos ou renomeados. Consulte o Guia de Migração.