Créer une application App Hub à l'aide d'un seul projet


Ce tutoriel vous explique comment configurer une application App Hub dans dans un seul projet. Dans un projet de service agissant en tant qu'App Hub vous déployez un groupe d'instances géré (MIG) à équilibrage de charge. Ensuite, vous d'afficher les ressources d'infrastructure en tant que services et charges de travail dans les applications le projet hôte App Hub.

Ce tutoriel s'adresse aux personnes qui configurent et administrent App Hub. Vous devez avoir une certaine expérience avec Cloud Load Balancing :

Objectifs

Ce guide vous explique comment effectuer les tâches suivantes :

  1. Créez ou sélectionnez un projet Google Cloud. Ce projet est votre Projet hôte App Hub.
  2. Déployer un réseau VPC, un équilibreur de charge d'application externe régional et un MIG à l'aide de Terraform qui est le point de terminaison de l'équilibreur de charge. L'équilibreur de charge d'application externe régional inclut les ressources suivantes:

    • Vérification d'état HTTP
    • Règle de transfert
    • Mappage d'URL
    • Proxy cible
    • Un service de backend avec un groupe d'instances géré en tant que backend
    • Un certificat SSL (pour HTTPS)

    Seuls la règle de transfert, le mappage d'URL, le service de backend et le MIG deviennent disponibles en tant que discovery sur App Hub. Pour en savoir plus, consultez concepts et modèle de données.

  3. Attribuer les rôles et les autorisations appropriés au projet hôte

  4. Associez le projet hôte App Hub en tant que projet de service.

  5. Créez une application sur le projet hôte App Hub.

  6. Découvrir les ressources d'infrastructure en tant que services App Hub et charges de travail.

  7. Enregistrer des services et une charge de travail à partir du projet de service sur le et attribuer des attributs.

  8. Affichez les détails des services et charges de travail enregistrés sur App Hub.

Coûts

Pour obtenir une estimation du coût des ressources Google Cloud de la solution de VM gérée à équilibrage de charge, consultez l'estimation précalculée dans le Simulateur de coût Google Cloud

Utilisez l'estimation comme point de départ pour calculer le coût de votre déploiement. Vous pouvez modifier l'estimation afin qu'elle reflète les modifications de configuration que vous prévoyez d'apporter aux ressources utilisées dans la solution.

L'estimation précalculée est basée sur des hypothèses pour certains facteurs, y compris les suivants :

  • Emplacements Google Cloud où les ressources sont déployées.
  • La durée d'utilisation des ressources.

Pour en savoir plus sur les coûts d'App Hub, consultez la page Tarifs.

Avant de commencer

Si vous êtes le créateur du projet, vous disposez du rôle de base Propriétaire (roles/owner). Par défaut, ce rôle Identity and Access Management (IAM) inclut les autorisations nécessaires pour accéder à la plupart des ressources Google Cloud.

Si vous n'êtes pas le créateur du projet, les autorisations requises doivent être accordées sur le au compte principal approprié. Par exemple, un compte principal peut être un compte Google (pour les utilisateurs finaux) ou un compte de service (pour les applications et charges de travail).

Pour obtenir les autorisations nécessaires pour suivre ce tutoriel, demandez à votre administrateur de vous accorder les rôles IAM suivants sur votre projet :

Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.

Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.

Console

  1. Dans Google Cloud Console, accédez à la page de sélection du projet.

    Accéder au sélecteur de projet

  2. Sélectionnez ou créez un projet Google Cloud. comme projet hôte App Hub.

  3. Activez les API requises.

    Activer les API

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Assurez-vous que la version la plus récente de la Google Cloud CLI est installée. Exécuter la commande suivante à partir de Cloud Shell:

      gcloud components update

  3. créer ou sélectionner un projet ; HOST_PROJECT_ID, en tant que projet hôte pour App Hub.

    • Créez un projet Google Cloud :

      gcloud projects create HOST_PROJECT_ID
    • Sélectionnez le projet Google Cloud que vous avez créé :

      gcloud config set project HOST_PROJECT_ID
  4. Activez les API :

    gcloud services enable apphub.googleapis.com \
       cloudresourcemanager.googleapis.com \
       compute.googleapis.com \
       config.googleapis.com \
       serviceusage.googleapis.com
    

