Surveiller les ressources d'infrastructure à l'aide d'une application globale App Hub


App Hub vous permet de gérer et d'afficher les ressources d'infrastructure des projets Google Cloud via les applications App Hub. Pour créer ces applications App Hub, vous avez besoin d'un projet hôte App Hub auquel vous pouvez associer des projets de service contenant des ressources Google Cloud .

Ce tutoriel vous explique comment configurer une application App Hub globale pour plusieurs projets, puis afficher les ressources de l'application. À l'aide de plusieurs projets de service, vous configurez un équilibreur de charge d'application interne dans un environnement VPC partagé. Ensuite, dans une application globale sur le projet hôte App Hub, vous enregistrez et surveillez toutes les ressources d'infrastructure des projets de service en tant que services et charges de travail App Hub.

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

Objectifs

  • Configurez une application Global App Hub contenant des ressources couvrant plusieurs projets.
  • Surveillez les ressources à l'aide des métriques système de l'application.

Coûts

Pour obtenir une estimation du coût des ressources Google Cloud utilisées par la solution de VM gérées avec équilibrage de charge, consultez l'estimation précalculée dans le Simulateur de coûtGoogle 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

Avant de configurer ce tutoriel, déterminez les rôles et les autorisations de vos projets, puis créez quatre projets Google Cloud . L'un de ces projets est le projet hôte d'App Hub, et les trois autres sont des projets de service d'App Hub.

Rôles et autorisations requis

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 au compte principal approprié sur le projet. 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 gérer l'accès à un projet, un dossier ou une organisation, demandez à votre administrateur de vous accorder les rôles IAM suivants sur la ressource dont vous souhaitez gérer l'accès (projet, dossier ou organisation) :

Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.

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

Créer des projets hôte et de service App Hub

Console

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

    Accéder au sélecteur de projet

  2. Sélectionnez ou créez un projet Google Cloud pour qu'il serve de projet hôte pour votre App Hub.

  3. Enable the App Hub, Compute Engine, Service Management, and Service Usage APIs.

    Enable the APIs

  4. Dans le même dossier que le projet hôte de l'App Hub, créez trois projets Google Cloud . Il s'agit des projets de service App Hub pour le projet hôte App Hub.

  5. Vérifiez que la facturation est activée pour tous vos projets Google Cloud .

  6. Enable the App Hub, Compute Engine, Service Management, and Service Usage APIs.

    Enable the APIs

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 dernière version de Google Cloud CLI est installée. Exécutez la commande suivante à partir de Cloud Shell:

      gcloud components update

  3. Créez ou sélectionnez un projet, HOST_PROJECT_ID, qui servira de 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. Vérifiez que la facturation est activée pour tous vos projets Google Cloud .

  5. Activez les API App Hub, Compute Engine, Service Management et Service Usage:

    gcloud services enable apphub.googleapis.com \
       compute.googleapis.com \
       servicemanagement.googleapis.com \
       serviceusage.googleapis.com
  6. Créez trois nouveaux projets Google Cloud pour servir de projets de service App Hub au projet hôte App Hub.

    1. Créez un projet de service:

      gcloud projects create SERVICE_PROJECT_1_ID

      Remplacez SERVICE_PROJECT_1_ID par l'ID du projet de service 1.

    2. Sélectionnez le projet de service que vous avez créé:

      gcloud config set project SERVICE_PROJECT_1_ID
    3. Activez les API Compute Engine, Service Management et Service Usage:

      gcloud services enable compute.googleapis.com \
        servicemanagement.googleapis.com \
        serviceusage.googleapis.com
    4. Définissez la variable de configuration utilisée dans ce tutoriel:

      export SERVICE_PROJECT_1_NUMBER= $(gcloud projects describe $(gcloud config get-value project) --format='value(projectNumber)')
    5. Répétez les étapes précédentes pour créer SERVICE_PROJECT_2_ID et SERVICE_PROJECT_3_ID, activer les API et définir la variable de configuration.

Préparer l'environnement

Si vous avez déjà configuré un équilibreur de charge d'application interne dans un environnement VPC partagé dans plusieurs projets, passez à la section Accorder des autorisations IAM de ce document.

Si ce n'est pas le cas, procédez comme suit pour configurer un équilibreur de charge d'application interne dans un environnement VPC partagé:

Charges de travail et services de l'App Hub avec un équilibreur de charge et un groupe d'instances géré.
Figure 1. Charges de travail et services App Hub avec un équilibreur de charge et des groupes d'instances gérés dans un VPC partagé.
  1. Dans le projet de service 1, configurez un réseau VPC partagé et deux sous-réseaux.
  2. Dans le projet de service 2, créez le service de backend de l'équilibreur de charge avec deux groupes d'instances gérés comme backends.
  3. Dans le projet de service 3, créez un autre service de backend d'équilibreur de charge avec deux groupes d'instances gérés comme backends.
  4. Dans le projet de service 1, créez les composants d'interface et le mappage d'URL de l'équilibreur de charge.

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

  1. À partir du réseau VPC partagé, la VM cliente envoie une requête HTTP à l'équilibreur de charge d'application interne dans le projet de service 1.

  2. L'équilibreur de charge utilise les informations du mappage d'URL et des services de backend pour acheminer la requête vers les backend de son groupe d'instances géré.

Configurer le réseau et les sous-réseaux dans le projet hôte de VPC partagé

Vous avez besoin d'un réseau VPC partagé avec deux sous-réseaux : un pour l'interface et les backends de l'équilibreur de charge, un pour les proxys de l'équilibreur de charge.

Cet exemple utilise le réseau, la région et les sous-réseaux suivants :

  • Réseau Le réseau est nommé lb-network.

  • Sous-réseau pour l'interface et les backends de l'équilibreur de charge. Un sous-réseau nommé lb-frontend-and-backend-subnet dans la région us-west1 utilise 10.1.2.0/24 pour sa plage d'adresses IP principale.

  • Sous-réseau pour les proxys : un sous-réseau nommé proxy-only-subnet dans la région us-west1 utilise 10.129.0.0/23 pour sa plage d'adresses IP principale.

Dans ce tutoriel, désignez le projet de service 1 comme projet hôte de VPC partagé. Toutes les étapes de cette section doivent être effectuées dans le projet de service 1.

Configurer le sous-réseau pour l'interface et les backends de l'équilibreur de charge

Il n'est pas nécessaire de suivre les étapes de cette section chaque fois que vous souhaitez créer un équilibreur de charge. Vous devez simplement vous assurer que les projets de service ont accès à un sous-réseau du réseau VPC partagé (en plus du sous-réseau proxy réservé).

Console

  1. Dans la console Google Cloud , accédez à la page Réseaux VPC.

    Accéder aux réseaux VPC

  2. Cliquez sur Créer un réseau VPC.
  3. Dans le champ Nom, saisissez lb-network.
  4. Définissez Mode de création du sous-réseau sur Personnalisé.
  5. Dans la section Nouveau sous-réseau, saisissez les informations suivantes :

    • Nom : lb-frontend-and-backend-subnet

    • Région : us-west1

    • Plage d'adresses IP : 10.1.2.0/24

  6. Cliquez sur OK.

  7. Cliquez sur Créer.

gcloud

  1. Définissez le projet sur "Service Project 1" :

      gcloud config set project SERVICE_PROJECT_1_ID

  2. Créez un réseau VPC à l'aide de la commande gcloud compute networks create :

    gcloud compute networks create lb-network --subnet-mode=custom
    
  3. Créez un sous-réseau sur le réseau lb-network, dans la région us-west1 :

    gcloud compute networks subnets create lb-frontend-and-backend-subnet \
        --network=lb-network \
        --range=10.1.2.0/24 \
        --region=us-west1
    

Configurer le sous-réseau proxy réservé

Le sous-réseau proxy réservé est utilisé par tous les équilibreurs de charge régionaux basés sur Envoy dans la région us-west1 du réseau VPC lb-network. Il ne peut y avoir qu'un seul sous-réseau proxy réservé actif par région et par réseau.

N'effectuez pas cette étape s'il existe déjà un sous-réseau proxy réservé dans la région us-west1 de ce réseau.

Console

  1. Dans la console Google Cloud , accédez à la page Réseaux VPC.

    Accéder aux réseaux VPC

  2. Cliquez sur le nom du réseau VPC partagé : lb-network.
  3. Cliquez sur l'onglet Sous-réseaux, puis sur Ajouter un sous-réseau.
  4. Dans le volet Ajouter un sous-réseau, dans le champ Nom, saisissez proxy-only-subnet.
  5. Dans la liste Région, sélectionnez us-west1.
  6. Définissez le champ Objectif sur Proxy géré régional.
  7. Dans le champ Plage d'adresses IP, saisissez 10.129.0.0/23.
  8. Cliquez sur Ajouter.

