Déplacement de ressources d'un espace de travail Schematics vers un projet

Vous pouvez gérer le cycle de vie d'une architecture d'entreprise en déplaçant des ressources d'un espace de travailIBM Cloud® Schematics vers un projet IBM Cloud®. Bien que vous puissiez utiliser un espace de travail Schematics pour utiliser Terraform et les architectures déployables, vous pouvez utiliser un projet pour gérer le cycle de vie complet à l'échelle. Une fois cette tâche terminée, vous disposez d'une vignette d'architecture déployable dans votre catalogue privé et vous pouvez gérer le cycle de vie de votre architecture déployable à partir d'un projet.

Au cours de ce processus, vous pouvez utiliser les commandes CLI ibmcloud catalog utility create-product-from-workspace et ibmcloud project config-create pour créer un catalogue et un projet liés entre eux, puis déplacer les ressources de l'espace de travail Schematics dans le projet.

Surveillez et apprenez le processus de déplacement des ressources déployées vers un projet.

Regarder et apprendre

Transcription vidéo

Je suis Gili Mendel, un STSM avec l'équipe de développement IBM Cloud. Je vais vous montrer comment déplacer un espace de travail Schematics dans l'architecture déployable IBM Cloud ou un projet.

Un espace de travail Schematics permet d'exécuter une automatisation Terraform sur IBM Cloud. L'espace de travail contient un lien vers un référentiel Git à partir duquel il extrait le modèle Terraform. Il contient également la variable de modèle et l'état des ressources lors de sa création.

C'est un excellent moyen d'exécuter l'automatisation IaaS Terraform sur le cloud sans conserver de compartiment IBM Cloud® Object Storage hautement disponible pour l'état avec les intégrations intimes aux fournisseurs de ressources de cloud.

Toutefois, cette approche n'est pas à l'échelle si vous pilotez plusieurs automatisations. La gestion des ressources et le cumul d'une nouvelle version du modèle peuvent être une tâche ardue.

Bien qu'une entreprise tire parti de l'automatisation Terraform, il s'agit uniquement d'architectures déployables. Vous publiez une architecture de référence, avec une désignation d'encombrement de conformité, des estimations de coût et un modèle Terraform qui automatise le déploiement de l'architecture.

Le référentiel Git est utilisé pour itérer et générer l'architecture et ses automatisations. Il peut ou non être visible par les utilisateurs qui déploient l'architecture. L'architecture elle-même possède un cycle de vie qui inclut des mises à niveau de version.

Etape 1: Utilisation de l'interface de ligne de commande de gestion des catalogues pour créer une architecture déployable à partir de l'espace de travail existant et du cycle de vie nécessaire pour publier les nouvelles versions.

Etape 2: Utilisez l'interface de ligne de commande du projet pour modifier l'espace de travail afin qu'il soit géré en tant qu'architecture déployable par un projet. En tant que telles, ces ressources peuvent être traitées comme une configuration de version d'architecture déployable unique et peuvent être gérées à partir d'un compte admin dans de nombreux environnements. La migration de version, le coût et l'encombrement de conformité sont plus simples et impliquent tous l'architecture déployée.

Avant de commencer

  • Assurez-vous que l'espace de travailIBM Cloud® Schematics est créé et que les ressources sont mises à disposition dans votre compte. Le projet et l'espace de travail doivent se trouver dans le même compte.
  • Définissez une variable d'environnement GIT_TOKEN pour vous authentifier auprès de votre dépôt de sources Git. Par exemple, exécutez export GIT_TOKEN="enter your GIT TOKEN". Le jeton a besoin d’une autorisation pour effectuer ces tâches liées à Git lorsque vous déplacez des ressources déployées vers votre projet.
  • Mettre en place une méthode d'authentification pour connecter le projet au catalogue. Vous pouvez utiliser l'une des méthodes suivantes :
    • Définissez la variable d'environnement IC_API_KEY pour accéder à votre compte IBM Cloud. Par exemple, exécutez IC_API_KEY="Your API key".
    • Utilisez vos détails trusted-profile-id pour accéder à votre compte IBM Cloud. Pour plus d'informations, voir Recherche de l'ID de profil sécurisé. Par exemple, un ID de profil sécurisé peut ressembler à Profile-1bd5eala-000-4a6666-00000.
  • Assurez-vous que les plug-in d'interface de ligne de commande Project et Gestion des catalogues sont à jour. Exécutez la commande ibmcloud plugin list pour afficher la version actuelle des plug-in d'interface de ligne de commande.
  • Créez un projet pour le déploiement en production et enregistrez le nom et l'ID du projet dans lequel vous souhaitez déplacer les ressources.
  • Assurez-vous que le service Projects est autorisé dans votre compte à communiquer avec d'autres services IBM Cloud. Pour plus d'informations, voir Octroi d'accès entre le service Projects et d'autres services IBM Cloud.

