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.
Configuration de CD3 avec Jenkins pour créer et exporter des ressources Oracle Cloud Infrastructure
Introduction
La boîte à outils d'automatisation des livrables de conception de déploiement cloud (CD3) vous permet de créer, d'exporter et de gérer facilement des ressources Oracle Cloud Infrastructure (OCI) en convertissant facilement des modèles Microsoft Excel en modules Terraform entièrement fonctionnels.
La boîte à outils prend également en charge une gestion transparente des ressources à l'aide du service OCI DevOps Git et des pipelines Jenkins.
Objectifs
- Lancez le conteneur CD3 en un seul clic, puis créez, exportez des ressources d'identité, de réseau et de calcul OCI à l'aide des pipelines Jenkins.
Prérequis
-
Stratégie Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) permettant à l'utilisateur ou au principal d'instance de gérer les services devant être créés ou exportés à l'aide du kit d'outils.
-
L'utilisateur qui déploie la pile doit avoir accès au lancement de la pile OCI Resource Manager, de l'instance Compute et des ressources réseau.
Tâche 1 : configurer le conteneur Toolkit
-
Cliquez sur Déployer vers Oracle Cloud pour lancer la pile OCI Resource Manager qui crée le fichier CD3 WorkVM.
-
Acceptez les conditions. Entrez le réseau, le compartiment, le nom de machine virtuelle, la forme, etc., pour le fichier workVM à créer.
Remarque : pour maintenir un environnement sécurisé, fournissez une plage 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 en bas et cliquez sur Créer.
-
Une fois le travail d'application exécuté, cliquez dessus et faites défiler l'affichage 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îtes à outils. Exemple de résultat illustré dans l'image suivante.
Une fois connecté au conteneur, connectez-le à la location OCI pour exécuter les API OCI.
Tâche 2 : connexion du conteneur à la location OCI
-
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 de détails d'authentification.
Remarque : dans ce tutoriel, nous allons utiliser l'authentification par clé d'API. Conservez la valeur par défaut de
auth_mechanism
. -
Dans la console OCI, sous Paramètres utilisateur, téléchargez la clé publique vers APIkeys. Placez la clé privée dans le 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
afin de regrouper les fichiersauto.tfvars
générés pour chaque service. -
Pour l'outil IaC, vous pouvez sélectionner terraform ou tofu. La valeur par défaut est terraform. Pour utiliser OpenTofu, indiquez tofu.
-
Sous Paramètres avancés pour DevOps, sélectionnez
yes
pour le paramètreuse_oci_devops_git
.Cette opération crée un référentiel Git DevOps OCI pour les fichiers terraform générés, un bucket OCI Object Storage pour le fichier d'état et un sujet de notification OCI pour informer les modifications dans le référentiel DevOps.
-
Enregistrez le fichier et exécutez
createTenancyConfig.py
pour initialiser l'environnement et commencer à utiliser CD3.python createTenancyConfig.py tenancyconfig.properties
-
Vérifiez le résultat.
-
Ensuite, pour créer des ressources dans OCI, suivez Tâche 3 ou pour exporter des ressources, suivez Tâche 4.
Tâche 3 : création de ressources dans OCI
Tâche 3.1 : préparation du fichier Excel et des variables
-
Téléchargez le modèle Excel prérempli à partir de cet emplacement : cd3quickstart.xlsx pour ce tutoriel. Modifiez les valeurs de région et de compartiment en fonction de votre environnement, puis passez au conteneur.
-
Ouvrez
/cd3user/tenancies/<prefix>/terraform_files/<region>/compute/variables_<region>.tf
à partir du conteneur. Sous la variableinstance_ssh_keys
, ajoutez le nom de variable pour les clés SSH spécifiées dans la feuille Excel : ssh_public_key avec la valeur correspondante (contenu de la clé). -
Sous la variable
instance_source_ocids
, incluez le nom de variable indiqué dans la feuille Excel pour l'image sourcemyimageocid
et affectez son OCID en tant que valeur correspondante. Les captures d'écran suivantes sont à titre de référence. -
Exécutez les commandes suivantes dans l'ordre pour synchroniser les modifications locales ci-dessus avec le référentiel Git DevOps.
cd /cd3user/tenancies/<prefix>/terraform_files git status git add -A . git commit -m "msg" git push
Tâche 3.2 : connexion à Jenkins et exécution du pipeline setupoci
-
Démarrez Jenkins et accédez-y à l'aide des commandes suivantes à partir du conteneur.
-
Pour démarrer Jenkins, utilisez la commande
/usr/share/jenkins/jenkins.sh &
. -
Pour accéder à Jenkins, utilisez cette URL
https://<IP Address of the machine hosting docker container>:8443
.
-
-
Connectez-vous à Jenkins. Dans le tableau de bord, des dossiers avec des noms
<prefix>
sont présents. Cliquez sur le nom<prefix>
avec lequel vous travaillez. Il contient le pipeline setupoci et le dossierterraform_files
correspondants. Cliquez sur configurer le pipeline et sur Créer avec les paramètres.Remarque : si vous accédez à l'URL Jenkins pour la première fois, configurez les informations d'identification de connexion.
-
Sous la section Modèle Excel, chargez le fichier Excel extrait dans la tâche 3.1.
-
Sous Workflow, sélectionnez Créer des ressources dans OCI (workflow Greenfield).
-
Sous MainOptions, sélectionnez Identité, Réseau et Calcul.
-
Sous SubOptions, sélectionnez Ajouter/Modifier/Supprimer des groupes, Ajouter/Modifier/Supprimer des stratégies, Créer un réseau, Ajouter/Modifier/Supprimer des instances/Stratégie de sauvegarde d'initialisation.
-
Cliquez sur Créer. Les étapes du pipeline setupoci sont exécutées dans l'ordre.
Tâche 3.3 : approbation de chaque plan de service
-
Cliquez sur la phase d'identité des journaux, puis sur le lien vers le build de pipeline d'application des identités. Sous la phase Obtenir l'approbation, cliquez sur les journaux et sélectionnez Poursuivre. Consultez les journaux sous la phase Appliquer pour vérifier les ressources d'identité créées.
-
De même, à partir de la phase réseau dans le pipeline setupoci, cliquez sur les journaux, puis sur le lien du build de pipeline d'application réseau. Sous la phase Obtenir l'approbation, cliquez sur les journaux et sélectionnez Poursuivre. Consultez les journaux sous la phase Appliquer pour vérifier les ressources réseau créées.
-
Cliquez sur les journaux de l'étape de calcul. Cliquez sur le lien pour calculer le build de pipeline d'application.
Remarque : vous remarquerez que le pipeline de calcul terraform a échoué. En effet, les ressources de calcul dépendent du réseau pour être prêtes. Pour résoudre ce problème, déclenchez manuellement le pipeline terraform de calcul après la réussite du pipeline d'application réseau. L'étape suivante indique comment l'exécuter.
-
Cliquez sur Créer maintenant pour le pipeline d'application de calcul. Une fois les phases de pipeline en cours d'exécution, sous la phase Obtenir l'approbation, cliquez sur les journaux et sélectionnez Poursuivre. Consultez les journaux sous la phase Appliquer pour vérifier les ressources de calcul créées.
-
L'exécution de Créer un réseau crée peu de 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 Sous-réseaux). Pour les synchroniser avec le fichier Excel, créez à nouveau setupoci Pipeline à l'aide de la même feuille Excel que ci-dessus, définissez le workflow sur Créer des ressources dans OCI, 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)
-
Indiquez le nom du compartiment. Cliquez sur Créer et les étapes Pipeline setupoci commencent à s'exécuter.
-
La feuille Excel est renseignée avec les données Règles de sécurité, Règles de routage, Règles de routage DRG. Des fichiers
tfvars
Terraform sont générés pour ces services. -
Le fichier Excel mis à jour contenant les données exportées à partir d'OCI est présent sous Créer des artefacts du build setupoci particulier. Le fichier Excel est également présent dans le conteneur sous
/cd3user/tenancies/<prefix>
. -
Cliquez sur les journaux de phase Réseau et sur le lien vers le build de pipeline d'application réseau. Le plan terraform doit afficher Aucune modification inférant ces services dans OCI et CD3 est synchronisé.
-
Le processus de création de ressource est terminé dans OCI. Vérifiez les ressources créées sur la console OCI.
Tâche 4 : exporter des ressources à partir d'OCI
Tâche 4.1 : télécharger le fichier CD3-Blank-template.xlsx
Pour le workflow d'exportation, la boîte à outils écrase toutes les données existantes dans la fiche de service particulière. Il est donc recommandé d'utiliser CD3-Blank-template.xlsx
qui ne contient aucune donnée par défaut.
Téléchargez le modèle vide CD3 à partir de cet emplacement : CD3-Blank-template.xlsx.
Tâche 4.2 : connexion à Jenkins
-
Démarrez Jenkins et accédez-y à l'aide des commandes suivantes à partir du conteneur.
-
Pour démarrer Jenkins, utilisez la commande
/usr/share/jenkins/jenkins.sh &
. -
Pour accéder à Jenkins, utilisez cette URL
https://<IP Address of the machine hosting docker container>:8443
.
-
-
Connectez-vous à Jenkins.
Remarque : si vous accédez à l'URL Jenkins pour la première fois, configurez les informations d'identification de connexion.
Tâche 4.3 : exécution du pipeline setupoci
-
Dans le tableau de bord Jenkins, des dossiers avec des noms
<prefix>
sont présents. Cliquez sur le nom<prefix>
avec lequel vous travaillez. Il contient le pipeline setupoci et le dossierterraform_files
correspondants. Cliquez sur configurer le pipeline et sur Créer avec les paramètres. -
Sous la section Modèle Excel, chargez le fichier Excel extrait dans la tâche 4.1.
-
Sous Workflow, sélectionnez Exporter des ressources existantes à partir d'OCI (workflow hors champ).
-
Sous MainOptions, sélectionnez Exporter l'identité, Exporter le réseau et Exporter Compute.
-
Sous SubOptions, sélectionnez Exporter les compartiments/groupes/stratégies pour l'identité et Exporter tous les composants réseau pour le réseau et Exporter les instances (à l'exception des instances lancées par OKE) pour le calcul.
Remarque : ajoutez des détails sous AdditionalFilters si nécessaire pour filtrer les ressources.
-
Cliquez sur Créer. Les étapes du pipeline setupoci sont exécutées dans l'ordre pour chacun des services.
-
Consultez les journaux à l'étape Exécuter les commandes d'import. S'il s'affiche avec succès, l'étape Plan des pipelines terraform respectifs déclenchés doit être Aucune modification.
Remarque : si vous trouvez des modifications dans le plan, vérifiez-les et appliquez-les si nécessaire.
-
Le fichier Excel mis à jour contenant les données exportées à partir d'OCI est présent sous Créer des artefacts du build setupoci particulier. Le fichier Excel est également présent dans le conteneur sous
/cd3user/tenancies/<prefix>
.
Liens connexes
Accusés de réception
- Auteurs - Lasya Vadavalli (ingénieur cloud senior), Dipesh Kumar Rathod (architecte cloud principal, infrastructure)
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.
Configure CD3 with Jenkins to Create and Export Oracle Cloud Infrastructure Resources
F95144-04
October 2024