gcloud

Créez le sous-réseau proxy réservé à l'aide de la commande gcloud compute networks subnets create.

gcloud compute networks subnets create proxy-only-subnet \
    --purpose=REGIONAL_MANAGED_PROXY \
    --role=ACTIVE \
    --region=us-west1 \
    --network=lb-network \
    --range=10.129.0.0/23

Autoriser les administrateurs de projet de service à accéder au sous-réseau backend

Les administrateurs de projet de service ont besoin d'accéder au sous-réseau lb-frontend-and-backend-subnet pour pouvoir provisionner les backends de l'équilibreur de charge.

Un administrateur du VPC partagé doit accorder l'accès au sous-réseau backend aux administrateurs du projet de service (ou aux développeurs qui déploieront des ressources et des backends qui exploitent le sous-réseau). Pour obtenir des instructions, consultez la section Administrateurs de projet de service pour certains sous-réseaux.

Configurer des règles de pare-feu dans le projet de service 1

Cet exemple utilise les règles de pare-feu suivantes :

  • fw-allow-health-check : règle d'entrée, applicable aux instances faisant l'objet d'un équilibrage de charge, qui autorise tout le trafic TCP issu des systèmes de vérification d'état Google Clouddans 130.211.0.0/22 et 35.191.0.0/16. Cet exemple utilise le tag cible load-balanced-backend pour identifier les instances auxquelles il doit s'appliquer.

  • fw-allow-proxies : règle d'entrée applicable aux instances faisant l'objet d'un équilibrage de charge, qui autorise le trafic TCP sur les ports 80, 443 et 8080 à partir des proxys gérés de l'équilibreur de charge. Cet exemple utilise le tag cible load-balanced-backend pour identifier les instances auxquelles la règle doit s'appliquer.

  • fw-allow-ssh : règle d'entrée, applicable aux instances faisant l'objet d'un équilibrage de charge, qui autorise la connectivité SSH entrante sur le port TCP 22 à partir de n'importe quelle adresse. Vous pouvez choisir une plage d'adresses IP sources plus restrictive pour cette règle. Par exemple, vous pouvez spécifier uniquement les plages d'adresses IP du système à partir duquel vous souhaitez lancer des sessions SSH. Cet exemple utilise le tag cible allow-ssh pour identifier les machines virtuelles (VM) auxquelles la règle de pare-feu s'applique.

Sans ces règles de pare-feu, la règle d'entrée interdite par défaut bloque le trafic entrant vers les instances backend.

Console

  1. Dans la console Google Cloud , accédez à la page Règles du pare-feu.

    Accéder à la page "Stratégies de pare-feu"

  2. Cliquez sur Créer une règle de pare-feu pour créer la règle autorisant les vérifications d'état Google Cloud :
    • Nom : fw-allow-health-check
    • Réseau : lb-network
    • Sens du trafic : entrée
    • Action en cas de correspondance : autoriser
    • Cibles : tags cibles spécifiés
    • Tags cibles : load-balanced-backend
    • Filtre source : plages IPv4
    • Plages IPv4 sources : 130.211.0.0/22 et 35.191.0.0/16
    • Protocols and ports (Protocoles et ports) :
      • Choisissez Protocoles et ports spécifiés.
      • Cochez la case TCP, puis saisissez 80 pour le numéro de port.
      • Nous vous recommandons de limiter cette règle aux seuls protocoles et ports qui correspondent à ceux utilisés par votre vérification de l'état#39;état. Si vous utilisez tcp:80 pour le protocole et le port, Google Cloud peut contacter vos VM via HTTP sur le port 80, mais pas via HTTPS sur le port 443.

  3. Cliquez sur Créer.
  4. Cliquez sur Créer une règle de pare-feu pour créer la règle autorisant les vérifications d'état Google Cloud :
    • Nom : fw-allow-proxies
    • Réseau : lb-network
    • Sens du trafic : entrée
    • Action en cas de correspondance : autoriser
    • Cibles : tags cibles spécifiés
    • Tags cibles : load-balanced-backend
    • Filtre source : plages IPv4
    • Plages IPv4 sources : 10.129.0.0/23
    • Protocols and ports (Protocoles et ports) :
      • Choisissez Protocoles et ports spécifiés.
      • Cochez la case TCP, puis saisissez 80, 443, 8080 pour les numéros de port.
  5. Cliquez sur Créer.
  6. Cliquez sur Créer une règle de pare-feu pour créer la règle autorisant les vérifications d'état Google Cloud :
    • Nom : fw-allow-ssh
    • Réseau : lb-network
    • Sens du trafic : entrée
    • Action en cas de correspondance : autoriser
    • Cibles : tags cibles spécifiés
    • Tags cibles : allow-ssh
    • Filtre source : plages IPv4
    • Plages IPv4 sources : 0.0.0.0/0
    • Protocols and ports (Protocoles et ports) :
      • Choisissez Protocoles et ports spécifiés.
      • Cochez la case TCP, puis saisissez 22 pour le numéro de port.
  7. Cliquez sur Créer.

gcloud

  1. Créez la règle de pare-feu fw-allow-health-check pour autoriser les vérifications d'état des servicesGoogle Cloud . Cet exemple autorise tout le trafic TCP provenant des vérificateurs d'état. Toutefois, vous pouvez configurer un ensemble de ports plus restreint en fonction de vos besoins.

    gcloud compute firewall-rules create fw-allow-health-check \
       --network=lb-network \
       --action=allow \
       --direction=ingress \
       --source-ranges=130.211.0.0/22,35.191.0.0/16 \
       --target-tags=load-balanced-backend \
       --rules=tcp
    
  2. Créez la règle de pare-feu fw-allow-proxies pour autoriser le trafic provenant du sous-réseau proxy réservé Envoy à accéder à vos backends:

    gcloud compute firewall-rules create fw-allow-proxies \
       --network=lb-network \
       --action=allow \
       --direction=ingress \
       --source-ranges=10.129.0.0/23 \
       --target-tags=load-balanced-backend \
       --rules=tcp:80,tcp:443,tcp:8080
    
  3. Créez la règle de pare-feu fw-allow-ssh pour autoriser la connectivité SSH aux VM avec le tag réseau allow-ssh:

    gcloud compute firewall-rules create fw-allow-ssh \
       --network=lb-network \
       --action=allow \
       --direction=ingress \
       --target-tags=allow-ssh \
       --rules=tcp:22
    

Réserver une adresse IPv4 interne statique

Les administrateurs de projet de service peuvent réserver une adresse IPv4 ou IPv6 interne au sein d'un sous-réseau d'un réseau VPC partagé. L'objet de configuration de l'adresse IP est créé dans le projet de service, alors que sa valeur provient de la plage d'adresses IPv4 disponibles dans le sous-réseau partagé choisi.

Pour réserver une adresse IP interne autonome dans le projet de service, procédez comme suit :

Console

  1. Configurer un VPC partagé
  2. Dans la console Google Cloud , accédez à la page VPC partagé.

    Accéder à la page "VPC partagé"

  3. Connectez-vous en tant qu'administrateur de VPC partagé.

  4. Sélectionnez le projet de service dans l'outil de sélection de projets.

  5. Accédez à Réseau VPC > Adresses IP.

  6. Sur la page Adresses IP, cliquez sur Réserver une adresse IP statique interne.

  7. Dans le champ Nom, saisissez l7-ilb-ip-address comme nom de l'adresse IP.

  8. Dans la liste Version IP, sélectionnez IPv4.

  9. Dans Réseau, sélectionnez lb-network.

  10. Dans les listes Sous-réseau, sélectionnez lb-frontend-and-backend-subnet.

  11. Cliquez sur Réserver.

gcloud

  1. Si ce n'est pas déjà fait, authentifiez-vous auprès de la Google Cloud CLI en tant qu'administrateur de projet de service VPC partagé.

    gcloud auth login SERVICE_PROJECT_ADMIN
    

    Remplacez SERVICE_PROJECT_ADMIN par le nom de l'administrateur du projet de service de VPC partagé. Ces valeurs doivent être au format nom d'utilisateur@votredomaine, par exemple 222larabrown@gmail.com.

  2. Utilisez la commande compute addresses create pour réserver une adresse IP:

    
    gcloud compute addresses create l7-ilb-ip-address \
        --project SERVICE_PROJECT_1_ID \
        --subnet=lb-frontend-and-backend-subnet \
        --region=us-west1 \
        --ip-version=IPV4
    

Des détails supplémentaires sur la création d'adresses IP sont disponibles dans la documentation du SDK.

Configurer un VPC partagé dans le projet de service 1