Préparer l'environnement

Pour vous aider à déployer cette solution avec un minimum d'efforts, une configuration Terraform est fournie dans GitHub. La configuration Terraform définit toutes les ressources Google Cloud requises pour la solution. Télécharger la configuration Terraform depuis GitHub, personnalisez éventuellement le code si nécessaire, puis déployez la solution à l'aide de la CLI Terraform Après avoir déployé la solution, vous pouvez continuer à la gérer à l'aide de Terraform.

Charges de travail et services App Hub avec un équilibreur de charge et un groupe d'instances géré
Figure 1. les charges de travail et services App Hub avec un équilibreur de charge et un groupe d'instances géré.

Voici le flux de traitement des requêtes de la topologie de la solution de VM gérée à équilibrage de charge est déployée.

  1. L'utilisateur envoie une requête à l'application, qui est déployée sur Compute Engine. Cloud Load Balancing reçoit cette requête.

  2. Cloud Load Balancing achemine le trafic vers Compute Engine d'groupe d'instances géré, à l'aide des informations de la règle de transfert, du mappage d'URL, et le service de backend.

Configurer le client Terraform

Vous pouvez exécuter Terraform dans Cloud Shell ou sur votre hôte local. Ce ce tutoriel explique comment exécuter Terraform dans Cloud Shell, Terraform préinstallé et configuré pour l'authentification auprès de Google Cloud.

Le code Terraform de cette solution est disponible dans un dépôt GitHub.

  1. Dans Cloud Shell, clonez le dépôt GitHub dans Cloud Shell.

    git clone https://github.com/terraform-google-modules/terraform-docs-samples
    
  2. Dans Cloud Shell, vérifiez si le répertoire de travail actuel est terraform-docs-samples/lb/regional_external_http_load_balancer. Il s'agit du répertoire qui contient les fichiers de configuration Terraform pour la solution. Si vous devez accéder à ce répertoire, exécutez la commande suivante :

    cd terraform-docs-samples/lb/regional_external_http_load_balancer 
    
  3. Initialisez Terraform à l'aide de la commande suivante :

    terraform init
    

    Attendez que le message suivant s'affiche :

    Terraform has been successfully initialized!
    

Valider et examiner la configuration Terraform

  1. Assurez-vous que le répertoire de travail actuel est terraform-docs-samples/lb/regional_external_http_load_balancer. Si ce n'est pas le cas, accédez à ce répertoire :

  2. Vérifiez que la configuration ne comporte aucune erreur :

    terraform validate
    

    Si la commande renvoie une erreur, apportez les corrections nécessaires dans la configuration, puis exécutez à nouveau la commande terraform validate. Répétez cette étape jusqu'à ce que la commande renvoie le message suivant :

    Success! The configuration is valid.
    
  3. Examinez les ressources définies dans la configuration :

    terraform plan
    

    Le résultat de la commande terraform plan est une liste des ressources provisionnées par Terraform lorsque vous appliquez la configuration.

    Si vous souhaitez apporter des modifications, modifiez la configuration, puis exécutez à nouveau les commandes terraform validate et terraform plan.

Provisionner les ressources

