Note :
- Ce tutoriel nécessite l'accès à Oracle Cloud. Pour vous inscrire à un compte gratuit, voir Introduction à l' niveau gratuit d'Oracle Cloud Infrastructure.
- Il utilise des exemples de valeurs pour les données d'identification, la location et les compartiments Oracle Cloud Infrastructure. À la fin de votre laboratoire, remplacez ces valeurs par celles propres à votre environnement en nuage.
QuickStart Oracle Database@Azure avec modules Terraform ou OpenTofu
Présentation
Oracle Database@Azure est un service Oracle Database exécuté sur Oracle Cloud Infrastructure (OCI), colocalisé dans des centres de données Microsoft, ce qui vous permet d'utiliser les services Oracle Database avec une connexion la plus rapide aux ressources Azure. L'intégration multinuage implique plusieurs étapes de navigation entre le portail OCI et Microsoft Azure. Ce tutoriel explique comment simplifier le processus de provisionnement en tirant parti de notre mise en oeuvre de référence des modules et modèles Terraform ou OpenTofu, disponibles dans le référentiel GitHub de la zone d'atterrissage multinuage OCI pour Microsoft Azure : terraform-OCI-multicloud-azure.
Processus de provisionnement
Une fois l'achat du service terminé, vous pouvez commencer à simplifier le processus de provisionnement avec Terraform ou OpenTofu.
Une organisation doit effectuer plusieurs étapes pour acheter, configurer et utiliser le service dans son environnement Azure. Selon la configuration, les politiques et les procédures Azure de votre organisation, vous pouvez utiliser certaines ou toutes les étapes décrites dans la figure ci-dessous. Le diagramme ci-dessous présente des opportunités pour Terraform ou OpenTofu afin de simplifier le processus de provisionnement, éliminant ainsi les étapes manuelles effectuées dans le portail Azure et la console OCI.
Pour démarrer rapidement avec l'utilisation des modèles et modules Terraform, vous devez généralement effectuer ces tâches de haut niveau.
Objectifs
- Démarrer rapidement Oracle Database@Azure avec les modules Terraform ou OpenTofu
Préalables
- Assurez-vous que les logiciels nécessaires sont installés dans votre environnement. En plus de Terraform ou OpenTofu et de l'interface de ligne de commande Azure/OCI, vous aurez également besoin de Python pour les opérations qui ne sont pas prises en charge par les fournisseurs Terraform pour le moment.
Tâche 1 : Parcourez et clonez le référentiel GitHub
Clonez le référentiel terraform-oci-multicloud-azure et naviguez jusqu'au répertoire de modèles approprié pour commencer. Vous pouvez également la placer en premier, ce qui vous permet de synchroniser votre copie avec nos dernières mises à jour plus tard, ou éventuellement contribuer à vos mises à jour au moyen d'une demande d'extraction.
Tâche 2 : Initialiser Terraform
Exécutez terraform init
ou tofu init
dans votre terminal pour configurer l'environnement Terraform local. Vous pouvez également configurer Terraform avec l'état distant en vous référant aux documentations de Terraform, OCI ou Azure pour plus de détails.
Tâche 3 : Configurer les variables Terraform requises
Chaque répertoire de modèle contient un fichier terraform.tfvars.template
qui vous permet d'alimenter facilement les variables d'entrée requises. Vous pouvez l'utiliser pour créer votre propre fichier de définition de variable (par exemple, terraform.tfvars
) ou utiliser d'autres méthodes (par exemple, des variables d'environnement avec le préfixe TF_VAR_
ou l'interface de ligne de commande terraform avec les paramètres -var
) pour configurer les variables requises.
Tâche 4 : Authentifier Azure et OCI
Certains modèles terraform exploitent à la fois les fournisseurs terraform OCI et Azure. Vous devez vous connecter à chaque environnement avant le provisionnement.
-
Authentification OCI
Le fournisseur Terraform pour OCI prend en charge plusieurs méthodes d'authentification. Pour plus d'informations, voir Configuration du fournisseur.
Nous vous recommandons de configurer le fournisseur Terraform pour OCI à l'aide de l'authentification par clé d'API. Pour plus d'informations, voir Authentification par clé d'API.
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>"
Vous pouvez vérifier la configuration à l'aide de l'interface de ligne de commande 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
-
Authentification Azure
Vous pouvez authentifier Azure avec le principal de service et le vérifier avec l'interface de ligne de commande Azure. Pour plus d'informations, voir Authentifier Terraform vers 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
Tâche 5 : Réviser et appliquer le plan Terraform
Après avoir configuré vos variables et l'authentification, exécutez terraform plan
ou tofu plan
pour vérifier les modifications. Une fois que vous êtes satisfait du plan, exécutez terraform apply
ou tofu apply
pour provisionner les configurations.
Modèles Terraform
Le tableau suivant décrit les modèles Terraform disponibles, ce qu'ils font et le fournisseur Terraform sur lequel ils comptent. Vous pouvez les utiliser individuellement en fonction de votre situation, et vous pouvez les personnaliser davantage avec la zone d'atterrissage d'OCI et les modules vérifiés Azure (AVM) pour une configuration plus complexe. Pour plus d'informations sur les scénarios d'utilisation conjointe des conseils AzureRM et AzAPI de Microsoft et HashiCorp, voir Déverrouillage du meilleur d'Azure avec les fournisseurs AzureRM et AzAPI.
Exadata et Autonomous Database
Identité
-
Modèle Terraform pour configurer la fédération d'authentification unique entre OCI et Azure
-
Modèle Terraform pour configurer la fédération RBAC et SSO entre OCI et Azure
Étapes suivantes
Ce tutoriel explique comment utiliser Terraform ou OpenTofu dans le provisionnement des services Oracle Database@Azure. Pour plus de détails sur Oracle Database@Azure, sur les efforts d'automatisation, consultez la section Liens connexes.
Indiquez-nous si vous avez des fonctions ou des demandes d'amélioration en créant un problème GitHub dans notre référentiel ou communiquez avec notre forum multinuage OCI. Nous sommes impatients de soutenir votre cas d'utilisation à chaque étape du processus.
Liens connexes
Confirmation
-
Auteur - Steven Chan (Gestionnaire principal de produit, OCI multinuage)
-
Contributeurs - Anwar Belayachi (architecte de solution principal principal, multinuage OCI), John Wargo (gestionnaire principal de produits), Partha Srinivasan (gestionnaire principal de produits), Wei Han (gestionnaire principal de produits)
Autres ressources d'apprentissage
Explorez d'autres laboratoires sur la page docs.oracle.com/learn ou accédez à plus de contenu d'apprentissage gratuit sur le canal YouTube d'Oracle Learning. De plus, visitez education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour obtenir de la documentation sur le produit, visitez Oracle Help Center.
QuickStart Oracle Database@Azure with Terraform or OpenTofu Modules
G13122-02
November 2024