Pour configurer le VPC partagé dans le projet de service 1, vous devez désigner le projet de service 1 comme projet hôte de VPC partagé et les projets de service 2 et 3 comme projets de service de VPC partagé. Plus loin dans ce tutoriel, lorsque vous créerez les backends MIG dans les projets de service 2 et 3, vous pourrez utiliser le même réseau VPC et les mêmes sous-réseaux que ceux créés précédemment dans le projet de service 1.

  1. Activer un projet hôte
  2. Associer un projet de service
  3. Attribuez le rôle d'utilisateur de réseau Compute (roles/compute.networkUser) aux projets de service 2 et 3:

    Console

    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 Nouvelles entités principales, saisissez SERVICE_PROJECT_2_NUMBER@cloudservices.gserviceaccount.com.

      Notez que vous pouvez obtenir les numéros des projets de service dans le tableau de bord du projet:

      Accéder à Google Dashboard

    4. Cliquez sur Sélectionner un rôle, puis saisissez Compute Network User dans le champ Filtre.

    5. Sélectionnez le rôle Utilisateur de réseau de Compute, puis cliquez sur Enregistrer.

    6. Répétez les étapes précédentes pour accorder le rôle Compute Network User au projet de service 3 (SERVICE_PROJECT_3_NUMBER@cloudservices.gserviceaccount.com).

    gcloud

    1. Dans le projet de service 1, attribuez le rôle d'utilisateur de réseau Compute au projet de service 2.

      gcloud projects add-iam-policy-binding SERVICE_PROJECT_1_ID \
       --member='serviceAccount:SERVICE_PROJECT_2_NUMBER@cloudservices.gserviceaccount.com' \
       --role='roles/compute.networkUser'
      

      Remplacez SERVICE_PROJECT_2_NUMBER par le numéro de projet du projet de service 2.

    2. Dans le projet de service 1, attribuez le rôle d'utilisateur de réseau Compute au projet de service 3.

      gcloud projects add-iam-policy-binding SERVICE_PROJECT_1_ID \
       --member='serviceAccount::SERVICE_PROJECT_3_NUMBER@cloudservices.gserviceaccount.com' \
       --role='roles/compute.networkUser'
      

      Remplacez SERVICE_PROJECT_3_NUMBER par le numéro de projet du projet de service 3.

Créer un service de backend et des MIG dans le projet de service 2

Toutes les étapes de cette section doivent être effectuées dans le projet de service 2.

Console

  1. Créez un modèle d'instance. Dans la console Google Cloud , accédez à la page Modèles d'instances.

    Accéder à la page Modèles d'instances

    1. Cliquez sur Créer un modèle d'instance.
    2. Dans le champ Nom, saisissez le nom du modèle d'instance : tutorial-ig-template-sp2.
    3. Dans la section Emplacement, sélectionnez Régional (recommandé) et us-west1(Oregon) comme région.
    4. Dans la section Configuration de la machine, sélectionnez N2 comme série.
    5. Assurez-vous que le disque de démarrage est défini sur une image Debian, telle que Debian GNU/Linux 12 (bookworm). Ces instructions utilisent des commandes uniquement disponibles dans Debian, comme apt-get. Si vous devez modifier le disque de démarrage, cliquez sur Modifier.
      1. Pour Système d'exploitation, sélectionnez Debian.
      2. Pour Version, sélectionnez l'une des images Debian disponibles, telles que Debian GNU/Linux 12 (bookworm).
      3. Cliquez sur Sélectionner.
    6. Cliquez sur Options avancées, puis sur Mise en réseau.
    7. Saisissez les tags réseau suivants : allow-ssh,load-balanced-backend.
    8. Dans la section Interfaces réseau, sélectionnez Réseaux partagés avec moi (depuis le projet hôte : SERVICE_PROJECT_1_ID).
    9. Sélectionnez le sous-réseau lb-frontend-and-backend-subnet dans le réseau lb-network.
    10. Cliquez sur Gestion. Pour Gestion, insérez le script suivant dans le champ Script de démarrage.
      #! /bin/bash
      apt-get update
      apt-get install apache2 -y
      a2ensite default-ssl
      a2enmod ssl
      vm_hostname="$(curl -H "Metadata-Flavor:Google" http://metadata.google.internal/computeMetadata/v1/instance/name)"
      echo "Page served from: $vm_hostname" | tee /var/www/html/index.html
      systemctl restart apache2
      
    11. Cliquez sur Créer.
  2. Créez un groupe d'instances géré. Dans la console Google Cloud , accédez à la page Groupes d'instances.

    Accéder à la page "Groupes d'instances"

    1. Cliquez sur Créer un groupe d'instances.
    2. Choisissez Nouveau groupe d'instances géré (sans état). Pour plus d'informations, consultez la page Groupes d'instances gérés (MIG) sans état ou avec état.
    3. Pour le champ Nom, saisissez le nom du groupe d'instances : tutorial-sp2-mig-a.
    4. Pour Modèle d'instance, sélectionnez tutorial-ig-template-sp2.
    5. Pour Emplacement, sélectionnez Zone unique.
    6. Pour Région, sélectionnez us-west1.
    7. Spécifiez le nombre d'instances que vous souhaitez créer au sein du groupe.

      Pour cet exemple, spécifiez les options suivantes sous Autoscaling :

      • Dans le champ Mode autoscaling, sélectionnez Off:do not autoscale.
      • Dans le champ Nombre maximal d'instances, saisissez 2.
    8. Cliquez sur Créer.

  3. Créez un service de backend régional. Dans le cadre de cette étape, nous allons également créer la vérification de l'état et ajouter des backends au service de backend. Dans la console Google Cloud , accédez à la page Backends.

    Accéder à la page Backends

    1. Cliquez sur Créer un service de backend.
    2. Dans la boîte de dialogue Créer un service de backend, cliquez sur Créer à côté de Service de backend régional.
    3. Dans le champ Nom, saisissez le nom du service de backend : tutorial-backend-service-sp2.
    4. Pour le paramètre Région, sélectionnez us-west1.
    5. Pour Type d'équilibreur de charge, sélectionnez Équilibreur de charge d'application interne régional (INTERNAL_MANAGED).
    6. Définissez Type de backend sur Groupe d'instances.
    7. Dans la section Backends, définissez les champs suivants :
      1. Définissez Groupe d'instances sur tutorial-sp2-mig-a.
      2. Saisissez les numéros de port : 80.
      3. Définissez le Mode d'équilibrage sur Utilisation.
      4. Cliquez sur OK.
    8. Dans la section Vérification d'état, cliquez sur Créer une vérification d'état et définissez les champs suivants :
      1. Nom : tutorial-regional-health-check
      2. Protocole : HTTP
      3. Port : 80
      4. Cliquez sur Enregistrer.
    9. Cliquez sur Continuer.
    10. Cliquez sur Créer.
  4. Répétez les étapes précédentes et créez un groupe d'instances géré, tutorial-sp2-mig-b, et ajoutez-le au service de backend, tutorial-backend-service-sp2.

gcloud

  1. Sélectionnez le projet de service que vous avez créé:
    gcloud config set project SERVICE_PROJECT_2_ID
  2. Créez un modèle d'instance de VM, tutorial-ig-template-sp2, avec un serveur HTTP:

    gcloud compute instance-templates create tutorial-ig-template-sp2 \
        --region=us-west1 \
        --network=projects/SERVICE_PROJECT_1_ID/global/networks/lb-network \
        --subnet=projects/SERVICE_PROJECT_1_ID/regions/us-west1/subnetworks/lb-frontend-and-backend-subnet \
        --tags=allow-ssh,load-balanced-backend \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --metadata=startup-script='#! /bin/bash
        apt-get update
        apt-get install apache2 -y
        a2ensite default-ssl
        a2enmod ssl
        vm_hostname="$(curl -H "Metadata-Flavor:Google" \
        http://metadata.google.internal/computeMetadata/v1/instance/name)"
        echo "Page served from: $vm_hostname" | \
        tee /var/www/html/index.html
        systemctl restart apache2' \
        --project=SERVICE_PROJECT_2_ID
    

    Remplacez les éléments suivants :

    • SERVICE_PROJECT_1_ID : ID du projet hôte de VPC partagé.
    • SERVICE_PROJECT_2_ID : ID du projet de service, dans lequel les backends de l'équilibreur de charge et le service de backend sont créés.
  3. Créez un groupe d'instances géré, tutorial-sp2-mig-a, dans la région:

    gcloud compute instance-groups managed create tutorial-sp2-mig-a \
        --region=us-west1 \
        --size=2 \
        --template=tutorial-ig-template-sp2 \
        --project=SERVICE_PROJECT_2_ID
    
  4. Définissez la vérification de l'état HTTP, tutorial-regional-health-check:

    gcloud compute health-checks create http tutorial-regional-health-check \
      --region=us-west1 \
      --use-serving-port \
      --project=SERVICE_PROJECT_2_ID
    
  5. Définissez le service de backend, tutorial-backend-service-sp2:

    gcloud compute backend-services create tutorial-backend-service-sp2 \
      --load-balancing-scheme=INTERNAL_MANAGED \
      --protocol=HTTP \
      --health-checks=tutorial-regional-health-check \
      --health-checks-region=us-west1 \
      --region=us-west1 \
      --project=SERVICE_PROJECT_2_ID
    
  6. Ajoutez des backends au service de backend à l'aide de la commande gcloud compute backend-services add-backend:

    gcloud compute backend-services add-backend tutorial-backend-service-sp2 \
      --balancing-mode=UTILIZATION \
      --instance-group=tutorial-sp2-mig-a \
      --instance-group-region=us-west1 \
      --region=us-west1 \
      --project=SERVICE_PROJECT_2_ID
    
  7. Créez un autre groupe d'instances géré, tutorial-sp2-mig-b, dans la région:

    gcloud compute instance-groups managed create tutorial-sp2-mig-b \
        --region=us-west1 \
        --size=2 \
        --template=tutorial-ig-template-sp2 \
        --project=SERVICE_PROJECT_2_ID
    
  8. Ajoutez des backends au service de backend:

    gcloud compute backend-services add-backend tutorial-backend-service-sp2 \
      --balancing-mode=UTILIZATION \
      --instance-group=tutorial-sp2-mig-b \
      --instance-group-region=us-west1 \
      --region=us-west1 \
      --project=SERVICE_PROJECT_2_ID
    

