Note:
- Este tutorial requiere acceso a Oracle Cloud. Para registrarse para obtener una cuenta gratuita, consulte Introducción a la cuenta gratuita de Oracle Cloud Infrastructure.
- Utiliza valores de ejemplo para credenciales, arrendamiento y compartimentos de Oracle Cloud Infrastructure. Al finalizar la práctica, sustituya estos valores por otros específicos de su entorno en la nube.
QuickStart Oracle Database@Azure con módulos Terraform o OpenTofu
Introducción
Oracle Database@Azure es un servicio de Oracle Database que se ejecuta en Oracle Cloud Infrastructure (OCI), ubicado en los centros de datos de Microsoft, lo que le permite utilizar los servicios de Oracle Database con una conexión más rápida a los recursos de Azure. La vinculación multinube implica varios pasos para navegar entre OCI y el portal de Microsoft Azure. En este tutorial se explica cómo optimizar el proceso de aprovisionamiento aprovechando nuestra implantación de referencia de módulos y plantillas de Terraform o OpenTofu, disponibles en el repositorio GitHub de la zona de llegada multinube de OCI para Microsoft Azure: terraform-OCI-multicloud-azure.
Proceso de aprovisionamiento
Una vez que haya completado la compra del servicio, puede empezar a simplificar el proceso de aprovisionamiento con Terraform o OpenTofu.
Hay varios pasos que una organización debe realizar para comprar, configurar y utilizar el servicio en su entorno de Azure. En función de la configuración, las políticas y los procedimientos de Azure de su organización, puede utilizar algunos o todos los pasos descritos en la siguiente figura. El siguiente diagrama ilustra oportunidades para que Terraform o OpenTofu simplifiquen el proceso de aprovisionamiento, eliminando los pasos manuales realizados en el portal de Azure y la consola de OCI.
Para empezar rápidamente con el uso de plantillas y módulos de Terraform, normalmente tendrá que realizar estas tareas de alto nivel.
Objetivos
- Inicio rápido de Oracle Database@Azure con módulos Terraform o OpenTofu
Requisitos
- Asegúrese de que el entorno tenga instalado el software necesario. Además de Terraform o OpenTofu y la CLI de Azure/OCI, también necesitará Python para operaciones que no están soportadas por los proveedores de Terraform en este momento.
Tarea 1: bifurcar y clonar el repositorio GitHub
Clone el repositorio terraform-oci-multicloud-azure y navegue hasta el directorio de plantilla adecuado para comenzar. Como alternativa, puede ordenar primero, lo que le permite sincronizar su copia con nuestras últimas actualizaciones más adelante, o, opcionalmente, contribuir con sus actualizaciones a través de una solicitud de extracción.
Tarea 2: Inicialización de Terraform
Ejecute terraform init
o tofu init
en el terminal para configurar el entorno de Terraform local. También puede configurar Terraform con estado remoto. Para obtener más información, consulte la documentación de Terraform, OCI o Azure.
Tarea 3: Configuración de las variables de Terraform necesarias
Cada directorio de plantilla contiene un archivo terraform.tfvars.template
que facilita el relleno de las variables de entrada necesarias. Puede utilizarlo para crear su propio archivo de definición de variables (por ejemplo, terraform.tfvars
) o bien utilizar otros métodos (por ejemplo, variables de entorno con prefijo TF_VAR_
o CLI de terraform con parámetros -var
) para configurar las variables necesarias.
Tarea 4: Autenticación en Azure y OCI
Algunas de las plantillas de terraform aprovechan los proveedores de terraform de OCI y Azure. Debe conectarse a cada entorno antes del aprovisionamiento.
-
Autenticación OCI
El proveedor de Terraform de OCI soporta varios métodos de autenticación. Para obtener más información, consulte Configuración del Proveedor.
Recomendamos configurar el proveedor de Terraform de OCI mediante la autenticación de claves de API. Para obtener más información, consulte API Key Authentication.
export TF_VAR_oci_tenancy_ocid="OCID of the OCI tenancy" export TF_VAR_oci_user_ocid="<OCID of the OCI user>" export TF_VAR_oci_private_key_path="<path (including filename) of the private key>" export TF_VAR_oci_fingerprint="<Key's fingerprint>"
Puede verificar la configuración mediante la CLI de OCI.
export OCI_CLI_TENANCY=$TF_VAR_oci_tenancy_ocid export OCI_CLI_USER=$TF_VAR_oci_user_ocid export OCI_CLI_FINGERPRINT=$TF_VAR_oci_fingerprint export OCI_CLI_KEY_FILE=$TF_VAR_oci_private_key_path oci iam tenancy get --tenancy-id $TF_VAR_oci_tenancy_ocid --output table --query "data.{Name:name, OCID:id}" --auth api_key
-
Autenticación de Azure
Puede autenticar en Azure con entidad de servicio y verificarlo con la CLI de Azure. Para obtener más información, consulte la sección sobre autenticación de Terraform en Azure.
export ARM_CLIENT_ID="<service_principal_appid>" export ARM_CLIENT_SECRET="<service_principal_password>" export ARM_TENANT_ID="<azure_subscription_tenant_id>" export ARM_SUBSCRIPTION_ID="<azure_subscription_id>" az login --service-principal -u $ARM_CLIENT_ID -p $ARM_CLIENT_SECRET -t $ARM_TENANT_ID az account show -o table
Tarea 5: Revisión y aplicación del plan de Terraform
Después de configurar las variables y la autenticación, ejecute terraform plan
o tofu plan
para revisar los cambios. Una vez que esté satisfecho con el plan, ejecute terraform apply
o tofu apply
para aprovisionar las configuraciones.
Plantillas de Terraform
En la siguiente tabla se describen las plantillas de Terraform disponibles, se describe lo que hacen y en qué proveedor de Terraform confían. Puede utilizarlos individualmente según su situación y puede personalizarlos aún más con OCI Landing Zone y Azure Verified Modules (AVM) para una configuración más compleja. Para obtener más información sobre los escenarios de uso de orientación conjunta de Microsoft y HashiCorp de AzureRM y AzAPI, consulte Desbloqueo de lo mejor de Azure con proveedores AzureRM y AzAPI.
Exadata y Autonomous Database
Identidad
-
Plantilla de Terraform para configurar la federación de SSO entre OCI y Azure
-
Plantilla de Terraform para configurar la federación de RBAC y SSO entre OCI y Azure
Pasos Siguientes
En este tutorial se explica cómo puede utilizar Terraform o OpenTofu al aprovisionar servicios de Oracle Database@Azure. Consulte la sección Enlaces relacionados para obtener detalles sobre Oracle Database@Azure, esfuerzo de automatización y mucho más.
Infórmanos si tienes alguna solicitud de función o mejora creando un problema de GitHub en nuestro repositorio o interactúa con nuestro foro multinube de OCI. Estamos ansiosos por apoyar su caso de uso en cada paso del camino.
Enlaces relacionados
Confirmaciones
-
Autor: Steven Chan (director principal sénior de productos, OCI Multicloud)
-
Contribuyentes: Anwar Belayachi (arquitecto principal de soluciones sénior, OCI Multicloud), John Wargo (director principal de productos), Partha Srinivasan (director principal de productos), Wei Han (director principal de productos)
Más recursos de aprendizaje
Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de formación gratuita en el canal YouTube de Oracle Learning. Además, visita education.oracle.com/learning-explorer para convertirte en un Oracle Learning Explorer.
Para obtener documentación sobre el producto, visite Oracle Help Center.
QuickStart Oracle Database@Azure with Terraform or OpenTofu Modules
G13121-02
November 2024