Conceitos Básicos

O Terraform é o software "infrastructure-as-code" que permite definir os seus recursos do Oracle Cloud Infrastructure (OCI) em arquivos que podem ter persistência, controle de versão e compartilhamento. Esses arquivos descrevem as etapas necessárias para provisionar a infraestrutura e manter o estado desejado:

Os recursos podem criar objetos de infraestrutura do OCI, como redes virtuais na nuvem ou instâncias de computação. Seu primeiro aplicativo da configuração cria os objetos e os aplicativos subsequentes podem atualizá-los ou excluí-los.

As origens de dados representam views somente para leitura da infraestrutura existente do OCI.

As variáveis representam parâmetros do Terraform.

Cuidado

Os arquivos de estado do Terraform contêm todos os atributos de recursos especificados como parte dos arquivos de configuração. Se você gerenciar dados sigilosos com o Terraform, como senhas de banco de dados ou de usuário ou chaves privadas de instâncias, trate o próprio arquivo de estado como dados sigilosos. Consulte Armazenando Dados Sigilosos para obter mais informações.

Exemplo de Uso

O Terraform executa as etapas e cria a infraestrutura que você descreve nos arquivos de configuração. Quando a configuração abaixo é aplicada, por exemplo, o Terraform estabelece conexão com a tenancy e recupera uma lista de domínios de disponibilidade. Como não há recursos definidos nessa configuração, nenhuma infraestrutura é criada ou modificada.

# Configure the OCI provider with an API Key
# tenancy_ocid is the compartment OCID for the root compartment
provider "oci" {
  tenancy_ocid = var.tenancy_ocid
  user_ocid = var.user_ocid
  fingerprint = var.fingerprint
  private_key_path = var.private_key_path
  region = var.region
}

# Get a list of Availability Domains
data "oci_identity_availability_domains" "ads" {
  compartment_id = var.tenancy_ocid
}

# Output the result
output "show-ads" {
  value = data.oci_identity_availability_domains.ads.availability_domains
}

Consulte Criando Configurações para obter informações mais detalhadas sobre os requisitos de configuração do Terraform.