Créer un service de backend et des MIG dans le projet de service 3

Toutes les étapes de cette section doivent être effectuées dans le projet de service 3.

Console

  1. Créez un modèle d'instance. Dans la console Google Cloud , accédez à la page Modèles d'instances.

    Accéder à la page Modèles d'instances

    1. Cliquez sur Créer un modèle d'instance.
    2. Dans le champ Nom, saisissez le nom du modèle d'instance : tutorial-ig-template-sp3.
    3. Dans la section Emplacement, sélectionnez Régional (recommandé) et us-west1(Oregon) comme région.
    4. Dans la section Configuration de la machine, sélectionnez N2 comme série.
    5. Assurez-vous que le disque de démarrage est défini sur une image Debian, telle que Debian GNU/Linux 12 (bookworm). Ces instructions utilisent des commandes uniquement disponibles dans Debian, comme apt-get. Si vous devez modifier le disque de démarrage, cliquez sur Modifier.
      1. Pour Système d'exploitation, sélectionnez Debian.
      2. Pour Version, sélectionnez l'une des images Debian disponibles, telles que Debian GNU/Linux 12 (bookworm).
      3. Cliquez sur Sélectionner.
    6. Cliquez sur Options avancées, puis sur Mise en réseau.
    7. Saisissez les tags réseau suivants : allow-ssh,load-balanced-backend.
    8. Dans la section Interfaces réseau, sélectionnez Réseaux partagés avec moi (depuis le projet hôte : SERVICE_PROJECT_1_ID).
    9. Sélectionnez le sous-réseau lb-frontend-and-backend-subnet dans le réseau lb-network.
    10. Cliquez sur Gestion. Pour Gestion, insérez le script suivant dans le champ Script de démarrage.
      #! /bin/bash
      apt-get update
      apt-get install apache2 -y
      a2ensite default-ssl
      a2enmod ssl
      vm_hostname="$(curl -H "Metadata-Flavor:Google" http://metadata.google.internal/computeMetadata/v1/instance/name)"
      echo "Page served from: $vm_hostname" | tee /var/www/html/index.html
      systemctl restart apache2
      
    11. Cliquez sur Créer.
  2. Créez un groupe d'instances géré. Dans la console Google Cloud , accédez à la page Groupes d'instances.

    Accéder à la page "Groupes d'instances"

    1. Cliquez sur Créer un groupe d'instances.
    2. Choisissez Nouveau groupe d'instances géré (sans état). Pour plus d'informations, consultez la page Groupes d'instances gérés (MIG) sans état ou avec état.
    3. Pour le champ Nom, saisissez le nom du groupe d'instances : tutorial-sp3-mig-a.
    4. Pour Modèle d'instance, sélectionnez tutorial-ig-template-sp3.
    5. Pour Emplacement, sélectionnez Zone unique.
    6. Pour Région, sélectionnez us-west1.
    7. Spécifiez le nombre d'instances que vous souhaitez créer au sein du groupe.

      Pour cet exemple, spécifiez les options suivantes sous Autoscaling :

      • Dans le champ Mode autoscaling, sélectionnez Off:do not autoscale.
      • Dans le champ Nombre maximal d'instances, saisissez 2.
    8. Cliquez sur Créer.

  3. Créez un service de backend régional. Dans le cadre de cette étape, nous allons également créer la vérification de l'état et ajouter des backends au service de backend. Dans la console Google Cloud , accédez à la page Backends.

    Accéder à la page Backends

    1. Cliquez sur Créer un service de backend.
    2. Dans la boîte de dialogue Créer un service de backend, cliquez sur Créer à côté de Service de backend régional.
    3. Dans le champ Nom, saisissez le nom du service de backend : tutorial-backend-service-sp3.
    4. Pour le paramètre Région, sélectionnez us-west1.
    5. Pour Type d'équilibreur de charge, sélectionnez Équilibreur de charge d'application interne régional (INTERNAL_MANAGED).
    6. Définissez Type de backend sur Groupe d'instances.
    7. Dans la section Backends, définissez les champs suivants :
      1. Définissez Groupe d'instances sur tutorial-sp3-mig-a.
      2. Saisissez les numéros de port : 80.
      3. Définissez le Mode d'équilibrage sur Utilisation.
      4. Cliquez sur OK.
    8. Dans la section Vérification d'état, cliquez sur Créer une vérification d'état et définissez les champs suivants :
      1. Nom : tutorial-regional-health-check
      2. Protocole : HTTP
      3. Port : 80
      4. Cliquez sur Enregistrer.
    9. Cliquez sur Continuer.
    10. Cliquez sur Créer.
  4. Répétez les étapes précédentes et créez un groupe d'instances géré, tutorial-sp3-mig-b, et ajoutez-le au service de backend, tutorial-backend-service-sp3.

gcloud

  1. Sélectionnez le projet de service que vous avez créé:
    gcloud config set project SERVICE_PROJECT_3_ID
  2. Créez un modèle d'instance de VM, tutorial-ig-template-sp3, avec un serveur HTTP:

    gcloud compute instance-templates create tutorial-ig-template-sp3 \
        --region=us-west1 \
        --network=projects/SERVICE_PROJECT_1_ID/global/networks/lb-network \
        --subnet=projects/SERVICE_PROJECT_1_ID/regions/us-west1/subnetworks/lb-frontend-and-backend-subnet \
        --tags=allow-ssh,load-balanced-backend \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --metadata=startup-script='#! /bin/bash
        apt-get update
        apt-get install apache2 -y
        a2ensite default-ssl
        a2enmod ssl
        vm_hostname="$(curl -H "Metadata-Flavor:Google" \
        http://metadata.google.internal/computeMetadata/v1/instance/name)"
        echo "Page served from: $vm_hostname" | \
        tee /var/www/html/index.html
        systemctl restart apache2' \
        --project=SERVICE_PROJECT_3_ID
    

    Remplacez les éléments suivants :

    • SERVICE_PROJECT_1_ID : ID du projet hôte de VPC partagé.
    • SERVICE_PROJECT_3_ID : ID du projet de service, dans lequel les backends de l'équilibreur de charge et le service de backend sont créés.
  3. Créez un groupe d'instances géré, tutorial-sp3-mig-a, dans la région:

    gcloud compute instance-groups managed create tutorial-sp3-mig-a \
        --region=us-west1 \
        --size=2 \
        --template=tutorial-ig-template-sp3 \
        --project=SERVICE_PROJECT_3_ID
    
  4. Définissez la vérification de l'état HTTP, tutorial-regional-health-check:

    gcloud compute health-checks create http tutorial-regional-health-check \
      --region=us-west1 \
      --use-serving-port \
      --project=SERVICE_PROJECT_3_ID
    
  5. Définissez le service de backend, tutorial-backend-service-sp3:

    gcloud compute backend-services create tutorial-backend-service-sp3 \
      --load-balancing-scheme=INTERNAL_MANAGED \
      --protocol=HTTP \
      --health-checks=tutorial-regional-health-check \
      --health-checks-region=us-west1 \
      --region=us-west1 \
      --project=SERVICE_PROJECT_3_ID
    
  6. Ajoutez des backends au service de backend à l'aide de la commande gcloud compute backend-services add-backend:

    gcloud compute backend-services add-backend tutorial-backend-service-sp3 \
      --balancing-mode=UTILIZATION \
      --instance-group=tutorial-sp3-mig-a \
      --instance-group-region=us-west1 \
      --region=us-west1 \
      --project=SERVICE_PROJECT_3_ID
    
  7. Créez un autre groupe d'instances géré, tutorial-sp3-mig-b, dans la région:

    gcloud compute instance-groups managed create tutorial-sp3-mig-b \
        --region=us-west1 \
        --size=2 \
        --template=tutorial-ig-template-sp3 \
        --project=SERVICE_PROJECT_3_ID
    
  8. Ajoutez des backends au service de backend:

    gcloud compute backend-services add-backend tutorial-backend-service-sp3 \
      --balancing-mode=UTILIZATION \
      --instance-group=tutorial-sp3-mig-b \
      --instance-group-region=us-west1 \
      --region=us-west1 \
      --project=SERVICE_PROJECT_3_ID
    

