Note :

Configurer CD3 avec Jenkins 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 les modèles Microsoft 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.

flux des travaux

Objectifs

Préalables

Tâche 1 : Configurer le conteneur de la boîte à outils

  1. Cliquez sur Déployer vers Oracle Cloud pour lancer la pile du gestionnaire de ressources OCI qui crée CD3 WorkVM.

    Deploy_To_OCI

  2. Acceptez les conditions générales. Entrez le réseau, le compartiment, le nom de la machine virtuelle, la forme, etc. pour workVM à créer.

    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.

  3. Cochez la section Exécuter l'application en bas et cliquez sur Créer.

  4. Une fois la tâche d'application réussie, cliquez sur la tâche 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îte à outils. Exemple de sortie affiché dans l'image suivante.

    rmstackoutput

    Après vous être connecté au conteneur, connectez-le à la location OCI pour exécuter les API OCI.

Tâche 2 : Connecter le conteneur à la location OCI

  1. Accédez à cd /cd3user/oci_tools/cd3_automation_toolkit/user-scripts/ et ouvrez le fichier tenancyconfig.properties.

  2. 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.

  3. Dans la console OCI, sous Paramètres d'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.

  4. Laissez le paramètre outdir_structure_file à sa valeur par défaut pour regrouper les fichiers auto.tfvars générés pour chaque service.

  5. Pour l'outil IaC, vous pouvez sélectionner terraform ou tofu. La valeur par défaut est terraform. Pour utiliser OpenTofu, spécifiez tofu.

  6. Sous Paramètres avancés pour DevOps, sélectionnez yes pour le paramètre use_oci_devops_git.

    Cela créera un référentiel Git OCI DevOps pour les fichiers terraform générés, un seau de stockage d'objets OCI pour le fichier d'état et une rubrique d'avis OCI pour aviser des modifications dans le référentiel DevOps.

  7. Enregistrez le fichier et exécutez createTenancyConfig.py pour initialiser l'environnement et commencer à utiliser CD3.

    python createTenancyConfig.py tenancyconfig.properties
    
  8. Vérifiez la sortie.

  9. Ensuite, pour créer des ressources dans OCI, suivez la tâche 3 ou pour exporter des ressources, suivez la tâche 4.

Tâche 3 : Créer des ressources dans OCI

Tâche 3.1 : Préparer le fichier Excel et les variables

  1. Téléchargez le modèle Excel prérempli ici : cd3quickstart.xlsx pour ce tutoriel. Modifiez les valeurs de région et de compartiment en fonction de votre environnement et passez au conteneur.

  2. Ouvrez /cd3user/tenancies/<prefix>/terraform_files/<region>/compute/variables_<region>.tf à partir du conteneur. Sous la variable instance_ssh_keys, ajoutez le nom de la variable pour les clés SSH spécifiées dans la feuille Excel : ssh_public_key avec la valeur correspondante (contenu de la clé).

  3. Sous la variable instance_source_ocids, incluez le nom de variable spécifié dans la feuille Excel pour l'image source myimageocid et affectez son OCID comme valeur correspondante. Les captures d'écran suivantes sont à titre de référence.

    ssh_key

    sourceocides

  4. 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 : Se connecter à Jenkins et exécuter le pipeline setupoci

  1. 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.

  2. Connectez-vous à Jenkins. Dans le tableau de bord, des dossiers portant les noms <prefix> sont présents. Cliquez sur le nom <prefix> que vous utilisez. Contient le pipeline setupoci et le dossier terraform_files correspondants. Cliquez sur setupoci pipeline et sur Créer avec des paramètres.

    Note : Si vous accédez à l'URL Jenkins pour la première fois, configurez les données d'identification de connexion.

    excel_template

  3. Sous la section Modèle Excel, chargez le fichier Excel extrait à la tâche 3.1.

    excel_template

  4. Sous Flux de travail, sélectionnez Créer de nouvelles ressources dans OCI (flux de travail de champ vert).

  5. Sous MainOptions, sélectionnez Identité, Réseau et Calcul.

  6. Sous SubOptions, sélectionnez Ajouter/modifier/supprimer des groupes, Ajouter/modifier/supprimer des politiques, Créer un réseau, Ajouter/modifier/supprimer des instances/politique de sauvegarde de démarrage.

  7. Cliquez sur Créer. Les étapes du pipeline setupoci sont exécutées dans l'ordre.

