Introducción
Terraform es un software de "infraestructura como código" que permite definir los recursos de Oracle Cloud Infrastructure (OCI) en archivos que puede mantener, versionar y compartir. En estos archivos se describen los pasos necesarios para aprovisionar la infraestructura y mantener el estado deseado:
Los recursos pueden crear objetos de infraestructura de OCI, como redes virtuales en la nube o instancias informáticas. La primera aplicación de la configuración crea los objetos y las aplicaciones posteriores pueden actualizarlos o suprimirlos.
Los orígenes de datos representan vistas de solo lectura de la infraestructura de OCI existente.
Las variables representan parámetros para Terraform.
Los archivos de estado de Terraform contienen todos los atributos de recursos especificados como parte de los archivos de configuración. Si gestiona datos confidenciales con Terraform, como contraseñas de bases de datos o de usuarios o claves privadas de instancias, debe tratar el archivo de estado como datos confidenciales. Consulte Almacenamiento de datos confidenciales para obtener más información.
Primeros pasos
Para comenzar, puede visitar nuestros tutoriales del proveedor de Terraform para obtener tutoriales y ejemplos, o bien consultar los siguientes temas para instalar y configurar el proveedor de Terraform de OCI:
Ejemplo de uso
Terraform ejecuta los pasos y crea la infraestructura que describe en los archivos de configuración. Cuando se aplica la siguiente configuración, por ejemplo, Terraform se conecta a su arrendamiento y recupera una lista de sus dominios de disponibilidad. Debido a que no hay recursos definidos en esta configuración, no se crea ni modifica ninguna infraestructura.
# 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 Creación de configuraciones para obtener información más detallada sobre los requisitos de configuración de Terraform.