Créer le mappage d'URL et la règle de transfert dans le projet de service 1

Toutes les étapes de cette section doivent être effectuées dans le projet de service 1.

Console

Démarrer la configuration

  1. Dans la console Google Cloud , accédez à la page Équilibreur de charge.

    Accéder à la page "Équilibrage de charge"

  2. Cliquez sur Créer un équilibreur de charge.
  3. Dans le champ Type d'équilibreur de charge, sélectionnez Équilibreur de charge d'application (HTTP/HTTPS), puis cliquez sur Suivant.
  4. Pour Public ou interne, sélectionnez Interne, puis cliquez sur Suivant.
  5. Pour Déploiement interrégional ou dans une seule région, sélectionnez Recommandé pour les charges de travail régionales, puis cliquez sur Suivant.
  6. Cliquez sur Configurer.

Configuration de base

  1. Dans le champ Name (Nom), saisissez le nom de l'équilibreur de charge : tutorial-url-maps.
  2. Dans la liste Région, sélectionnez us-west1.
  3. Dans la liste Réseau, sélectionnez lb-network (dans Projet: SERVICE_PROJECT_1_ID).

    Si le message d'avertissement Sous-réseau proxy réservé obligatoire dans le réseau VPC partagé s'affiche, confirmez que l'administrateur du projet hôte a créé l'proxy-only-subnet dans la région us-west1 du réseau VPC partagé lb-network. La création de l'équilibreur de charge réussit même si vous ne disposez pas des autorisations nécessaires pour afficher le sous-réseau proxy réservé sur cette page.

  4. Laissez la fenêtre ouverte pour continuer.

Configurer le backend

  1. Cliquez sur Configuration du backend.
  2. Cliquez sur Services de backend multiprojets.
  3. Dans le champ Project ID (ID du projet), saisissez l'ID du projet du projet de service 2.
  4. Dans le champ Nom du service de backend, saisissez le nom du service de backend du projet de service 2 que vous souhaitez utiliser. Dans cet exemple, il s'agit de tutorial-backend-service-sp2.
  5. Cliquez sur Ajouter le service de backend.
  6. Dans le champ Project ID (ID du projet), saisissez l'ID du projet du projet de service 3.
  7. Dans le champ Nom du service de backend, saisissez le nom du service de backend du projet de service 3 que vous souhaitez utiliser. Dans cet exemple, il s'agit de tutorial-backend-service-sp3.
  8. Cliquez sur Ajouter le service de backend.

Configurer les règles de routage

  1. Cliquez sur Règles de routage.
  2. Dans la section Règles d'hôte et de chemin d'accès, dans le champ Hôte 2, saisissez *.
  3. Dans le champ Chemins d'accès 2, saisissez /*.
  4. Dans la liste déroulante Backend 2, sélectionnez tutorial-backend-service-sp2.
  5. Cliquez sur Ajouter une règle d'hôte et de chemin d'accès.
  6. Dans le champ Hôte 3, saisissez tutorial-host.
  7. Dans le champ Chemins d'accès 3, saisissez /*.
  8. Dans la liste déroulante Backend 3, sélectionnez tutorial-backend-service-sp3.

  9. Cherchez la coche bleue à gauche des règles d'hôte et de chemin d'accès, puis cliquez sur le bouton Mettre à jour.

    Pour en savoir plus sur la gestion du trafic, consultez la page Configurer la gestion du trafic.

Configurer l'interface

Pour que la référence multiprojet fonctionne, l'interface doit utiliser le même réseau (lb-network) que celui utilisé pour créer le service de backend.

  1. Cliquez sur Configuration de l'interface.
  2. Saisissez un nom pour la règle de transfert : l7-ilb-forwarding-rule.
  3. Définissez le paramètre Protocole sur HTTP.
  4. Définissez le paramètre Sous-réseau sur lb-frontend-and-backend-subnet. Ne sélectionnez pas le sous-réseau proxy réservé pour l'interface, même s'il s'agit d'une option de la liste déroulante.
  5. Définissez le paramètre Port sur 80.
  6. Dans le champ Adresse IP, conservez l'option par défaut, Éphémère (automatique).
  7. Cliquez sur OK.

Vérifier et finaliser la configuration

  • Cliquez sur Créer.

gcloud

  1. Sélectionnez le projet de service que vous avez créé:

    gcloud config set project SERVICE_PROJECT_1_ID

  2. Créez le mappage d'URL, tutorial-url-maps, et définissez le service par défaut sur le service de backend créé dans le projet de service 1:

    gcloud compute url-maps create tutorial-url-maps \
        --default-service=projects/SERVICE_PROJECT_2_ID/regions/us-west1/backendServices/tutorial-backend-service-sp2 \
        --region=us-west1 \
        --project=SERVICE_PROJECT_1_ID
    

    Remplacez les éléments suivants :

    • SERVICE_PROJECT_2_ID: ID du projet de service 2, dans lequel les backends de l'équilibreur de charge et le service de backend sont créés.
    • SERVICE_PROJECT_1_ID: ID du projet de service 1, dans lequel l'interface de l'équilibreur de charge est créée.
  3. Créez le proxy cible, tutorial-http-proxy:

    gcloud compute target-http-proxies create tutorial-http-proxy \
      --url-map=tutorial-url-maps \
      --url-map-region=us-west1 \
      --region=us-west1 \
      --project=SERVICE_PROJECT_1_ID
    
  4. Créez la règle de transfert, l7-ilb-forwarding-rule, pour gérer le trafic HTTP. Pour que la référence de service multiprojet fonctionne, la règle de transfert doit utiliser le même réseau (lb-network) que celui du projet hôte de VPC partagé utilisé pour créer le service de backend.

    gcloud compute forwarding-rules create l7-ilb-forwarding-rule \
      --load-balancing-scheme=INTERNAL_MANAGED \
      --network=projects/SERVICE_PROJECT_1_ID/global/networks/lb-network \
      --subnet=projects/SERVICE_PROJECT_1_ID/regions/us-west1/subnetworks/lb-frontend-and-backend-subnet \
      --address=l7-ilb-ip-address \
      --ports=80 \
      --region=us-west1 \
      --target-http-proxy=tutorial-http-proxy \
      --target-http-proxy-region=us-west1 \
      --project=SERVICE_PROJECT_1_ID
    
  5. Pour envoyer du trafic au service de backend, associez le mappage d'URL au service de backend. Pour en savoir plus, consultez la page Utiliser des mappages d'URL.

    1. Associez le service de backend tutorial-backend-service-sp2 dans le projet de service 2 au mappage d'URL tutorial-url-maps et au nom de l'outil de mise en correspondance des chemins d'accès tutorial-path-matcher-sp2:

      gcloud compute url-maps add-path-matcher tutorial-url-maps \
         --path-matcher-name=tutorial-path-matcher-sp2 \
         --default-service=projects/SERVICE_PROJECT_2_ID/regions/us-west1/backendServices/tutorial-backend-service-sp2 \
         --region=us-west1
      
    2. Associez le service de backend, tutorial-backend-service-sp3 dans le projet de service 3, au mappage d'URL, tutorial-url-maps, et au nom du moteur de mise en correspondance de chemins d'accès, tutorial-path-matcher-sp3. Ajoutez une règle d'hôte, tutorial-host, avec les hôtes donnés afin que l'outil de mise en correspondance des chemins d'accès soit associé à la nouvelle règle d'hôte.

      gcloud compute url-maps add-path-matcher tutorial-url-maps \
        --path-matcher-name=tutorial-path-matcher-sp3 \
        --default-service=projects/SERVICE_PROJECT_3_ID/regions/us-west1/backendServices/tutorial-backend-service-sp3 \
        --region=us-west1 \
        --new-hosts=tutorial-host
      

