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.
Configurer la boîte à outils CD3 avec l'interface de ligne de commande pour créer et exporter des ressources Oracle Cloud Infrastructure
Présentation
La boîte à outils d'automatisation des produits livrables de conception de déploiement en nuage (CD3) vous permet de créer, d'exporter et de gérer sans effort les ressources Oracle Cloud Infrastructure (OCI) en convertissant facilement des modèles Excel en modules Terraform entièrement fonctionnels.
La boîte à outils prend également en charge la gestion transparente des ressources à l'aide du service Git pour OCI DevOps et des pipelines Jenkins.
Objectifs
-
Lancez la pile du gestionnaire de ressources de conteneur CD3 en un seul clic et créez les ressources de réseau et de calcul OCI à l'aide de l'interface de ligne de commande CD3.
-
Exportez les ressources de réseau et de calcul OCI à l'aide de l'interface de ligne de commande CD3.
Préalables
-
Politique Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) permettant à l'utilisateur ou au principal d'instance de gérer les services qui doivent être créés ou exportés à l'aide de la boîte à outils.
-
L'utilisateur qui déploie la pile doit avoir accès au lancement de la pile du gestionnaire de ressources OCI, de l'instance de calcul OCI et des ressources de réseau OCI.
Tâche 1 : Configurer le conteneur de la boîte à outils
-
Cliquez sur Déployer vers Oracle Cloud pour lancer la pile du gestionnaire de ressources OCI qui crée CD3 workVM.
-
Acceptez les conditions générales. Entrez le réseau, le compartiment, le nom de la machine virtuelle, la forme et d'autres détails pour workVM.
Note : Pour maintenir un environnement sécurisé, indiquez un intervalle CIDR source spécifique pour accéder à la machine virtuelle. N'utilisez pas
0.0.0.0/0
. -
Vérifiez la section Exécuter l'application et cliquez sur Créer.
-
Une fois la tâche Appliquer réussie, cliquez sur la tâche et faites défiler l'affichage vers le bas jusqu'à la fin des journaux.
Recherchez les détails de la machine virtuelle créée et les commandes à exécuter pour vous connecter au conteneur de boîte à outils. L'illustration suivante présente l'exemple de sortie.
Après vous être connecté au conteneur, suivez la tâche 2 et connectez-vous à la location OCI pour exécuter les API OCI.
Tâche 2 : Connecter le conteneur à la location OCI
-
Dans le conteneur, accédez à
cd /cd3user/oci_tools/cd3_automation_toolkit/user-scripts/
et ouvrez le fichiertenancyconfig.properties
. -
Ajoutez les valeurs de configuration requises dans les sections Paramètres requis et Paramètres des détails d'authentification.
Note : Dans ce tutoriel, nous utiliserons l'authentification par clé d'API. Conservez la valeur par défaut de
auth_mechanism
. -
Allez à la console OCI, sous Paramètres de l'utilisateur, chargez la clé publique dans APIkeys. Placez la clé privée à l'intérieur du conteneur. Copiez les valeurs de configuration requises et collez-les sous les paramètres correspondants dans le fichier
tenancyconfig.properties
. -
Conservez la valeur par défaut du paramètre
outdir_structure_file
. Les fichiersauto.tfvars
générés seront regroupés pour chaque service sous son dossier propre. -
Pour l'outil IaC, vous pouvez sélectionner terraform ou tofu. La valeur par défaut est terraform. Pour utiliser OpenTofu, spécifiez tofu.
Note : Laissez la section Paramètres avancés pour DevOps telle quelle car la configuration de Jenkins ne fait pas partie de la portée de ce tutoriel. Pour exécuter la boîte à outils à l'aide de Jenkins, voir Configurer CD3 avec Jenkins pour créer et exporter des ressources Oracle Cloud Infrastructure.
-
Enregistrez le fichier et exécutez
createTenancyConfig.py
pour initialiser l'environnement et commencer à utiliser CD3.python createTenancyConfig.py tenancyconfig.properties
-
Vérifiez la sortie.
Ensuite, pour créer des ressources dans OCI, suivez la tâche 3 et pour exporter des ressources, suivez la tâche 4.
Tâche 3 : Créer des ressources
Tâche 3.1 : Préparer le fichier Excel et les variables
-
Téléchargez le modèle Excel prérempli ici : cd3quickstart.xlsx. Modifiez les valeurs de région et de compartiment dans la feuille en fonction de votre environnement et revenez au conteneur.
-
Ajoutez le fichier Excel dans le conteneur à l'adresse
/cd3user/tenancies/cd3_demo_cli/
à l'aide de la commande scp ci-dessous.Note : Le dossier locations du conteneur CD3 est mappé au dossier
/cd3user/mount_path
dans la machine virtuelle de calcul. Connectez-vous aveccd3user
pour éviter les problèmes d'autorisation.scp -i ~/.ssh/id_rsa /Users/xyz/cd3quickstart.xlsx cd3user@<workvm_ip>:/cd3user/mount_path/cd3_demo_cli/cd3quickstart.xlsx
-
Ouvrez
/cd3user/tenancies/cd3_demo_cli/terraform_files/<region>/compute/variables_<region>.tf
à partir du conteneur. Sous la variableinstance_ssh_keys
, ajoutez le nom de la variable pour les clés SSH spécifiées dans la feuille Excelssh_public_key
avec la valeur correspondante (contenu de la clé). -
Sous la variable
instance_source_ocids
, incluez le nom de variable spécifié dans la feuille Excel pour l'image sourcemyimageocid
et affectez son OCID comme valeur correspondante.
Tâche 3.2 : Exécuter le script setUpOCI.py
pour générer les fichiers Terraform de ressource
-
Ouvrez le fichier
/cd3user/tenancies/cd3_demo_cli/cd3_demo_cli_setUpOCI.properties
et ajoutez le chemin d'accès au fichier Excel CD3 sous la variablecd3file
. Réglez la variable workflow_type àcreate_resources
et enregistrez le fichier. -
Accédez au répertoire
cd /cd3user/oci_tools/cd3_automation_toolkit/
et exécutez le scriptsetUpOCI.py
.python setUpOCI.py /cd3user/tenancies/cd3_demo_cli/cd3_demo_cli_setUpOCI.properties
Note : Si vous exécutez le script pour la première fois, sélectionnez y pour l'invite Exécuter le script pour extraire les OCID du compartiment dans le fichier de variables.
-
Sélectionnez les options Réseau et Calcul dans le menu de sortie, puis sélectionnez les sous-options : Créer un réseau pour créer un VCN et des sous-réseaux, Ajouter/Modifier/Supprimer des instances/Politique de sauvegarde de démarrage pour provisionner des instances.
-
Accédez au répertoire
/cd3user/tenancies/cd3_demo_cli/terraform_files/<region>/network/
. Exécutez des commandes Terraform pour provisionner les ressources de réseau.terraform init terraform plan -out tfplan terraform apply tfplan
-
Créer un réseau crée quelques règles dans le VCN qui ne sont pas encore présentes dans la feuille Excel CD3 (car ces détails sont initialement extraits de l'onglet des sous-réseaux). Pour les synchroniser dans le fichier Excel, exécutez de nouveau le script
setUpOCI
en utilisant la même feuille Excel que ci-dessus. Assurez-vous que le flux de travail est réglé à Créer des ressources dans le fichiercd3_demo_cli_setUpOCI.properties
. Sélectionnez Réseau sous les options principales, puis les sous-options ci-dessous.Security Rules ---> Export Security Rules (From OCI into SecRulesinOCI sheet), Add/Modify/Delete Security Rules (Reads SecRulesinOCI sheet) Route Rules ---> Export Route Rules (From OCI into RouteRulesinOCI sheet), Add/Modify/Delete Route Rules (Reads RouteRulesinOCI sheet) DRG Route Rules ---> Export DRG Route Rules (From OCI into DRGRouteRulesinOCI sheet), Add/Modify/Delete DRG Route Rules (Reads DRGRouteRulesinOCI sheet)
-
Une fois les feuilles
DRGRouteRulesinOCI
,RouteRulesinOCI
etSecRulesinOCI
du modèle Excel sont alimentées avec les données correspondantes et les fichierscd3_demo_cli_seclists.auto.tfvars
,cd3_demo_cli_routetables.auto.tfvars
etcd3_demo_cli_drg-routetables.auto.tfvars
sont générés sous le dossier/cd3user/tenancies/cd3_demo_cli/terraform_files/<region_dir>/<service_dir>
. -
Vérifiez
terraform plan
etterraform apply
. L'exécution de l'application terraform termine l'exportation des règles de sécurité, des règles de routage et des règles de routage DRG à partir d'OCI. Maintenant, l'état terraform doit être synchronisé avec OCI. -
Pour provisionner des ressources de calcul, accédez au répertoire
/cd3user/tenancies/cd3_demo_cli/terraform_files/<region>/compute/
et exécutez les commandes Terraform.terraform init terraform plan -out tfplan terraform apply tfplan
Vérifiez les ressources provisionnées dans la console OCI.
Tâche 4 : Exporter des ressources
Tâche 4.1 : Ajouter un modèle Excel au conteneur
-
Téléchargez CD3-Blank-template et ajoutez-le au conteneur à l'adresse
/cd3user/tenancies/cd3_demo_cli/
.Note : Le dossier locations du conteneur cd3 est mappé au dossier
/cd3user/mount_path
dans la machine virtuelle de calcul. Connectez-vous aveccd3user
pour éviter les problèmes d'autorisation. -
Naviguez jusqu'au dossier
/cd3user/tenancies/cd3_demo_cli/
et ouvrez le fichiercd3_demo_cli_setUpOCI.properties
. -
Ajoutez le chemin d'accès au fichier Excel CD3 sous la variable
cd3file
. -
Réglez le paramètre workflow_type à
export_resources
et enregistrez le fichier.
Tâche 4.2 : Exécuter le script setUpOCI.py
-
Accédez au répertoire
cd /cd3user/oci_tools/cd3_automation_toolkit/
et exécutez le scriptsetUpOCI.py
.python setUpOCI.py /cd3user/tenancies/cd3_demo_cli/cd3_demo_cli_setUpOCI.properties
Note : Si vous exécutez le script pour la première fois, sélectionnez y pour l'invite Exécuter le script pour extraire les OCID du compartiment dans le fichier de variables.
-
Indiquez des valeurs
region
séparées par des virgules si vous devez exporter des ressources de plusieurs régions. Si aucune valeur de région n'est fournie, la boîte à outils exportera les ressources de toutes les régions auxquelles vous êtes abonné. -
Sélectionnez les options de ressource à exporter (Réseau et Calcul). Vous pouvez choisir d'exporter les ressources uniquement à partir de compartiments spécifiques ou de tous les compartiments. Si le nom du compartiment n'est pas unique, il doit être spécifié dans le format suivant en fonction de la hiérarchie.
Parent Compartment::Child Compartment1::Child Compartment2
-
Pour exporter uniquement des ressources spécifiques, entrez les valeurs de filtre requises lorsque vous y êtes invité.
Note : Pour plus d'informations sur l'exportation des ressources de réseau OCI et des ressources de calcul OCI, voir Exporter les ressources de réseau OCI et Exporter les ressources de calcul OCI.
-
Une fois l'opération terminée, les données de ressource exportées sont alimentées dans le fichier Excel d'entrée. La feuille Excel mise à jour est présente sous le dossier
/cd3user/tenancies/cd3_demo_cli
dans le conteneur et doit être copiée manuellement dans le système local à l'aide de la commande scp.scp -i ~/.ssh/id_rsa cd3user@<workvm_ip>:/cd3user/mount_path/cd3_demo_cli/CD3-Blank-template.xlsx /Users/xyz/CD3-export.xlsx
-
Les fichiers
.tfvars
et.sh
propres au service avec des commandes d'importation terraform sont générés dans les dossiers de service respectifs sous le dossier de région :-
/cd3user/tenancies/cd3_demo_cli/terraform_files/<region_dir>/network/
-
/cd3user/tenancies/cd3_demo_cli/terraform_files/<region_dir>/compute/
Pour le service de calcul OCI, les clés publiques SSH associées sont placées dans
variables_<region>.tf
sous la variableinstance_ssh_keys
et les OCID sources sont placés sous la variableinstance_source_ocid
. -
Tâche 4.3 : Exécuter les fichiers .sh
générés
-
Dans les dossiers des services de réseau et de calcul, exécutez chacun des fichiers
.sh
générés contenant les commandes d'importation Terraform.Note : Pour le service de réseau OCI, avant d'exécuter les autres scripts
.sh
, assurez-vous d'exécuter le script.sh
pour major_objects :sh import_commands_network_major-objects.sh
-
Une fois les scripts
.sh
terminés, le fichier d'état Terraform est généré et le plan terraform est mis à jour au plus tard.
Ce code Terraform généré peut être utilisé avec le gestionnaire de ressources OCI ou utilisé par les processus d'intégration et de développement en continu de l'organisation pour une gestion ultérieure.
Pour ajouter de nouvelles ressources ou modifier des ressources existantes, exportez-les d'abord vers CD3, apportez les modifications requises dans le modèle Excel exporté, puis, dans le fichier /cd3user/tenancies/cd3_demo_cli/cd3_demo_cli_setUpOCI.properties
, remplacez workflow_type par create_resources
et exécutez la boîte à outils.
Liens connexes
-
Boîte à outils d'automatisation CD3 : Créer et gérer le code Terraform
-
Configurer CD3 avec Jenkins pour créer et exporter des ressources Oracle Cloud Infrastructure
Confirmation
- Auteur - Lasya Vadavalli (ingénieur en nuage principal)
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.
Configure CD3 Toolkit with CLI to Create and Export Oracle Cloud Infrastructure Resources
G10823-02
September 2024