Revisado por Mario Andrés Escobar
Neste artigo irei demostrar como utilizar o Terraform com a Cloud da Oracle (OCI).
O que é o Terraform?
O Terraform é uma ferramenta para construir, alterar e controlar a infraestrutura de forma segura e eficiente. Ela foi criada pela HashiCorp e faz parte do que chamamos de Infrastructure as Code.
Primeiramente é necessário realizar o download e instalação do Terraform.
O Download pode ser realizado no site abaixo:
https://www.terraform.io/downloads.html
Após o download, basta descompactar o arquivo conforme imagens abaixo:
Comandos:
Verificando a versão do Terraform:
Após o download do Terraform, é necessário realizar o download do terraform-provider-oci.
O Download pode ser realizado no site abaixo:
https://github.com/oracle/terraform-provider-oci
Após o download do terraform-provider-oci, basta descompactar o arquivo conforme imagens abaixo:
Comandos:
Agora será necessário gerar as chaves conforme a documentação abaixo:
https://docs.cloud.oracle.com/iaas/Content/API/Concepts/apisigningkey.htm

Comandos:
Para este artigo, irei setar as variáveis de ambiente utilizadas pelo Terraform no arquivo .bash_profile:
O Tenancy OCID pode ser encontrado no final de cada página do OCI:
O User OCID pode ser encontrado em Identity, Users:
O Compartment OCID pode ser encontrado em Identity, Compartments:
A chave publica foi gerada anteriormente no seguinte diretório:
O conteúdo da chave pública deve ser copiado para as API Keys, que ficam em Identity, Users:
Com isso será gerado o Fingerprint:
O arquivo .bash_profile ficará da seguinte forma:
Neste artigo iremos criar e depois remover uma VCN (Virtual Cloud Network).
O download do arquivo de exemplo vcn.tf pode ser feito na url abaixo:
https://github.com/oracle/terraform-provider-oci/blob/master/docs/examples/networking/vcn/vcn.tf
O comando terraform init irá carregar as variáveis de ambiente do terraform:
O comando terraform plan irá nos mostrar o que será criado:
Utilizando o comando terraform apply iremos criar a VNC:
Utilizando o comando terraform destroy iremos remover a VNC criada anteriormente:
https://github.com/oracle/terraform-provider-oci
Alex Zaballa, formado em Análise de Sistemas, é especialista em Banco de Dados Oracle com sólidos conhecimentos em Servidores de Aplicação e Sistemas Operacionais; trabalha com Oracle há 18 anos, é Oracle ACE Director, certificado OCM Database 12c/MAA/11G/Cloud e conta com mais de 275 outras certificações em produtos da Oracle. Alex também é membro do Groupo de Usuários Oracle do Brasil (GUOB), fundador do Grupo de Usuários Oracle de Angola (GUOA) e membro do time OraWorld.
Este artigo foi revisto pela equipe de produtos Oracle e está em conformidade com as normas e práticas para o uso de produtos Oracle