|
| 1 | +--- |
| 2 | +title: OCI multicloud landing zone for Azure |
| 3 | +description: Learn about OCI multicloud autonomous database landing zone for Azure. |
| 4 | +author: jjaygbay1 |
| 5 | +ms.author: jacobjaygbay |
| 6 | +ms.topic: concept-article |
| 7 | +ms.service: oracle-on-azure |
| 8 | +ms.date: 08/01/2024 |
| 9 | +--- |
| 10 | + |
| 11 | + |
| 12 | +# OCI multicloud landing zone for Azure |
| 13 | + |
| 14 | +Oracle Cloud Infrastructure (OCI) partnered with Microsoft Azure to develop and distribute HashiCorp Terraform/OpenTofu modules that streamline the provisioning process. |
| 15 | + |
| 16 | +When you use both OCI Multicloud Landing Zone for Azure (OCI LZ) and Microsoft Verified Modules (MVM), multiple templates empower Oracle Database@Azure. These Terraform/OpenTofu modules use four (4) terraform providers, AzureRM, AzureAD, AzAPI, and OCI, covering IAM, networking, and database layer resources. Apply these reference implementations for a quick start deployment, or customize them for a more complex topology fit to your needs. |
| 17 | + |
| 18 | +The following diagram illustrates where Terraform or OpenTofu can be introduced to streamline the identity, access, networking, and provisioning processes within Oracle Database@Azure. |
| 19 | + |
| 20 | +:::image type="content" source="media/architecture-diagram.png" alt-text="Architectural diagram of the Terraform components"::: |
| 21 | + |
| 22 | + |
| 23 | +## Prerequisites |
| 24 | +1. Complete, at a minimum, steps 1-2 of the [Onboarding with Oracle Database@Azure](https://docs.oracle.com/iaas/Content/multicloud/oaaonboard.htm). |
| 25 | +1. Have a Terraform/OpenTofu, OCI CLI, Azure CLI, and python (minimum 3.4) environment. For more information, see the [Oracle Multicloud Landing Zone for Azure README](https://github.com/oracle-quickstart/terraform-oci-multicloud-azure?tab=readme-ov-file#prerequisites). |
| 26 | + |
| 27 | +### Dependencies |
| 28 | +The [Oracle Multicloud Landing Zone for Azure](https://github.com/oracle-quickstart/terraform-oci-multicloud-azure) modules and templates use multiple Terraform providers. |
| 29 | + |
| 30 | +| Terraform/OpenTofu Providers | Terraform/OpenTofu Modules | |
| 31 | +| ---------------------------- | -------------------------- | |
| 32 | +| [AzAPI](/azure/developer/terraform/overview-azapi-provider) | [OCI Landing Zone modules](https://github.com/oci-landing-zones/) | |
| 33 | +| [AzureAD](https://registry.terraform.io/providers/hashicorp/azuread/latest/docs) | [Azure Verified Modules](https://aka.ms/avm) | |
| 34 | +| [AzureRM](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs) | | |
| 35 | +| [OCI](https://registry.terraform.io/providers/oracle/oci/latest/docs) | | |
| 36 | + |
| 37 | +### Templates |
| 38 | +Refer to [Oracle Multicloud Landing Zone for Azure](https://github.com/oracle-quickstart/terraform-oci-multicloud-azure) for module details. |
| 39 | + |
| 40 | +| Template | Use Case and Configurations | Terraform/OpenTofu Providers | |
| 41 | +| -------- | --------------------------- | ---------------------------- | |
| 42 | +| [az-oci-adbs](https://github.com/oracle-quickstart/terraform-oci-multicloud-azure/tree/main/templates/az-oci-adbs) | **Quick start Autonomous Database** | [hashicorp/azurerm](https://registry.terraform.io/providers/hashicorp/azurerm) | |
| 43 | +| | 1. Configuring Azure virtual network with [delegated subnet limits](https://docs.oracle.com/iaas/Content/database-at-azure/oaa-delegated-subnets-limits.htm) | [azure/api](https://registry.terraform.io/providers/Azure/azapi) | |
| 44 | +| | 2. [Provisioning an Autonomous Database](oracle-database-provisioning-autonomous-database.md) | | |
| 45 | +| [az-oci-rbac-n-sso-fed](https://github.com/oracle-quickstart/terraform-oci-multicloud-azure/tree/main/templates/az-oci-rbac-n-sso-fed) | Set up both identity federation and RBAC roles/groups | All the following | |
| 46 | +| [az-oci-sso-federation](https://github.com/oracle-quickstart/terraform-oci-multicloud-azure/tree/main/templates/az-oci-sso-federation) | Set up [SSO Between OCI and Microsoft Entra ID](https://docs.oracle.com/iaas/Content/Identity/tutorials/azure_ad/sso_azure/azure_sso.htm) | [hashicorp/azuread](https://registry.terraform.io/providers/hashicorp/azuread/) | |
| 47 | +| | 1. Get service provider metadata from OCI IAM. | [hashicorp/azurerm](https://registry.terraform.io/providers/hashicorp/azurerm) | |
| 48 | +| | 2. Create an Entra ID application. | [hashicorp/oci](https://registry.terraform.io/providers/hashicorp/oci) | |
| 49 | +| | 3. Set up SAML SSO for the Entra ID application. | | |
| 50 | +| | 4. Set up attributes and claims in the Entra ID application. | | |
| 51 | +| | 5. Assign a test user to the Entra ID application. | | |
| 52 | +| | 6. Enable the Entra ID application as the Identity Provider (IdP) for OCI IAM. | | |
| 53 | +| | 7. Set up [Identity Lifecycle Management Between OCI IAM and Entra ID](https://docs.oracle.com/iaas/Content/Identity/tutorials/azure_ad/lifecycle_azure/azure_lifecycle.htm#azure-lifecycle). | | |
| 54 | +| [az-odb-rbac](https://github.com/oracle-quickstart/terraform-oci-multicloud-azure/tree/main/templates/az-odb-rbac) | Create [roles and groups in Azure](https://docs.oracle.com/iaas/Content/multicloud/oaagroupsroles.htm) for Exadata and Autonomous Database services. | [hashicorp/azuread](https://registry.terraform.io/providers/hashicorp/azuread/) | |
| 55 | +| | 1. Create Azure role definition for ADBS Administrator role.| [hashicorp/azurerm](https://registry.terraform.io/providers/hashicorp/azurerm) | |
| 56 | +| | 1. Create Azure group. | | |
| 57 | +| | 1. Create Azure role assignment. | | |
| 58 | + |
| 59 | +### More Terraform/OpenTofu resources |
| 60 | + |
| 61 | +* [QuickStart Oracle Database@Azure with Terraform or OpenTofu Modules](https://docs.oracle.com/en/learn/dbazure-terraform/index.html) |
| 62 | +* [Terraform: Set Up OCI Terraform](https://docs.oracle.com/iaas/developer-tutorials/tutorials/tf-provider/01-summary.htm) |
| 63 | +* [Import OCI Resources into a Terraform State File](https://docs.oracle.com/en/learn/terraform-statefile-oci-resources/index.html) |
| 64 | +* [Azure Verified Module for Virtual Network](https://github.com/Azure/terraform-azurerm-avm-res-network-virtualnetwork) |
| 65 | +* [Quickstart: Install and Configure Terraform For Azure](/azure/developer/terraform/quickstart-configure) |
| 66 | +* [Authenticate Terraform to Azure](/azure/developer/terraform/authenticate-to-azure) |
0 commit comments