Tester l'équilibreur de charge

Pour tester l'équilibreur de charge, commencez par créer un exemple de VM cliente. Établissez ensuite une session SSH avec la VM et envoyez le trafic de cette VM à l'équilibreur de charge.

Créer une instance de VM de test

Les clients peuvent se situer dans le projet hôte du VPC partagé ou dans n'importe quel projet de service connecté. Dans cet exemple, vous testez le fonctionnement de l'équilibreur de charge en déployant une VM cliente dans le projet de service 1, qui est désigné comme projet hôte du VPC partagé. Le client doit utiliser le même réseau VPC partagé et se trouver dans la même région que l'équilibreur de charge.

Toutes les étapes de cette section doivent être effectuées dans le projet de service 2.

Console

  1. Dans la console Google Cloud , accédez à la page Instances de VM.

    Accéder à la page Instances de VM

  2. Cliquez sur Créer une instance.

  3. Dans le champ Nom, saisissez client-vm.

  4. Définissez Zone sur us-west1-b.

  5. Cliquez sur Options avancées, puis sur Mise en réseau.

  6. Saisissez les tags réseau suivants: allow-ssh,load-balanced-backend.

  7. Dans la section Interfaces réseau, sélectionnez Réseaux partagés avec moi (depuis le projet hôte: SERVICE_PROJECT_1_ID).

  8. Sélectionnez le sous-réseau lb-frontend-and-backend-subnet dans le réseau lb-network.

  9. Cliquez sur Créer.

gcloud

Créez une instance de VM de test.

gcloud compute instances create client-vm \
    --image-family=debian-12 \
    --image-project=debian-cloud \
    --subnet=projects/SERVICE_PROJECT_1_ID/regions/us-west1/subnetworks/lb-frontend-and-backend-subnet \
    --zone=us-west1-b \
    --tags=allow-ssh \
    --project=SERVICE_PROJECT_2_ID

Envoyer du trafic vers l'équilibreur de charge

Utilisez SSH pour vous connecter à l'instance que vous venez de créer et pour vérifier que les services HTTP(S) sur les backends sont accessibles via l'adresse IP de la règle de transfert de l'équilibreur de charge d'application interne et que le trafic fait l'objet d'un équilibrage de charge sur les instances backend.

  1. Récupérez la valeur de l'adresse IP de l'équilibreur de charge:

    gcloud compute addresses list --filter="name=( 'l7-ilb-ip-address')"
    

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

    NAME: l7-ilb-ip-address
    ADDRESS/RANGE: 10.1.2.2
    TYPE: INTERNAL
    PURPOSE: GCE_ENDPOINT
    NETWORK:
    REGION: us-west1
    SUBNET: lb-frontend-and-backend-subnet
    STATUS: IN_USE
    

    Copiez le ADDRESS/RANGE du service, par exemple 10.1.2.2, à partir de la sortie pour l'utiliser dans les étapes suivantes.

  2. Connectez-vous à l'instance cliente avec SSH:

    gcloud compute ssh client-vm \
       --zone=us-west1-b \
       --project=SERVICE_PROJECT_2_ID
    
  3. Vérifiez que l'adresse IP de l'équilibreur de charge diffuse son nom d'hôte:

    1. Vérifiez que l'adresse IP diffuse son nom d'hôte dans le projet de service 2:

      curl 10.1.2.2
      

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

      Page served from: tutorial-sp2-mig-a-10xk
      

    2. Vérifiez que l'adresse IP diffuse son nom d'hôte dans le projet de service 3:

      curl -H "Host: tutorial-host" 10.1.2.2
      

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

      Page served from: tutorial-sp3-mig-a-3d5h
      

Accorder des autorisations IAM

Fournissez les rôles et autorisations IAM appropriés aux projets d'hôte et de service de l'App Hub.

Console

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

    Accéder au sélecteur de projet

  2. Sélectionnez le projet hôte de l'App Hub.

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

    Accéder à IAM

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

  5. 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 App Hub.

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

  7. Sélectionnez le rôle Administrateur du hub d'applications, puis cliquez sur Enregistrer.

  8. Dans chacun des projets de service App Hub, attribuez le rôle Administrateur App Hub au même utilisateur.

gcloud

  1. Pour attribuer les rôles aux personnes qui utiliseront le hub d'applications, répétez la commande suivante en remplaçant les rôles IAM, si nécessaire. Pour en savoir plus, consultez la section Rôles et autorisations dans App Hub.

    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 Administrateur App Hub dans le projet hôte App Hub. Cette valeur a le format username@yourdomain (par exemple, 222larabrown@gmail.com).

  2. Accordez le rôle Administrateur du hub d'applications dans le projet de service aux personnes qui administrent le hub d'applications. Il doit disposer du rôle Administrateur du hub d'applications pour ajouter des projets de service au projet hôte. Vous devez disposer d'au moins une personne disposant de ce rôle pour chaque 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 l'ID des projets de service.

Associer les projets de service

Les projets de service sont des projets Google Cloud qui contiennent des ressources d'infrastructure que vous pouvez enregistrer dans une application App Hub. Pour en savoir plus, consultez la section Projets de service. Associez les projets de service sur lesquels vous avez déployé les ressources au projet hôte de l'App Hub.

Console

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

    Accéder aux paramètres

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

  3. Dans le volet qui s'ouvre, recherchez des projets dans la liste affichée, puis cochez les cases correspondant aux projets que vous souhaitez ajouter en tant que projets de service.

  4. Cliquez sur Sélectionner. Le tableau Projets de service associés affiche les projets de service sélectionnés.

  5. Cliquez sur Fermer.

gcloud

  1. Associez les projets de service 1, 2 et 3 à votre projet hôte App Hub.

    gcloud apphub service-projects add SERVICE_PROJECT_1_ID \
      --project=HOST_PROJECT_ID
    
    gcloud apphub service-projects add SERVICE_PROJECT_2_ID \
      --project=HOST_PROJECT_ID
    
    gcloud apphub service-projects add SERVICE_PROJECT_3_ID \
      --project=HOST_PROJECT_ID
    
  2. Vérifiez que vous avez associé les projets de service App Hub au projet hôte App Hub:

    gcloud apphub service-projects list --project=HOST_PROJECT_ID
    

Une fois que vous avez associé le projet de service au projet hôte App Hub, vous pouvez afficher toutes les ressources Google Cloud du projet de service associé en tant que services et charges de travail App Hub découverts. Pour en savoir plus sur l'affichage de ces services et charges de travail détectés, consultez la section Afficher les applications, services et charges de travail existants.

Créer une application

Créez une application qui servira de conteneur à vos services et charges de travail. Lorsque vous créez une application, vous pouvez attribuer des propriétés immuables telles qu'un type de champ d'application ou un emplacement à partir duquel vous souhaitez enregistrer des ressources et des attributs variables tels que la criticité et l'environnement. Vous pouvez utiliser les attributs de variable pour filtrer les applications. Pour en savoir plus, consultez la section Propriétés et attributs.

Dans ce tutoriel, vous allez créer une application globale pour vous aider à gérer les ressources globales et régionales dans une seule application. Si vous souhaitez regrouper vos ressources d'une région spécifique, vous pouvez créer une application régionale et enregistrer ces ressources. Pour en savoir plus sur la création d'une application régionale, consultez la page Configurer App Hub.

Console

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

    Accéder à la page Applications

  3. Cliquez sur Créer une application.

  4. Sur la page Créer une application, dans le volet Choisir la région et le nom de l'application, sélectionnez Global.

  5. Dans le champ Nom de l'application, saisissez tutorial-application. Ce nom est un identifiant unique et est immuable une fois l'application créée.

  6. Saisissez un nom à afficher, Tutorial, puis cliquez sur Continuer. Il s'agit d'un nom convivial que vous pouvez modifier. Pour en savoir plus, consultez la section Mettre à jour une application existante.

  7. Dans le volet Ajouter des attributs, dans la liste Criticité, sélectionnez Élevée. La criticité indique dans quelle mesure une application, un service ou une charge de travail est critique pour vos opérations commerciales.

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

  9. Cliquez sur Continuer.

  10. Dans le volet Ajouter des propriétaires, ajoutez les informations suivantes pour les propriétaires du développeur, les propriétaires de l'opérateur et les propriétaires de l'établissement. Notez que vous devez saisir l'adresse e-mail du propriétaire si vous ajoutez un nom à afficher.

    1. Saisissez le nom à afficher d'un propriétaire.
    2. Saisissez l'adresse e-mail du propriétaire. Cette valeur doit avoir le format username@yourdomain, par exemple 222larabrown@gmail.com.
  11. Répétez ces étapes pour chaque développeur, opérateur et propriétaire d'entreprise.

  12. Cliquez sur Créer.

