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:
- Terraform versão 1.0 ou superior instalado
- Uma conta Azion ativa
- Um Personal Token com permissões adequadas
Passo 1: Instalar o Terraform
Você deve ter o Terraform Core instalado em seu ambiente. Veja como instalar.
Verifique a instalação:
terraform versionPasso 2: Configurar o Provider
Crie um novo diretório para seu projeto Terraform:
mkdir azion-terraformcd azion-terraformCrie 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)
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 workloadresource "azion_workload" "my_workload" { name = "meu-primeiro-workload"}
# Criar um connectorresource "azion_connector" "my_connector" { name = "meu-connector"}
# Criar uma applicationresource "azion_application_main_settings" "my_app" { name = "minha-aplicacao"}
# Criar uma zona DNSresource "azion_intelligent_dns_zone" "my_zone" { name = "exemplo.com" active = true}Passo 5: Inicializar e Aplicar
Inicializar o Terraform
terraform initVerificar o Plano
terraform planAplicar as Mudanças
terraform applyDigite yes quando solicitado para confirmar.
Passo 6: Verificar os Recursos
# Listar todos os recursosterraform state list
# Ver detalhes de um recurso específicoterraform state show azion_workload.my_workloadExemplo 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 workloadresource "azion_workload" "example" { name = "meu-workload" # Configurações adicionais...}
# Criar um connectorresource "azion_connector" "example" { name = "meu-connector" # Configurações adicionais...}
# Criar uma applicationresource "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
- Workloads - Aprenda sobre workloads
- Applications - Configure aplicações
- Security - Configure firewall e WAF
- Best Practices - Boas práticas de uso
Solução de Problemas
Erro de Autenticação
Error: error configuring Terraform Azion Provider: personal token is requiredSoluçã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 versionsSolução: Verifique se você está usando Terraform 1.0 ou superior.
Recursos Não Encontrados
Error: resource not foundSolução: Verifique se o recurso existe na API v4. Alguns recursos da v3 foram removidos ou renomeados. Consulte o Guia de Migração.