Lorsqu'aucune autre modification n'est nécessaire dans la configuration, déployez les ressources.

  1. Assurez-vous que le répertoire de travail actuel est terraform-docs-samples/lb/regional_external_http_load_balancer. Si ce n'est pas le cas, accédez à ce répertoire :

  2. Appliquez la configuration Terraform :

    terraform apply
    

    Terraform affiche la liste des ressources qui seront créées.

  3. Lorsque vous êtes invité à effectuer les actions, saisissez yes.

    Terraform affiche les messages indiquant la progression du déploiement.

    Si le déploiement ne peut pas être terminé, Terraform affiche les erreurs à l'origine de l'échec. Consultez les messages d'erreur et mettez à jour la configuration pour corriger les erreurs, puis exécutez à nouveau la commande terraform apply.

    Une fois toutes les ressources créées, Terraform affiche le message suivant :

    Apply complete!
    

Attendez que Terraform affiche le message "Apply completed!" (Application terminée).

Cloud Load Balancing répartit le trafic le mappage d'URL, le service de backend et un MIG Compute Engine. Le backend le mappage d'URL et les règles de transfert deviennent dans le projet hôte App Hub. La Le MIG Compute Engine devient une charge de travail découverte dans le Projet hôte App Hub.

Lorsque vous n'avez plus besoin de la solution, vous pouvez supprimer le déploiement pour éviter de continuer à payer des frais pour les ressources Google Cloud. Pour en savoir plus, consultez la section Supprimer le déploiement.

Accorder des autorisations IAM

Attribuez les rôles et autorisations IAM appropriés Projet hôte App Hub.

Console

  1. Pour obtenir les autorisations nécessaires pour effectuer cette demandez à votre administrateur de vous accorder les autorisations Rôles IAM sur votre projet:

    1. Dans la console Google Cloud, accédez à la page IAM.

      Accéder à IAM

    2. Cliquez sur Accorder l'accès. Le volet Accorder l'accès s'affiche.

    3. Dans le champ Nouveaux comptes principaux, saisissez l'adresse e-mail du personne chargée d'administrer App Hub, le rôle Administrateur App Hub dans le projet hôte.

    4. Cliquez sur Sélectionner un rôle et, dans le champ Filtre, saisissez App Hub

    5. Sélectionnez le rôle Administrateur App Hub, puis cliquez sur Enregistrer.

gcloud

  1. Pour attribuer les rôles aux personnes chargées d'administrer App Hub, répétez la commande suivante en remplaçant les les rôles IAM requis.

    gcloud projects add-iam-policy-binding HOST_PROJECT_ID \
        --member='user:HOST_PROJECT_ADMIN' \
        --role='roles/apphub.admin'

    Remplacez HOST_PROJECT_ADMIN par l'utilisateur qui a le rôle d'administrateur App Hub dans le projet hôte. Cette valeur comprend au format username@yourdomain, par exemple : [email protected]

  2. Attribuez le rôle d'administrateur App Hub dans le projet de service au personnes qui administrent App Hub. Ils doivent disposer Rôle d'administrateur App Hub permettant d'ajouter des projets de service à l'hôte projet. Au moins une personne doit disposer de ce rôle pour chaque service projet. Dans cet exemple, le projet hôte fait office de projet de service.

    gcloud projects add-iam-policy-binding SERVICE_PROJECT_ID \
       --member='user:HOST_PROJECT_ADMIN' \
       --role='roles/apphub.admin'

    Remplacez SERVICE_PROJECT_ID par le nom du HOST_PROJECT_ID

Associer un projet de service

Associez le projet hôte sur lequel vous avez déployé les ressources en tant que service projet.

Console

  1. Dans la console Google Cloud, accédez à la page Paramètres d'App Hub. .

    Accéder aux paramètres

  2. Sur la page Paramètres, cliquez sur Associer des projets.

  3. Dans le volet qui s'affiche, recherchez des projets dans la liste affichée, puis cochez la case du projet hôte.

  4. Cliquez sur Sélectionner. Le tableau Projet(s) de service associé(s) affiche l'hôte sélectionné en tant que projet de service.

  5. Cliquez sur Fermer.

gcloud

Ajouter votre projet hôte en tant que projet de service à App Hub de votre projet hôte.

gcloud apphub service-projects add HOST_PROJECT_ID \
  --project=HOST_PROJECT_ID