La nouvelle application est créée et apparaît sur la page Applications. Notez que seules la règle de transfert, le mappage d'URL, le service de backend et le groupe d'instances gérées (MIG) sont disponibles en tant que ressources détectées dans l'application App Hub. Pour en savoir plus, consultez les concepts et le modèle de données.

gcloud

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

    gcloud config set project HOST_PROJECT_ID
  2. Créez une application appelée tutorial-application dans la région global et attribuez-lui un nom à afficher, Tutorial. Ce nom d'application, tutorial-application, est un identifiant unique et ne peut pas être modifié une fois l'application créée. Le nom à afficher,Tutorial, est un nom convivial que vous pouvez modifier. Pour en savoir plus, consultez la page Mettre à jour une application existante.

    gcloud apphub applications create tutorial-application \
        --display-name='Tutorial' \
        --scope-type=GLOBAL \
        --project=HOST_PROJECT_ID \
        --location=global
    
  3. Répertoriez les applications de votre projet hôte App Hub:

    gcloud apphub applications list \
        --project=HOST_PROJECT_ID \
        --location=global
    

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

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

    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=global
    

    Remplacez les éléments suivants :

    • DISPLAY-NAME-DEVELOPER, DISPLAY-NAME-OPERATOR et DISPLAY-NAME-BUSINESS: noms à afficher du développeur, de l'opérateur et des propriétaires d'établissements, respectivement.
    • EMAIL-NAME-DEVELOPER, EMAIL-NAME-OPERATOR et EMAIL-NAME-BUSINESS: adresses e-mail du développeur, de l'opérateur et des propriétaires d'établissements, respectivement. Ces valeurs doivent avoir le format username@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 opérations commerciales.
    • environment-type: indique les étapes du cycle de vie du logiciel.
  5. Obtenez des informations sur l'application que vous avez créée:

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

    La commande renvoie des informations au format YAML, semblables à ce qui suit:

    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/global/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 des charges de travail

Enregistrer des services et des charges de travail les ajoute à une application qui vous permet de surveiller les ressources ajoutées.

Console

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

    Accéder à la page Applications

  2. Cliquez sur le nom de votre application, Tutoriel. L'onglet Services et charges de travail s'affiche avec une liste des services et charges de travail enregistrés dans vos projets de service App Hub.

  3. Enregistrez un service:

    1. Dans l'onglet Services et charges de travail, cliquez sur Enregistrer un service/une charge de travail.
    2. Sur la page Enregistrer un service ou une charge de travail, dans le volet Sélectionner une ressource, cliquez sur Parcourir pour sélectionner le service ou la charge de travail en tant que Ressource.
    3. Dans le volet Sélectionner une ressource, choisissez le nom du service, tutorial-backend-service-sp2, puis cliquez sur Sélectionner.
    4. Dans le volet Sélectionner une ressource, saisissez le nom de la ressource, tutorial-service-backend-sp2.
    5. Saisissez un nom à afficher, Backend service (SP2), puis cliquez sur Continuer.
    6. Dans le volet Ajouter des attributs, dans la liste Criticité, sélectionnez Élevée pour indiquer l'importance de l'application.
    7. Dans le champ Environnement, sélectionnez Production pour indiquer l'étape du cycle de vie du logiciel.
    8. Cliquez sur Continuer.
    9. Dans le volet Ajouter des propriétaires, ajoutez les informations suivantes si nécessaire pour les propriétaires du développeur, les propriétaires de l'opérateur et les propriétaires de l'établissement. Notez que vous devez saisir l'adresse e-mail du propriétaire si vous ajoutez un nom à afficher.
      1. Saisissez le nom à afficher d'un propriétaire.
      2. Saisissez l'adresse e-mail du propriétaire. Cette valeur doit avoir le format username@yourdomain, par exemple 222larabrown@gmail.com.
    10. Répétez ces étapes pour chaque développeur, opérateur et propriétaire d'entreprise.
    11. Cliquez sur 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é.

  4. Répétez les étapes précédentes pour enregistrer les autres services en tant que tutorial-service-backend-sp3, tutorial-service-forwarding-rule et tutorial-service-url-map, respectivement.
  5. Enregistrez une charge de travail en répétant les étapes précédentes pour enregistrer un service, avec les exceptions suivantes :
    1. Dans le volet Enregistrer un service ou une charge de travail, dans la section Choisir un service ou une charge de travail, sélectionnez le nom de la charge de travail, tutorial-sp2-mig-a, puis cliquez sur Continuer.
    2. Dans le volet Sélectionner une ressource, saisissez le nom de la ressource, tutorial-workload-sp2-mig-a.
    3. Saisissez un nom à afficher, Instance group - A (SP2), puis cliquez sur Continuer.
  6. Répétez les étapes précédentes pour enregistrer les autres charges de travail en tant que tutorial-workload-sp2-mig-a, tutorial-workload-sp2-mig-b, tutorial-workload-sp3-mig-a et tutorial-workload-sp3-mig-b, respectivement.