Tâche 3.3 : Fournir une approbation pour chaque plan de service

  1. Cliquez sur l'étape d'identité pour les journaux et cliquez sur le lien vers la création du pipeline d'application d'identité. Sous l'étape Obtenir l'approbation, cliquez sur les journaux et sélectionnez Continuer. Consultez les journaux sous l'étape Appliquer pour vérifier les ressources d'identité créées.

    terraformpipeline

  2. De même, à partir de l'étape réseau du pipeline setupoci, cliquez sur les journaux, puis sur le lien pour la création du pipeline d'application de réseau. Sous l'étape Obtenir l'approbation, cliquez sur les journaux et sélectionnez Continuer. Consultez les journaux sous l'étape Appliquer pour vérifier les ressources de réseau créées.

  3. Cliquez sur les journaux de l'étape de calcul. Cliquez sur le lien pour calculer la création du pipeline d'application.

    Note : Vous remarquerez que le pipeline terraform de calcul 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 le pipeline terraform de calcul manuellement une fois le pipeline d'application du réseau réussi. L'étape suivante montre comment l'exécuter.

  4. Cliquez sur Créer maintenant pour le pipeline d'application de calcul. Après le début de l'exécution des étapes de pipeline, sous Obtenir l'approbation, cliquez sur les journaux et sélectionnez Continuer. Consultez les journaux sous l'étape Appliquer pour vérifier les ressources de calcul créées.

  5. L'exécution de l'option 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 Sous-réseaux). Pour les synchroniser avec le fichier Excel, créez de nouveau setupoci Pipeline à l'aide de la même feuille Excel que ci-dessus, définissez le flux de travail comme 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)
    
  6. Spécifiez le nom du compartiment. Cliquez sur Créer et les étapes setupoci Pipeline commencent à s'exécuter.

  7. La feuille Excel sera alimentée avec les données Règles de sécurité, Règles de routage, Règles de routage DRG. Les fichiers Terraform tfvars sont générés pour ces services.

  8. Le fichier Excel mis à jour contenant les données exportées à partir d'OCI est présent sous Créer des artefacts de la compilation setupoci particulière. Le fichier Excel est également présent dans le conteneur sous /cd3user/tenancies/<prefix>.

  9. Cliquez sur les journaux de l'étape Réseau et cliquez sur le lien vers la création du pipeline d'application du réseau. Le plan terraform doit afficher Aucune modification, ce qui signifie que ces services dans OCI et CD3 sont synchronisés.

  10. Le processus de création de ressource est terminé dans OCI. Vérifiez les ressources qui sont créées dans 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 flux de travail d'exportation, la boîte à outils remplace toutes les données existantes dans la feuille de service particulière. Il est donc recommandé d'utiliser CD3-Blank-template.xlsx qui n'a pas de données par défaut.

Téléchargez le modèle vide CD3 à partir d'ici : CD3-Blank-template.xlsx.

Tâche 4.2 : Se connecter à Jenkins

  1. Démarrez Jenkins et accédez-y à l'aide des commandes suivantes à partir du conteneur.

    1. Pour démarrer Jenkins, utilisez la commande /usr/share/jenkins/jenkins.sh &.

    2. Pour accéder à Jenkins, utilisez cette URL https://<IP Address of the machine hosting docker container>:8443.

  2. Connectez-vous à Jenkins.

    Note : Si vous accédez à l'URL Jenkins pour la première fois, configurez les données d'identification de connexion.

    excel_template

Tâche 4.3 : Exécuter le pipeline setupoci

  1. Dans le tableau de bord Jenkins, des dossiers portant les noms <prefix> sont présents. Cliquez sur le nom <prefix> que vous utilisez. Contient le pipeline setupoci et le dossier terraform_files correspondants. Cliquez sur setupoci pipeline et sur Créer avec des paramètres.

  2. Sous la section Modèle Excel, chargez le fichier Excel extrait à la tâche 4.1.

  3. Sous Flux de travail, sélectionnez Exporter des ressources existantes à partir d'OCI (Flux de travail hors champ vert).

  4. Sous MainOptions, sélectionnez Exporter l'identité, Exporter le réseau et Exporter le service de calcul.

  5. Sous SubOptions, sélectionnez Exporter les compartiments/groupes/politiques pour l'identité et Exporter tous les composants de réseau pour le réseau et Exporter les instances (exclut les instances lancées par OKE) pour le calcul.

    Note : Ajoutez des détails sous AdditionalFilters si nécessaire pour filtrer les ressources.

  6. Cliquez sur Créer. Les étapes du pipeline setupoci sont exécutées dans l'ordre pour chacun des services.

    excel_template

  7. Consultez les journaux à l'étape Exécuter les commandes d'importation. S'il s'affiche comme réussi, les pipelines terraform respectifs déclenchés doivent avoir l'étape Planifier affichée Aucune modification.

    Note : Si vous trouvez des modifications dans le plan, vérifiez-les et appliquez-les au besoin.

  8. Le fichier Excel mis à jour contenant les données exportées à partir d'OCI est présent sous Créer des artefacts de la compilation setupoci particulière. Le fichier Excel est également présent dans le conteneur sous /cd3user/tenancies/<prefix>.

Confirmation

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.