Création d'une architecture déployable à partir d'un espace de travail Schematics

Ignorez cette section si vous disposez déjà d'une architecture déployable dans votre espace de travail Schematics.

Si vous avez déployé des logiciels à l'aide d'un espace de travail Schematics ou via un catalogue privé, vous pouvez déplacer les ressources déployées vers un projet à l'aide de la commande ibmcloud catalog utility create-product-from-workspace.

La commande effectue les tâches Gitsuivantes:

  • Clone le référentiel d'architecture déployable.
  • Envoie le fichier manifeste ibm_catalog.json à une nouvelle branche.
  • Crée un diagramme d'architecture de marque de réservation (architecture-diagram-placeholder.drawio.svg).
  • Crée une édition Git dans le référentiel.
  • Fournit l'actif de la version URL.

La commande exécute également les tâches suivantes liées à IBM Cloud:

  • Crée un catalogue privé dans IBM Cloud.
  • Crée un projet dans lequel vous effectuez des opérations de développement et de test.
  • Relie le projet et le catalogue à l'aide d'un ID de profil sécurisé ou d'une clé d'API.
  • Crée la vignette du produit dans le catalogue privé.
  • Permet d'afficher la version du produit dans le nouveau catalogue privé.
  • Marque la version comme étant prête à être partagée.
  • Effectue l'intégration de l'espace de travail et de l'architecture déployable en déplaçant l'espace de travail dans le catalogue.
  • Affiche l'ID de projet, l'ID de catalogue, l'ID d'offre et le localisateur de version.

Procédez comme suit pour créer une architecture déployable et déplacer toutes les ressources déployées dans une configuration de projet:

  1. Exécutez la commande ibmcloud catalog utility create-product-from-workspace.

    ibmcloud catalog utility create-product-from-workspace [--workspace-id ID] [--api-key KEY] [--trusted-profile-id ID] [--catalog-label LABEL] [--offering-label LABEL] [--project-name NAME] [--project-resource-group GROUP] [--target-version VERSION] [--variation-label LABEL]
    

    --api-key et --trusted-profile-id s'excluent mutuellement. Vous n'avez besoin que de l'un ou de l'autre. Le paramètre --project-name crée le projet dans lequel vous effectuez le développement et les tests. Vous souhaiterez peut-être le nommer de la même manière que votre ID d'espace de travail pour plus de simplicité.

    Consultez l'exemple suivant des options de la commande utility create-product-from-workspace.

    ibmcloud catalog utility create-product-from-workspace --workspace-id us-south.workspace.move.xxxx --api-key $IC_API_KEY --catalog-label myCatalog --offering-label myOffering --project-name myProject --project-resource-group Default --target-version 1.0.0 --variation-label test_standard
    

    Lorsque l'exécution de la commande est terminée, l'invite de commande renvoie OK.

  2. Vérifiez les résultats dans Git en affichant la validation, le référentiel et la nouvelle édition. Vous pouvez voir le fichier .tgz avec les versions.

  3. Vérifiez les résultats dans la console IBM Cloud:

    1. Accédez à Gérer > Catalogues > Catalogues privés.
    2. Sélectionnez le nouveau catalogue privé.
    3. Sélectionnez le nouveau produit dans votre catalogue privé, puis sélectionnez l'onglet Versions. Vérifiez que vous disposez de la version 1.0.0 (ou d'une version similaire) de votre architecture déployable. Si vous accédez à votre catalogue privé, vous voyez la même architecture déployable dans une vignette.
    4. Cliquez sur l'icône Menu de navigation Icône Menu de navigation > Projets et examinez le nouveau projet.
    5. Sélectionnez l'onglet Configurations pour afficher l'architecture déployable. Vérifiez qu'il est à l'état draft.