Créer une application

Créez une application qui servira de conteneur à vos services et charges de travail.

Console

  1. Assurez-vous que vous vous trouvez dans le projet hôte.
  2. Dans la console Google Cloud, accédez à la page Applications d'App Hub.

    Accéder à la page Applications

  3. Cliquez sur Créer une application.

  4. Sur la page Créer une application, dans la section Choisir la région de l'application et nom, dans la liste Région, sélectionnez us-west1.

  5. Dans le champ Nom de l'application, saisissez tutorial-application.

  6. Saisissez un nom dans le champ Display name (Nom à afficher), sample-application, puis cliquez sur Continue (Continuer).

  7. Dans le volet Ajouter des attributs, dans la liste Critique, sélectionnez Élevée : La criticité indique le degré d'importance d'une application, d'un service ou charge de travail de votre entreprise.

  8. Dans le champ Environnement, pour indiquer l'étape du logiciel sélectionnez Production.

  9. Cliquez sur Continuer.

  10. Dans le volet Ajouter des propriétaires, ajoutez les informations suivantes : pour les propriétaires de développeurs, les propriétaires d'opérateurs et les propriétaires d'entreprise. Notez que vous devez saisir l'adresse e-mail du propriétaire si vous ajoutez un écran son nom.

    1. Saisissez le nom à afficher d'un propriétaire.
    2. Saisissez l'adresse e-mail du propriétaire. Cette valeur doit comporter au format username@yourdomain (par exemple, [email protected]).
  11. Répétez ces étapes pour chaque développeur, opérateur et propriétaire d'établissement.

  12. Cliquez sur Créer.

L'application est créée et répertoriée sur la page Applications.

gcloud

  1. Sélectionnez le projet hôte que vous avez créé:

    gcloud config set project HOST_PROJECT_ID
  2. Créer une application appelée tutorial-application dans la région us-west1et attribuez-lui un nom à afficher, Tutorial:

    gcloud apphub applications create tutorial-application \
        --display-name='Tutorial' \
        --scope-type=REGIONAL \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    
  3. Répertoriez les applications de votre projet hôte.

    gcloud apphub applications list \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Vous obtenez un résultat semblable à celui-ci :

    ID: tutorial-application
    DISPLAY_NAME: Tutorial
    CREATE_TIME: 2023-10-31T18:33:48
    
  4. Mettez à jour votre application avec les criticality-type, environment-type, et de propriétaire:

    gcloud apphub applications update tutorial-application \
      --criticality-type='HIGH' \
      --environment-type='PRODUCTION' \
      --developer-owners=display-name=DISPLAY-NAME-DEVELOPER,email=EMAIL-DEVELOPER \
      --operator-owners=display-name=DISPLAY-NAME-OPERATOR,email=EMAIL-OPERATOR \
      --business-owners=display-name=DISPLAY-NAME-BUSINESS,email=EMAIL-BUSINESS \
      --project=HOST_PROJECT_ID \
      --location=us-west1
    

    Remplacez les éléments suivants :

    • DISPLAY-NAME-DEVELOPER, DISPLAY-NAME-OPERATOR DISPLAY-NAME-BUSINESS: noms à afficher du le développeur, l'opérateur et les propriétaires d'établissement, respectivement.
    • EMAIL-NAME-DEVELOPER, EMAIL-NAME-OPERATOR EMAIL-NAME-BUSINESS: adresses e-mail des le développeur, l'opérateur et les propriétaires d'établissement, respectivement. Ces valeurs doivent au format username@yourdomain, par exemple : [email protected]

    Remarques :

    • criticality-type: indique le degré d'importance d'une application, ou charge de travail de votre entreprise concerne vos activités commerciales.
    • environment-type: indique les étapes du logiciel tout au long du cycle de vie.
  5. Obtenez des informations sur l'application que vous avez créée.

    gcloud apphub applications describe tutorial-application \
      --project=HOST_PROJECT_ID \
      --location=us-west1
    

    La commande renvoie des informations au format YAML, semblables à celles-ci:

    attributes:
    businessOwners:
    – displayName: [DISPLAY-NAME-BUSINESS]
      email: [EMAIL-BUSINESS]
    criticality:
      type: HIGH
    developerOwners:
    – displayName: [DISPLAY-NAME-DEVELOPER]
      email: [EMAIL-DEVELOPER]
    environment:
      type: PRODUCTION
    operatorOwners:
    – displayName: [DISPLAY-NAME-OPERATOR]
      email: [EMAIL-OPERATOR]
    createTime: '2023-10-31T18:33:48.199394108Z'
    displayName: Tutorial
    name: projects/HOST_PROJECT_ID/locations/us-west1/applications/tutorial-application
    scope:
      type: REGIONAL
    state: ACTIVE
    uid: 9d991a9d-5d8a-4c0d-b5fd-85e39fb58c73
    updateTime: '2023-10-31T18:33:48.343303819Z'
    