gcloud

  1. Ajoutez une personne disposant des autorisations d'éditeur de l'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 "Éditeur App Hub" dans le projet hôte App Hub. Cette valeur a le format username@yourdomain (par exemple, 222larabrown@gmail.com).

  2. Répertoriez tous les services détectés dans le projet hôte de l'App Hub. 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                             SERVICE_REFERENCE                                                                                                                      SERVICE_PROPERTIES
    BACKEND_SERVICE_SP2_ID      {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_2_NUMBER]/regions/us-west1/backendServices/tutorial-backend-service-sp2'}  {'gcpProject': 'projects/SERVICE_PROJECT_2_ID', 'location': 'us-west1'}
    BACKEND_SERVICE_SP3_ID      {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_3_NUMBER]/regions/us-west1/backendServices/tutorial-backend-service-sp3'}  {'gcpProject': 'projects/SERVICE_PROJECT_3_ID', 'location': 'us-west1'}
    FORWARDING_RULE_SERVICE_ID  {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_1_NUMBER]/regions/us-west1/forwardingRules/l7-ilb-forwarding-rule'}        {'gcpProject': 'projects/SERVICE_PROJECT_1_ID', 'location': 'us-west1'}
    URL_MAP_SERVICE_ID          {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_1_NUMBER]/regions/us-west1/urlMaps/tutorial-url-maps'}                     {'gcpProject': 'projects/SERVICE_PROJECT_1_ID', 'location': 'us-west1'}
    

    Copiez les ID du service, par exemple BACKEND_SERVICE_SP2_ID, à partir de la sortie pour les utiliser à l'étape suivante.

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

    gcloud apphub applications services create tutorial-service-backend-sp2 \
        --discovered-service='projects/HOST_PROJECT_ID/locations/us-west1/discoveredServices/BACKEND_SERVICE_SP2_ID' \
        --display-name='Backend service (SP2)' \
        --criticality-type='HIGH' \
        --environment-type='PRODUCTION' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=global
    
    gcloud apphub applications services create tutorial-service-backend-sp3 \
        --discovered-service='projects/HOST_PROJECT_ID/locations/us-west1/discoveredServices/BACKEND_SERVICE_SP3_ID' \
        --display-name='Backend service (SP3)' \
        --criticality-type='HIGH' \
        --environment-type='PRODUCTION' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=global
    
    gcloud apphub applications services create tutorial-service-forwarding-rule \
        --discovered-service='projects/HOST_PROJECT_ID/locations/us-west1/discoveredServices/FORWARDING_RULE_SERVICE_ID' \
        --display-name='Forwarding rule' \
        --criticality-type='HIGH' \
        --environment-type='PRODUCTION' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=global
    
    gcloud apphub applications services create tutorial-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=global
    

    Remplacez les éléments suivants :

    • BACKEND_SERVICE_SP2_ID: service ID du service de backend du projet de service 2 que vous souhaitez enregistrer.
    • BACKEND_SERVICE_SP3_ID: service ID du service de backend du projet de service 3 que vous souhaitez enregistrer.
    • FORWARDING_RULE_SERVICE_ID: service ID de la règle de transfert du projet de service 1 que vous souhaitez enregistrer.
    • URL_MAP_SERVICE_ID: service ID de la carte d'URL du projet de service 1 que vous souhaitez enregistrer.
  4. Répertoriez tous les services enregistrés dans l'application:

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

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

    ID                               DISPLAY_NAME      SERVICE_REFERENCE                                                                                                                       CREATE_TIME
    tutorial-service-backend-sp2     Backend service   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_2_NUMBER]/regions/us-west1/backendServices/tutorial-backend-service-sp2'}   2024-02-13T00:31:45
    tutorial-service-backend-sp3     Backend service   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_3_NUMBER]/regions/us-west1/backendServices/tutorial-backend-service-sp3'}   2024-02-13T00:31:45
    tutorial-service-forwarding-rule Forwarding rule   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_1_NUMBER]/regions/us-west1/forwardingRules/l7-ilb-forwarding-rule'}         2024-02-13T00:31:45
    tutorial-service-url-map         URL map           {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_1_NUMBER]/regions/us-west1/urlMaps/tutorial-url-maps'}                      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.

  5. Répertoriez toutes les charges de travail détectées dans le projet hôte de l'App Hub. Cette commande renvoie les charges de travail pouvant être enregistrées dans une application.

    gcloud apphub discovered-workloads list \
        --project=HOST_PROJECT_ID \
        --location=global
    

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

    ID                            WORKLOAD_REFERENCE                                                                                                          WORKLOAD_PROPERTIES
    INSTANCE_GROUP_SP3_A_ID    {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_3_NUMBER]/zones/us-west1-a/instanceGroups/tutorial-sp3-mig-a'}  {'gcpProject': 'projects/SERVICE_PROJECT_3_ID', 'location': 'us-west1'}
    INSTANCE_GROUP_SP3_B_ID    {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_3_NUMBER]/zones/us-west1-a/instanceGroups/tutorial-sp3-mig-b'}  {'gcpProject': 'projects/SERVICE_PROJECT_3_ID', 'location': 'us-west1'}
    INSTANCE_GROUP_SP2_A_ID    {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_2_NUMBER]/zones/us-west1-a/instanceGroups/tutorial-sp2-mig-a'}  {'gcpProject': 'projects/SERVICE_PROJECT_2_ID', 'location': 'us-west1'}
    INSTANCE_GROUP_SP2_B_ID    {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_2_NUMBER]/zones/us-west1-a/instanceGroups/tutorial-sp2-mig-b'}  {'gcpProject': 'projects/SERVICE_PROJECT_2_ID', 'location': 'us-west1'}
    
    Copiez l'ID de la charge de travail à partir de la sortie pour l'utiliser à l'étape suivante.

  6. Enregistrez les charges de travail de l'étape précédente dans votre application. Copiez l'ID de la charge de travail à partir du champ de sortie de l'étape précédente.

    gcloud apphub applications workloads create tutorial-workload-sp3-mig-a \
        --discovered-workload='projects/HOST_PROJECT_ID/locations/us-west1/discoveredWorkloads/INSTANCE_GROUP_SP3_A_ID' \
        --display-name='Workload instance group (SP3-A)' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=global
    
    gcloud apphub applications workloads create tutorial-workload-sp3-mig-b \
        --discovered-workload='projects/HOST_PROJECT_ID/locations/us-west1/discoveredWorkloads/INSTANCE_GROUP_SP3_B_ID' \
        --display-name='Workload instance group (SP3-B)' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=global
    
    gcloud apphub applications workloads create tutorial-workload-sp2-mig-a \
        --discovered-workload='projects/HOST_PROJECT_ID/locations/us-west1/discoveredWorkloads/INSTANCE_GROUP_SP2_A_ID' \
        --display-name='Workload instance group (SP2-A)' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=global
    
    gcloud apphub applications workloads create tutorial-workload-sp2-mig-b \
        --discovered-workload='projects/HOST_PROJECT_ID/locations/us-west1/discoveredWorkloads/INSTANCE_GROUP_SP2_B_ID' \
        --display-name='Workload instance group (SP2-B)' \
        --application=tutorial-application \
        --project=HOST_PROJECT_ID \
        --location=global
    

    Remplacez les éléments suivants :

    • INSTANCE_GROUP_SP3_A_ID, INSTANCE_GROUP_SP3_B_ID : ID de la charge de travail des groupes d'instances gérés du projet de service 3 que vous souhaitez enregistrer.
    • INSTANCE_GROUP_SP2_A_ID, INSTANCE_GROUP_SP2_B_ID : ID de la charge de travail des groupes d'instances gérés du projet de service 2 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=global
    

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

    ID                              DISPLAY_NAME                      SERVICE_REFERENCE                                                                                                            CREATE_TIME
    tutorial-workload-sp3-mig-a     Workload instance group (SP3-A)   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_3_NUMBER]/zones/us-west1-a/instanceGroups/tutorial-sp3-mig-a'}   2024-02-13T00:31:45
    tutorial-workload-sp3-mig-b     Workload instance group (SP3-B)   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_3_NUMBER]/zones/us-west1-a/instanceGroups/tutorial-sp3-mig-b'}   2024-02-13T00:31:45
    tutorial-workload-sp2-mig-a     Workload instance group (SP2-A)   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_2_NUMBER]/zones/us-west1-a/instanceGroups/tutorial-sp2-mig-a'}   2024-02-13T00:31:45
    tutorial-workload-sp2-mig-b     Workload instance group (SP2-B)   {'uri': '//compute.googleapis.com/projects/[SERVICE_PROJECT_2_NUMBER]/zones/us-west1-a/instanceGroups/tutorial-sp2-mig-b'}   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 à partir des projets de service associés au projet hôte de l'App Hub.

  1. Dans la console Google Cloud , accédez à la page Services et charges de travail du hub des applications.

    Accéder à "Services et charges de travail"

    Tous les services et charges de travail des projets de service du hub d'applications associés sont affichés.

  2. Dans la liste Région, sélectionnez monde. La charge de travail Groupe d'instances de charge de travail s'affiche avec des informations telles que Type de hub d'applications, Criticité et Enregistré auprès de.

  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 d'enregistrement.
    2. Cliquez sur Enregistré. La liste des services et des charges de travail enregistrés dans l'application s'affiche.

Afficher les métriques d'application

Vous pouvez afficher les métriques système des applications créées dans votre projet hôte App Hub. Ces métriques correspondent aux signaux clés : trafic, erreurs, latence et saturation, qui aident à surveiller les performances et l'état de l'application.

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

    Accéder à la page Applications

  2. Cliquez sur le nom de l'application, Tutorial.

    L'onglet Services et charges de travail s'affiche avec les métadonnées des services et des charges de travail enregistrés dans votre application.

  3. Pour afficher les métriques système des services et des charges de travail enregistrés, cliquez sur Métriques.

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 à la page Applications de l'App Hub.

    Accéder à la page Applications

  2. Cliquez sur le nom d'une application, puis sur Tutoriel.

  3. Dans l'onglet Services et charges de travail, dans la section Services et charges de travail enregistrés, cliquez sur le nom d'un service.

  4. Sur la page Services et charges de travail, cliquez sur Désenregistrer.

    Une alerte indique que le service n'est pas enregistré.

  5. Dans l'onglet Services et charges de travail, dans la section Services et charges de travail enregistrés, cliquez sur le nom d'une charge de travail.

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

    Une alerte indique que la charge de travail n'est pas enregistrée.

  7. Accédez à la page Applications du hub des applications.

    Accéder à la page Applications

  8. Cliquez sur le nom d'une application.

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

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

    Accéder aux paramètres

  11. Sur la page Settings (Paramètres), cochez la case du projet de service que vous souhaitez supprimer du projet hôte de l'App Hub.

  12. Cliquez sur Dissocier des projets.

gcloud

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

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

    gcloud apphub applications services delete SERVICE_NAME \
      --application=tutorial-application --project=HOST_PROJECT_ID \
      --location=global
    

    Remplacez SERVICE_NAME par le nom du service. Les services sont désormais des services découverts pouvant être enregistrés dans l'application.

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

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

    gcloud apphub applications workloads delete WORKLOAD_NAME \
      --application=tutorial-application --project=HOST_PROJECT_ID \
      --location=global
    

    Remplacez WORKLOAD_NAME par le nom de votre charge de travail. La charge de travail est désormais une charge de travail découverte qui peut être enregistrée dans l'application.

  5. Supprimez l'application:

    gcloud apphub applications delete tutorial-application \
      --project=HOST_PROJECT_ID \
      --location=global
    
  6. Supprimez les projets de service du projet hôte de l'App Hub:

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

    Remplacez SERVICE_PROJECT_ID par les ID de projet des projets de service 1, 2 et 3.

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.

Pour en savoir plus, consultez la section Nettoyer la configuration de l'équilibreur de charge.

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 celui que vous souhaitez supprimer, puis cliquez sur Supprimer.
  3. Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêter pour supprimer le projet.

gcloud

Supprimer un projet Google Cloud :

gcloud projects delete PROJECT_ID

Remplacez PROJECT_ID par les ID de projet hôte ou de service.

Étape suivante