Création de la configuration de projet

La commande ibmcloud project config-create crée une configuration de projet qui permet à l'espace de travail Schematics de s'exécuter sous un projet dans lequel vous pouvez ensuite créer une autre version à partir du projet et modifier l'architecture déployable si nécessaire.

Avant de commencer cette section, vérifiez que vous disposez d'une architecture déployable dans un catalogue privé et d'un espace de travail Schematics en cours d'exécution et que vous connaissez son CRN. Vous pouvez localiser le CRN de l'espace de travail à partir de la liste des ressources dans la console IBM Cloud ou à l'aide de l'interface de ligne de commande.

  • Console IBM Cloud: dans la console IBM Cloud, cliquez sur l'icône du menu de navigation icône du menu de navigation > Liste de ressources > Outils de développement > recherchez l'espace de travail et copiez le CRN.
  • Interface de ligne de commande IBM Cloud: exécutez la commande ibmcloud schematics workspace get pour extraire les détails du CRN de l'espace de travail. Par exemple, exécutez ibmcloud schematics workspace get --id workspace-id --output destination folder --json output.json pour extraire les détails du nom de ressource de cloud de l'espace de travail Schematics.

Procédez comme suit pour ajouter une configuration de projet et déplacer les ressources de l'espace de travail Schematics vers le projet:

  1. Exécutez la commande ibmcloud project config-create.

    ibmcloud project config-create --project-id PROJECT-ID [--schematics-workspace-crn SCHEMATICS-WORKSPACE-CRN] [--definition-name DEFINITION-NAME] [--definition-locator-id DEFINITION-LOCATOR-ID]
    

    La valeur pour --project-id est l'ID du projet que vous avez créé pour votre déploiement de production dans l'étape avant de commencer. La valeur de --definition-locator-id est la même que celle du localisateur de version de la section précédente.

    Consultez l'exemple suivant d'options de commande project config-create.

    ibmcloud project config-create --project-id myProdProject --schematics-workspace-crn MyWorkspaceCRN --definition-name production-deployment --definition-locator-id myVersionLocator
    

    Lorsque l'exécution de la commande est terminée, l'invite de commande renvoie le nom, l'état et le type.

  2. Vérifiez que vos modèles Terraform sont déployés dans votre projet:

    1. Dans la console IBM Cloud, cliquez sur l'icône Menu de navigation Icône Menu de navigation > Projets.
    2. Sélectionnez votre projet que vous avez créé pour la première fois pour la production de déploiement et accédez à l'onglet Configurations.
    3. Cliquez sur l'icône Actions icône Actions > Afficher le dernier déploiement.
    4. Dans la section Déploiement réussi, cliquez sur Modifications déployées avec succès > Journaux pour afficher toutes les ressources déployées dans le projet.

Le déploiement de l'espace de travail Schematics est désormais inclus dans les journaux qui se trouvent dans le nouveau projet.

Si vous souhaitez vérifier les résultats à l'aide de l'interface de ligne de commande, exécutez les commandes ibmcloud project get ou ibmcloud project list pour vérifier que votre espace de travail a été déplacé vers votre projet.

Etapes suivantes

Pour terminer le reste du processus de l'architecture déployable, procédez comme suit:

  1. Configurez les détails de déploiement pour l'architecture déployable.
  2. Définissez l'accès IAM.
  3. Ajoutez un diagramme d'architecture, des prérequis et des mises en évidence.
  4. Ajoutez des informations de conformité (contrôles).
  5. Revalidez pour recevoir une estimation de coût.

Pour plus d'informations sur la procédure à suivre, voir Intégration d'une architecture déployable personnalisée à votre catalogue privé.

Pour plus d'informations, voir Adoption de l'architecture d'entreprise.