Enregistrer des services et une charge de travail

L'enregistrement de services et de charges de travail les ajoute à une application.

Console

  1. Dans la console Google Cloud, accédez à la page Applications d'App Hub.

    Accéder à la page Applications

  2. Cliquez sur le nom de votre application, sample-application. L'onglet Services et charges de travail qui s'affiche contient la liste des et les charges de travail figurant dans vos projets de service.

  3. Enregistrez un service:

    1. Dans l'onglet Services et charges de travail, cliquez sur Enregistrez un service ou une charge de travail.
    2. Dans le volet Enregistrer un service ou une charge de travail, dans la section Dans la section Sélectionner un service ou une charge de travail, sélectionnez le nom l7-xlb-backend-service, puis cliquez sur Continuer.
    3. Dans le volet Ajouter des attributs, saisissez le nom de l'attribut. sample-service-backend
    4. Dans le champ Nom à afficher, saisissez service-backend.
    5. Dans la liste Critique, pour indiquer l'importance de la sélectionnez Élevée.
    6. Dans le champ Environnement, pour indiquer l'étape du logiciel sélectionnez Production.
    7. Cliquez sur Continuer.
    8. Dans le volet Ajouter des propriétaires, ajoutez les informations suivantes, si nécessaire pour Propriétaires de développeurs, Propriétaires d'opérateurs et Propriétaires d'entreprises. Notez que vous devez saisir l'adresse e-mail du propriétaire si vous ajoutez un nom à afficher.
      1. Saisissez le nom à afficher du propriétaire.
      2. Saisissez l'adresse e-mail du propriétaire. Cette valeur doit comporter au format username@yourdomain (par exemple, [email protected]).
    9. Répétez ces étapes pour chaque développeur, opérateur et propriétaire d'établissement.
    10. Cliquez sur S'inscrire.

    Dans l'onglet Services et charges de travail, dans la Services et charges de travail enregistrés, vous pouvez voir service ajouté.

  4. Répétez les étapes précédentes pour enregistrer les autres services en tant que sample-service-forwarding-rule et sample-service-url-map respectivement.

  5. Enregistrez une charge de travail en répétant les étapes précédentes pour enregistrer un service à quelques exceptions près:

    1. Dans le volet Enregistrer un service ou une charge de travail, dans la section Dans la section Sélectionner un service ou une charge de travail, sélectionnez le nom l7-xlb-backend-example. Cliquez ensuite sur Continuer.
    2. Dans le volet Ajouter des attributs, saisissez le nom de l'attribut. sample-workload
    3. Dans le champ Nom à afficher, saisissez workload-instance-group.

    Dans l'onglet Services et charges de travail, dans la Services et charges de travail enregistrés, vous pouvez voir charge de travail ajoutée.

