Ce tutoriel est destiné aux personnes qui configurent et gèrent App Hub. Vous devez avoir une certaine expérience de Cloud Load Balancing.
Objectifs
Ce guide vous explique comment effectuer les tâches suivantes :- Créer ou sélectionner un projet Google Cloud Ce projet est votre projet hôte App Hub.
Utilisez Terraform pour déployer un réseau VPC, un équilibreur de charge d'application externe régional et un MIG 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 ressources découvertes sur App Hub. Pour en savoir plus, consultez la section Concepts et modèle de données.
Attribuer les rôles et les autorisations appropriés au projet hôte
Associez le projet hôte App Hub en tant que projet de service.
Créez une application sur le projet hôte App Hub.
Découvrir les ressources d'infrastructure en tant que services et charges de travail App Hub
Enregistrez des services et une charge de travail à partir du projet de service sur l'application et attribuez des attributs.
Affichez les détails des services et des charges de travail enregistrés sur App Hub.
Coûts
Pour obtenir une estimation du coût des ressources Google Cloud utilisées par 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 projet 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 les 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 :
-
Administrateur Service Usage (
roles/serviceusage.services.enable
) -
Administrateur de compte de service (
roles/iam.serviceAccounts.create
) -
Administrateur IAM de projet (
roles/resourcemanager.projectIamAdmin
) -
Cloud Infrastructure Manager (
roles/config.admin
) -
Administrateur App Hub (
roles/apphub.admin
)
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
Dans Google Cloud Console, accédez à la page de sélection du projet.
Sélectionnez ou créez un projet Google Cloud pour en faire votre projet hôte App Hub.
-
Activez les API requises.
gcloud
-
Dans la console Google Cloud, activez Cloud Shell.
En bas de la fenêtre de la console Google Cloud, une session Cloud Shell démarre et affiche une invite de ligne de commande. Cloud Shell est un environnement shell dans lequel Google Cloud CLI est déjà installé, et dans lequel des valeurs sont déjà définies pour votre projet actuel. L'initialisation de la session peut prendre quelques secondes.
Assurez-vous que la version la plus récente de la Google Cloud CLI est installée. Exécutez la commande suivante à partir de Cloud Shell:
gcloud components update
Créez ou sélectionnez 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
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échargez la configuration Terraform sur GitHub, personnalisez 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.
Voici le flux de traitement des requêtes de la topologie déployée par la solution de VM gérée à équilibrage de charge.
L'utilisateur envoie une requête à l'application, qui est déployée sur Compute Engine. Cloud Load Balancing reçoit cette requête.
Cloud Load Balancing achemine le trafic vers le groupe d'instances géré Compute Engine à l'aide des informations de la règle de transfert, du mappage d'URL et du service de backend.
Configurer le client Terraform
Vous pouvez exécuter Terraform dans Cloud Shell ou sur votre hôte local. Ce tutoriel explique comment exécuter Terraform dans Cloud Shell, où Terraform est 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.
Dans Cloud Shell, clonez le dépôt GitHub dans Cloud Shell.
git clone https://github.com/terraform-google-modules/terraform-docs-samples
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
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
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 :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.
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
etterraform plan
.
Provisionner les ressources
Lorsqu'aucune autre modification n'est nécessaire dans la configuration, déployez les ressources.
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 :Appliquez la configuration Terraform :
terraform apply
Terraform affiche la liste des ressources qui seront créées.
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 entre la règle de transfert, le mappage d'URL, le service de backend et un MIG Compute Engine. Le service de backend, le mappage d'URL et les règles de transfert deviennent des services découverts dans le projet hôte App Hub. Le MIG Compute Engine devient une charge de travail détectée 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 au projet hôte App Hub.
Console
Pour obtenir les autorisations nécessaires pour suivre ce tutoriel, demandez à votre administrateur de vous attribuer les rôles IAM requis sur votre projet:
Dans la console Google Cloud, accédez à la page IAM.
Cliquez sur
Accorder l'accès. Le volet Accorder l'accès s'affiche.Dans le champ Nouveaux comptes principaux, saisissez l'adresse e-mail de la personne qui administrera App Hub, le rôle Administrateur App Hub dans le projet hôte.
Cliquez sur Sélectionner un rôle et, dans le champ Filtre, saisissez
App Hub
.Sélectionnez le rôle Administrateur App Hub, puis cliquez sur Enregistrer.
gcloud
Pour attribuer les rôles aux personnes chargées d'administrer App Hub, répétez la commande suivante en remplaçant les rôles IAM, si nécessaire.
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 disposant du rôle d'administrateur App Hub dans le projet hôte. Cette valeur est au formatusername@yourdomain
(par exemple,robert.smith@example.com
).Accordez le rôle d'administrateur App Hub dans le projet de service aux personnes qui administrent App Hub. Il doit disposer du rôle "Administrateur App Hub" pour ajouter des projets de service au projet hôte. Au moins une personne doit disposer de ce rôle pour chaque projet de service. 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 de HOST_PROJECT_ID.
Associer un projet de service
Associez le projet hôte sur lequel vous avez déployé les ressources en tant que projet de service.
Console
Dans la console Google Cloud, accédez à la page Paramètres d'App Hub.
Sur la page Paramètres, cliquez sur Associer des projets.
Dans le volet qui s'affiche, recherchez des projets dans la liste affichée, puis cochez la case correspondant au projet hôte.
Cliquez sur Sélectionner. Le tableau Projets de service associés affiche le projet hôte sélectionné en tant que projet de service.
Cliquez sur Fermer.
gcloud
Ajoutez votre projet hôte en tant que projet de service au projet hôte App Hub.
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
- Assurez-vous que vous vous trouvez dans le projet hôte.
Dans la console Google Cloud, accédez à la page Applications d'App Hub.
Cliquez sur Créer une application. Le volet Create Application (Créer une application) s'affiche.
Dans la liste Région, sélectionnez us-west1.
Dans le champ Application Name (Nom de l'application), saisissez
tutorial-application
.Cliquez sur Continuer.
Dans la section Add parameters (Ajouter des attributs), saisissez un nom dans le champ Display name (Nom à afficher) :
sample-application
.Dans la liste Critique, sélectionnez Élevée. La criticité indique l'importance d'une application, d'un service ou d'une charge de travail pour vos opérations métier.
Dans le champ Environnement, pour indiquer l'étape du cycle de vie du logiciel, sélectionnez Production.
Cliquez sur Continuer.
Dans la section Ajouter des propriétaires, ajoutez les informations suivantes pour les propriétaires développeurs, les propriétaires d'opérateur et les propriétaires d'entreprise. Notez que vous devez saisir l'adresse e-mail du propriétaire si vous ajoutez un nom à afficher.
- Saisissez le nom à afficher du propriétaire.
- Saisissez l'adresse e-mail du propriétaire. Cette valeur doit être au format
username@yourdomain
(par exemple,222larabrown@gmail.com
).
Répétez ces étapes pour chaque développeur, opérateur et propriétaire d'établissement.
Cliquez sur Créer.
L'application est créée et répertoriée sur la page Applications.
gcloud
Sélectionnez le projet hôte que vous avez créé:
gcloud config set project HOST_PROJECT_ID
Créez une application appelée
tutorial-application
dans la régionus-west1
et 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
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
Mettez à jour votre application avec les attributs
criticality-type
,environment-type
et 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
etDISPLAY-NAME-BUSINESS
: noms à afficher du développeur, de l'opérateur et des propriétaires d'établissement, respectivement.EMAIL-NAME-DEVELOPER
,EMAIL-NAME-OPERATOR
etEMAIL-NAME-BUSINESS
: adresses e-mail du développeur, de l'opérateur et des propriétaires de l'établissement, respectivement. Ces valeurs doivent être au formatusername@yourdomain
(par exemple,222larabrown@gmail.com
).
Remarques :
criticality-type
: indique l'importance d'une application, d'un service ou d'une charge de travail pour vos activités commerciales.environment-type
: indique les étapes du cycle de vie du logiciel.
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
Dans la console Google Cloud, accédez à la page Applications d'App Hub.
Cliquez sur le nom de votre application, sample-application. L'onglet Services et charges de travail s'affiche. Il contient la liste des services enregistrés et des charges de travail qui se trouvent dans vos projets de service.
Enregistrez un service:
- Dans l'onglet Services et charges de travail, cliquez sur Enregistrer le service/la charge de travail.
- Dans le volet Enregistrer le service ou la charge de travail, dans la section Choisir un service ou une charge de travail, sélectionnez le nom du service (l7-xlb-backend-service), puis cliquez sur Continuer.
- Dans la section Ajouter des attributs, saisissez le nom de l'attribut,
sample-service-backend
. - Dans le champ Nom à afficher, saisissez
service-backend
. - Dans la liste Critique, sélectionnez Élevée pour indiquer l'importance de l'application.
- Dans le champ Environnement, pour indiquer l'étape du cycle de vie du logiciel, sélectionnez Production.
- Cliquez sur Continuer.
- Ajoutez les informations suivantes conformément aux exigences 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 nom à afficher.
- Saisissez le nom à afficher du propriétaire.
- Saisissez l'adresse e-mail du propriétaire. Cette valeur doit être au format
username@yourdomain
(par exemple,222larabrown@gmail.com
).
- Répétez ces étapes pour chaque développeur, opérateur et propriétaire d'établissement.
- Cliquez sur Register (S'inscrire).
Dans l'onglet Services et charges de travail, dans la section Services et charges de travail enregistrés, vous pouvez voir le nouveau service ajouté.
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.
Enregistrez une charge de travail en répétant les étapes précédentes pour enregistrer un service, avec les exceptions suivantes:
- Dans le volet Enregistrer le service ou la charge de travail, dans la section Choisir un service ou une charge de travail, sélectionnez le nom de la charge de travail (l7-xlb-backend-example), puis cliquez sur Continuer.
- Dans la section Ajouter des attributs, saisissez le nom de l'attribut,
sample-workload
. - Dans le champ Nom à afficher, saisissez
workload-instance-group
.
Dans l'onglet Services et charges de travail, dans la section Services et charges de travail enregistrés, vous pouvez voir la nouvelle charge de travail ajoutée.
gcloud
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 le formatusername@yourdomain
(par exemple,robert.smith@example.com
).Répertoriez tous les services détectés dans le projet hôte. Cette commande renvoie les services pouvant ê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
) indiqué dans la sortie pour l'utiliser à l'étape suivante.Enregistrez les services de l'étape précédente dans votre application. Copiez 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
:ID
du service de backend que vous souhaitez enregistrer.FORWARDING_RULE_SERVICE_ID
: serviceID
de la règle de transfert que vous souhaitez enregistrer.URL_MAP_SERVICE_ID
: leID
de service du mappage d'URL que vous souhaitez enregistrer.
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 états d'enregistrement, consultez les propriétés et attributs d'App Hub.Répertoriez toutes les charges de travail détectées dans le projet hôte. Cette commande renvoie les charges de travail qui peuvent être enregistrées dans 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 à l'étape suivante.
Enregistrez 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 champ 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 la charge de travail que vous souhaitez enregistrer.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 états d'enregistrement, consultez les propriétés et 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 projets de service associés au projet hôte.
Dans la console Google Cloud, accédez à la page Services et charges de travail d'App Hub.
Dans la liste Région, sélectionnez us-west1. La charge de travail workload-instance-group s'affiche avec des informations telles que Type de hub d'application, Ccriticité et Enregistré dans.
Pour filtrer les services ou les charges de travail en fonction de leur état:
- Dans le champ Filtre, sélectionnez des filtres tels que État de l'enregistrement.
- Cliquez sur Inscrit. La liste des services et des charges de travail enregistrés pour l'application s'affiche.
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
Dans la console Google Cloud, accédez à la page Applications d'App Hub.
Cliquez sur le nom d'une application, sample-application.
Dans l'onglet Services et charges de travail, dans la section Services et charges de travail enregistrés, cliquez sur le nom du service, service-forwarding-rule.
Sur la page Services et charges de travail, cliquez sur Annuler l'enregistrement du service. Une alerte indique que l'enregistrement du service a été annulé.
Dans l'onglet Services et charges de travail, dans la section Services et charges de travail enregistrés, cliquez sur le nom de la charge de travail, workload-instance-group.
Dans l'onglet Détails, cliquez sur Annuler l'enregistrement de la charge de travail. Une alerte indique que la charge de travail a été annulée.
Accédez à la page Applications d'App Hub.
Cliquez sur le nom d'une application.
Sur la page tutorial-application, cliquez sur Supprimer.
Dans la console Google Cloud, accédez à la page Paramètres d'App Hub.
Sur la page Paramètres, cochez la case correspondant au SERVICE_PROJECT_ID que vous souhaitez supprimer du projet hôte.
Cliquez sur Dissocier des projets.
gcloud
Listez les services enregistrés dans l'application:
gcloud apphub applications services list \ --application=tutorial-application --project=HOST_PROJECT_ID \ --location=us-west1
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 à présent détectés et pouvant être enregistrés auprès de l'application.
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
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
La charge de travail est désormais une charge de travail détectée qui peut être enregistrée dans l'application.
Supprimez l'application:
gcloud apphub applications delete tutorial-application \ --project=HOST_PROJECT_ID \ --location=us-west1
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.
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 :Supprimez les ressources provisionnées par Terraform :
terraform destroy
Terraform affiche la liste des ressources qui seront supprimées.
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
- Dans la console Google Cloud, accédez à la page Gérer les ressources.
- Dans la liste des projets, sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Supprimer.
- Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêter pour supprimer le projet.
gcloud
Supprimez un projet Google Cloud :
gcloud projects delete PROJECT_ID
Remplacez PROJECT_ID
par HOST_PROJECT_ID
.