Remarques :
- Ce tutoriel nécessite un accès à Oracle Cloud. Pour vous inscrire à un compte gratuit, reportez-vous à Introduction au niveau gratuit d'Oracle Cloud Infrastructure.
- Il utilise des exemples de valeurs pour les informations d'identification, la location et les compartiments Oracle Cloud Infrastructure. Lorsque vous terminez votre atelier, remplacez ces valeurs par celles propres à votre environnement cloud.
QuickStart Oracle Database@Azure avec des modules Terraform ou OpenTofu
Introduction
Oracle Database@Azure est un service Oracle Database exécuté sur Oracle Cloud Infrastructure (OCI), colocalisé dans les centres de données Microsoft, vous permettant d'utiliser les services Oracle Database avec une connexion la plus rapide aux ressources Azure. L'intégration multicloud implique plusieurs étapes de navigation entre OCI et le portail Microsoft Azure. Ce tutoriel explique comment rationaliser le processus de provisionnement en tirant parti de notre implémentation de référence des modules et modèles Terraform ou OpenTofu, disponibles dans le référentiel GitHub de la zone de renvoi multicloud OCI pour Microsoft Azure : terraform-OCI-multicloud-azure.
Processus de provisionnement
Une fois l'achat de 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. En fonction de la configuration, des stratégies et des procédures Azure de votre organisation, vous pouvez utiliser tout ou partie des étapes décrites dans la figure ci-dessous. Le diagramme ci-dessous illustre les opportunités pour Terraform ou OpenTofu de simplifier le processus de provisionnement, éliminant ainsi les étapes manuelles effectuées dans le portail Azure et la console OCI.
Pour commencer rapidement à utiliser les modèles et modules Terraform, vous devrez généralement effectuer ces tâches de haut niveau.
Objectifs
- Démarrage rapide d'Oracle Database@Azure avec des modules Terraform ou OpenTofu
Prérequis
- Assurez-vous que les logiciels nécessaires sont installés dans votre environnement. Outre Terraform ou OpenTofu et 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 : copier et cloner le référentiel GitHub
Clonez le référentiel terraform-oci-multicloud-azure et accédez au répertoire de modèles approprié pour commencer. Vous pouvez également le remplacer en premier, ce qui vous permet de synchroniser votre copie avec nos dernières mises à jour ultérieurement, ou éventuellement d'apporter vos mises à jour via une demande d'extraction.
Tâche 2 : initialisation de Terraform
Exécutez terraform init
ou tofu init
dans votre terminal pour configurer l'environnement Terraform local. Vous pouvez également configurer Terraform avec un état distant en consultant les documents de Terraform, d'OCI ou d'Azure pour plus de détails.
Tâche 3 : configuration des variables Terraform requises
Chaque répertoire de modèle contient un fichier terraform.tfvars.template
qui facilite le remplissage des variables d'entrée requises. Vous pouvez l'exploiter pour construire 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 une interface de ligne de commande terraform avec les paramètres -var
) pour configurer les variables requises.
Tâche 4 : authentification auprès d'Azure et d'OCI
Certains modèles terraform exploitent à la fois les fournisseurs de terraform OCI et Azure. Vous devez vous connecter à chaque environnement avant le provisionnement.
-
Authentification OCI
Le fournisseur OCI Terraform prend en charge plusieurs méthodes d'authentification. Pour plus d'informations, reportez-vous à Configuration du fournisseur.
Nous vous recommandons de configurer le fournisseur OCI Terraform à 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 vous authentifier auprès d'Azure avec le principal de service et le vérifier avec l'interface de ligne de commande Azure. Pour plus d'informations, reportez-vous à la page relative à l'authentification de Terraform auprès d'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 : vérifier et appliquer le plan Terraform
Après avoir configuré les 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 présente les modèles Terraform disponibles, décrit ce qu'ils font et sur quel fournisseur Terraform ils s'appuient. Vous pouvez les utiliser individuellement selon votre situation et les personnaliser davantage avec la zone de renvoi OCI et les modules vérifiés Azure (AVM) pour une configuration plus complexe. Pour plus d'informations sur les scénarios d'utilisation des conseils conjoints AzureRM et AzAPI de Microsoft et HashiCorp, reportez-vous à 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 SSO entre OCI et Azure
-
Modèle Terraform permettant de configurer la fédération RBAC et SSO entre OCI et Azure
Etapes suivantes
Ce tutoriel explique comment utiliser Terraform ou OpenTofu dans le provisionnement des services Oracle Database@Azure. Reportez-vous à la section Liens connexes pour plus de détails sur Oracle Database@Azure, les efforts d'automatisation, etc.
Faites-nous savoir si vous avez des fonctionnalités ou des demandes d'amélioration en créant un problème GitHub sur notre référentiel ou contactez notre forum OCI Multicloud. Nous sommes impatients de soutenir votre cas d'utilisation à chaque étape du processus.
Liens connexes
Accusés de réception
-
Auteur - Steven Chan (chef de produit principal senior, OCI Multicloud)
-
Contributeurs - Anwar Belayachi (architecte principal de solutions, OCI Multicloud), John Wargo (chef de produit principal), Partha Srinivasan (chef de produit principal), Wei Han (chef de produit principal)
Ressources de formation supplémentaires
Explorez d'autres ateliers sur docs.oracle.com/learn ou accédez à d'autres contenus de formation gratuits sur le canal Oracle Learning YouTube. De plus, visitez le site education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour obtenir la documentation produit, consultez le site Oracle Help Center.
QuickStart Oracle Database@Azure with Terraform or OpenTofu Modules
G13123-02
November 2024