gcloud

  1. Ajoutez une personne disposant des autorisations d'éditeur App Hub.

    gcloud projects add-iam-policy-binding HOST_PROJECT_ID \
      --member='user:APP_HUB_EDITOR' \
      --role='roles/apphub.editor'
    

    Remplacez APP_HUB_EDITOR par l'utilisateur disposant du Rôle d'éditeur App Hub dans le projet hôte. Cette valeur a la valeur au format username@yourdomain (par exemple, [email protected]).

  2. Répertoriez tous les services détectés dans le projet hôte. Cette commande renvoie qui peuvent être enregistrés dans une application.

    gcloud apphub discovered-services list \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Vous obtenez un résultat semblable à celui-ci :

    ID: 71dd6fa4-5644-43ee-918f-c5fda03ffe24
    SERVICE_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/backendServices/l7-xlb-backend-service'}
    SERVICE_PROPERTIES: {'gcpProject': 'projects/SERVICE_PROJECT_ID', 'location': 'us-west1'}
    
    ID: fe831ba4-ec16-4eb8-9ea4-b394fd30f561
    SERVICE_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/forwardingRules/l7-xlb-forwarding-rule'}
    SERVICE_PROPERTIES: {'gcpProject': 'projects/SERVICE_PROJECT_ID', 'location': 'us-west1'}
    
    ID: 637a3216-c6cc-410e-8bf9-83b7ef66a62f
    SERVICE_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/urlMaps/regional-l7-xlb-map'}
    SERVICE_PROPERTIES: {'gcpProject': 'projects/SERVICE_PROJECT_ID', 'location': 'us-west1'}
    

    Copiez le service ID (par exemple, 71dd6fa4-5644-43ee-918f-c5fda03ffe24). de la sortie pour l'utiliser à l'étape suivante.

  3. Enregistrez les services de l'étape précédente dans votre application. Copier les ID de service du champ de sortie à l'étape précédente.

    gcloud apphub applications services create sample-service-backend \
        --discovered-service='projects/HOST_PROJECT_ID/locations/us-west1/discoveredServices/BACKEND_SERVICE_ID' \
        --display-name='service-backend' \
        --criticality-type='HIGH' \
        --environment-type='PRODUCTION' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    
    gcloud apphub applications services create sample-service-forwarding-rule \
        --discovered-service='projects/HOST_PROJECT_ID/locations/us-west1/discoveredServices/FORWARDING_RULE_SERVICE_ID' \
        --display-name='service-forwarding-rule' \
        --criticality-type='HIGH' \
        --environment-type='PRODUCTION' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    
    gcloud apphub applications services create sample-service-url-map \
        --discovered-service='projects/HOST_PROJECT_ID/locations/us-west1/discoveredServices/URL_MAP_SERVICE_ID' \
        --display-name='url-map' \
        --criticality-type='HIGH' \
        --environment-type='PRODUCTION' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Remplacez les éléments suivants :

    • BACKEND_SERVICE_ID: le ID de service du de service de backend que vous souhaitez enregistrer.
    • FORWARDING_RULE_SERVICE_ID: le service ID de la règle de transfert que vous souhaitez enregistrer.
    • URL_MAP_SERVICE_ID: le ID de service de l'URL carte que vous souhaitez enregistrer.
  4. Répertorier tous les services enregistrés dans l'application.

    gcloud apphub applications services list \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Vous obtenez un résultat semblable à celui-ci :

    ID: sample-service-backend
    DISPLAY_NAME: service-backend
    SERVICE_REFERENCE:  {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/backendServices/l7-xlb-backend-service'}
    CREATE_TIME: 2024-02-13T00:31:45
    
    ID: sample-service-forwarding-rule
    DISPLAY_NAME: service-forwarding-rule
    SERVICE_REFERENCE:  {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/forwardingRules/l7-xlb-forwarding-rule'}
    CREATE_TIME: 2024-02-13T00:31:45
    
    ID: sample-service-url-map
    DISPLAY_NAME: url-map
    SERVICE_REFERENCE:  {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/regions/us-west1/urlMaps/regional-l7-xlb-map'}
    CREATE_TIME: 2024-02-13T00:31:45
    

    Les services enregistrés, mais dissociés, sont indiqués par une valeur vide dans le champ SERVICE_REFERENCE. Pour en savoir plus sur les d'inscription, consultez les les propriétés et les attributs d'App Hub.

  5. Répertoriez toutes les charges de travail détectées dans le projet hôte. Cette commande renvoie charges de travail disponibles pour l'enregistrement auprès d'une application.

    gcloud apphub discovered-workloads list \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Vous obtenez un résultat semblable à celui-ci :

    ID: c9c08669-0fd2-4f7c-b2b1-2cf3c57662c2
    WORKLOAD_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/zones/us-west1-a/instanceGroups/l7-xlb-backend-example'}
    WORKLOAD_PROPERTIES: {'gcpProject': 'projects/SERVICE_PROJECT_ID', 'location': 'us-west1', 'zone': 'us-west1-a'}
    

    Copiez l'ID de la charge de travail du résultat pour l'utiliser dans l'étape suivante.

  6. Enregistrer la charge de travail de l'étape précédente dans votre application en tant que sample-workload. Copiez l'ID de la charge de travail à partir du de sortie à l'étape précédente.

    gcloud apphub applications workloads create sample-workload \
        --discovered-workload='projects/HOST_PROJECT_ID/locations/us-west1/discoveredWorkloads/WORKLOAD_ID' \
        --display-name='workload-instance-group' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Remplacez WORKLOAD_ID par l'ID de charge de travail que vous souhaitez enregistrer.

  7. Répertoriez toutes les charges de travail enregistrées dans l'application.

    gcloud apphub applications workloads list \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=us-west1
    

    Vous obtenez un résultat semblable à celui-ci :

    ID: sample-workload
    DISPLAY_NAME: workload-instance-group
    WORKLOAD_REFERENCE: {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_NUMBER]/zones/us-west1-a/instanceGroups/l7-xlb-backend-example'}
    CREATE_TIME: 2024-02-13T00:31:45
    

    Les charges de travail enregistrées, mais dissociées, sont indiquées par une valeur vide dans le champ WORKLOAD_REFERENCE. Pour en savoir plus sur les d'inscription, consultez les les propriétés et les attributs d'App Hub.

Afficher tous les services et charges de travail

Vous pouvez afficher les détails des services et des charges de travail de tous les services qui sont associés au projet hôte.

  1. Dans la console Google Cloud, accédez à App Hub. Services et charges de travail.

    Accéder à la page "Services et charges de travail"

    Tous les services et charges de travail des projets de service associés affiché.

  2. Dans la liste Région, sélectionnez us-west1. La charge de travail workload-instance-group s'affiche avec les informations suivantes : Type d'App Hub, Critique et Enregistré dans

  3. Pour filtrer les services ou les charges de travail en fonction de leur état:

    1. Dans le champ Filtre, sélectionnez des filtres tels que État de l'enregistrement.
    2. Cliquez sur Inscrit. Une liste des services et des charges de travail enregistrés à l'application apparaît.

Effectuer un nettoyage

Pour éviter que les ressources utilisées lors de ce tutoriel soient facturées sur votre compte Google Cloud, supprimez le projet contenant les ressources, ou conservez le projet et supprimez les ressources individuelles.

Supprimer les ressources App Hub

Console

  1. Dans la console Google Cloud, accédez à Page Applications d'App Hub

    Accéder à la page Applications

  2. Cliquez sur le nom d'une application, sample-application.

  3. Dans l'onglet Services et charges de travail, Services et charges de travail enregistrés, cliquez sur le nom du service-forwarding-rule.

  4. Sur la page Services et charges de travail, cliquez sur Annuler l'enregistrement.

    Une alerte indique que l'enregistrement du service a été annulé.

  5. Dans l'onglet Services et charges de travail, Services et charges de travail enregistrés, cliquez sur le nom du workload-instance-group.

  6. Dans l'onglet Détails, cliquez sur Annuler l'enregistrement.

    Une alerte indique que la charge de travail a été annulée.

  7. Accédez à la page Applications d'App Hub.

    Accéder à la page Applications

  8. Cliquez sur le nom d'une application.

  9. Sur la page tutorial-application, cliquez sur Supprimer.

  10. Dans la console Google Cloud, accédez à la page Paramètres d'App Hub. .

    Accéder aux paramètres

  11. Sur la page Paramètres, cochez la case SERVICE_PROJECT_ID que vous souhaitez supprimer du projet hôte.

  12. Cliquez sur Dissocier des projets.

gcloud

  1. Listez les services enregistrés dans l'application:

    gcloud apphub applications services list \
      --application=tutorial-application --project=HOST_PROJECT_ID \
      --location=us-west1
    
  2. Annulez l'enregistrement des services dans l'application:

    gcloud apphub applications services delete sample-service-backend \
      --application=tutorial-application --project=HOST_PROJECT_ID \
      --location=us-west1
    
    gcloud apphub applications services delete sample-service-forwarding-rule \
      --application=tutorial-application --project=HOST_PROJECT_ID \
      --location=us-west1
    
    gcloud apphub applications services delete sample-service-url-map \
      --application=tutorial-application --project=HOST_PROJECT_ID \
      --location=us-west1
    

    Les services sont découverts et les services pouvant être enregistrés application.

  3. Listez les charges de travail enregistrées dans l'application:

    gcloud apphub applications workloads list \
      --application=tutorial-application --project=HOST_PROJECT_ID \
      --location=us-west1
    
  4. Annulez l'enregistrement de la charge de travail dans l'application:

    gcloud apphub applications workloads delete sample-workload \
      --application=tutorial-application --project=HOST_PROJECT_ID \
      --location=us-west1
    

    Il s'agit désormais d'une charge de travail détectée qui peut être enregistrée dans application.

  5. Supprimez l'application:

    gcloud apphub applications delete tutorial-application \
      --project=HOST_PROJECT_ID \
      --location=us-west1
    
  6. Supprimez le projet de service du projet hôte:

    gcloud apphub service-projects remove SERVICE_PROJECT_ID \
      --project=HOST_PROJECT_ID
    

Supprimer le déploiement

Lorsque vous n'avez plus besoin de la solution, supprimez les ressources que vous avez créées dans cette solution pour éviter de continuer à payer des frais associées à ces ressources.

Suivez cette procédure si vous avez déployé la solution à l'aide de la CLI Terraform.

  1. Dans Cloud Shell, assurez-vous que le répertoire de travail actuel est terraform-docs-samples/lb/regional_external_http_load_balancer. Si ce n'est pas le cas, accédez à ce répertoire :

  2. Supprimez les ressources provisionnées par Terraform :

    terraform destroy
    

    Terraform affiche la liste des ressources qui seront supprimées.

  3. Lorsque vous êtes invité à effectuer les actions, saisissez yes.

    Terraform affiche des messages de progression. Une fois toutes les ressources supprimées, Terraform affiche le message suivant :

    Destroy complete!
    

Lorsque vous n'avez plus besoin du projet Google Cloud que vous avez utilisé pour la solution, vous pouvez le supprimer.

Supprimer le projet

Console

  1. Dans la console Google Cloud, accédez à la page Gérer les ressources.

    Accéder à la page Gérer les ressources

  2. Dans la liste des projets, sélectionnez le projet à supprimer, puis cliquez sur Supprimer.
  3. Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêtez le projet pour le supprimer.

gcloud

Supprimez un projet Google Cloud :

gcloud projects delete PROJECT_ID

Remplacez PROJECT_ID par HOST_PROJECT_ID.

Étape suivante