Instructions et exigences de configuration de l'atelier
Protégez votre compte et votre progression. Utilisez toujours une fenêtre de navigation privée et les identifiants de l'atelier pour exécuter cet atelier.

Configurer des équilibreurs de charge réseau et HTTP [ACE]

Atelier 40 minutes universal_currency_alt 5 crédits show_chart Débutant
info Cet atelier peut intégrer des outils d'IA pour vous accompagner dans votre apprentissage.
Ce contenu n'est pas encore optimisé pour les appareils mobiles.
Pour une expérience optimale, veuillez accéder à notre site sur un ordinateur de bureau en utilisant un lien envoyé par e-mail.

Présentation

Dans cet atelier pratique, vous allez découvrir les différences entre un équilibreur de charge réseau et un équilibreur de charge HTTP, et allez apprendre à les configurer pour vos applications exécutées sur les machines virtuelles Google Compute Engine.

Dans Google Cloud Platform, les équilibreurs de charge sont de deux types. Cet atelier vous guide dans le processus de configuration de ces deux types d'équilibreurs de charge.

Nous vous invitons à éviter le copier-coller et à saisir directement les commandes, afin de mieux assimiler les concepts fondamentaux. De nombreux ateliers comportent cependant un bloc de code qui réunit les commandes à saisir. Libre à vous de les copier directement aux emplacements adéquats au cours de cet atelier.

Objectifs de l'atelier

  • Configurer un équilibreur de charge réseau

  • Configurer un équilibreur de charge HTTP(S)

  • Découvrir dans la pratique les différences entre un équilibreur de charge réseau et un équilibreur de charge HTTP

Prérequis

Une bonne connaissance des éditeurs de texte Linux standards tels que vim, emacs ou nano vous sera utile.

Configurer

Pour chaque atelier, nous vous attribuons un nouveau projet Google Cloud et un nouvel ensemble de ressources pour une durée déterminée, sans frais.

  1. Connectez-vous à Qwiklabs dans une fenêtre de navigation privée.

  2. Vérifiez le temps imparti pour l'atelier (par exemple : 01:15:00) : vous devez pouvoir le terminer dans ce délai.
    Une fois l'atelier lancé, vous ne pouvez pas le mettre en pause. Si nécessaire, vous pourrez le redémarrer, mais vous devrez tout reprendre depuis le début.

  3. Lorsque vous êtes prêt, cliquez sur Démarrer l'atelier.

  4. Notez vos identifiants pour l'atelier (Nom d'utilisateur et Mot de passe). Ils vous serviront à vous connecter à Google Cloud Console.

  5. Cliquez sur Ouvrir la console Google.

  6. Cliquez sur Utiliser un autre compte, puis copiez-collez les identifiants de cet atelier lorsque vous y êtes invité.
    Si vous utilisez d'autres identifiants, des messages d'erreur s'afficheront ou des frais seront appliqués.

  7. Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.

Activer Google Cloud Shell

Google Cloud Shell est une machine virtuelle qui contient de nombreux outils pour les développeurs. Elle comprend un répertoire d'accueil persistant de 5 Go et s'exécute sur Google Cloud.

Google Cloud Shell vous permet d'accéder à vos ressources Google Cloud grâce à une ligne de commande.

  1. Dans la barre d'outils située en haut à droite dans la console Cloud, cliquez sur le bouton "Ouvrir Cloud Shell".

    Icône Cloud Shell encadrée

  2. Cliquez sur Continuer.

Le provisionnement et la connexion à l'environnement prennent quelques instants. Une fois connecté, vous êtes en principe authentifié et le projet est défini sur votre ID_PROJET. Par exemple :

ID de projet mis en évidence dans le terminal Cloud Shell

gcloud est l'outil de ligne de commande pour Google Cloud. Il est préinstallé sur Cloud Shell et permet la complétion par tabulation.

  • Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
gcloud auth list

Résultat :

Credentialed accounts: - @.com (active)

Exemple de résultat :

Credentialed accounts: - google1623327_student@qwiklabs.net
  • Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project

Résultat :

[core] project =

Exemple de résultat :

[core] project = qwiklabs-gcp-44776a13dea667a6 Remarque : Pour consulter la documentation complète sur gcloud, accédez au guide de présentation de la gcloud CLI.

Définir la zone et la région par défaut de toutes les ressources

Dans Cloud Shell, définissez la zone par défaut :

gcloud config set compute/zone us-central1-a

Définissez la région par défaut :

gcloud config set compute/region us-central1

Pour plus d'informations à ce sujet, consultez la documentation sur les zones et régions.

Créer plusieurs instances de serveur Web

Pour simuler un cluster de machines, créez un cluster composé de serveurs Web Nginx pour diffuser des contenus statiques en utilisant des modèles d'instances et des groupes d'instances gérés. Les modèles d'instances vous permettent de définir la configuration de chaque machine virtuelle composant le cluster (espace disque, processeur, capacité mémoire, etc.). Un groupe d'instances géré permet de créer un certain nombre d'instances de machine virtuelle, en utilisant le modèle d'instance.

Pour créer les clusters de serveurs Web Nginx, vous devez créer les éléments suivants :

  • Un script de démarrage, qui permettra à chaque instance de machine virtuelle de configurer le serveur Nginx au démarrage
  • Un modèle d'instance, qui va utiliser le script de démarrage
  • Un pool cible
  • Un groupe d'instances géré, défini à partir du modèle d'instance

Toujours dans Cloud Shell, créez un script de démarrage qui sera utilisé par chaque instance de machine virtuelle. Ce script permet de configurer le serveur Nginx au démarrage :

cat << EOF > startup.sh
#! /bin/bash
apt-get update
apt-get install -y nginx
service nginx start
sed -i -- 's/nginx/Google Cloud Platform - '"\$HOSTNAME"'/' /var/www/html/index.nginx-debian.html
EOF

Créez un modèle d'instance, qui utilise le script de démarrage :

gcloud compute instance-templates create nginx-template \
         --metadata-from-file startup-script=startup.sh

(Résultat)

Created [...].
NAME           MACHINE_TYPE  PREEMPTIBLE CREATION_TIMESTAMP
nginx-template n1-standard-1             2015-11-09T08:44:59.007-08:00

Créez à présent un pool cible. Celui-ci permet de disposer d'un point d'accès unique pour l'ensemble des instances d'un groupe. Il sera en outre indispensable pour procéder ensuite à l'équilibrage de charge.

gcloud compute target-pools create nginx-pool

(Résultat)

Created [...].
NAME       REGION       SESSION_AFFINITY BACKUP HEALTH_CHECKS
nginx-pool us-central1

Créez un groupe d'instances géré, défini à partir du modèle d'instance :

gcloud compute instance-groups managed create nginx-group \
         --base-instance-name nginx \
         --size 2 \
         --template nginx-template \
         --target-pool nginx-pool

(Résultat)

Created [...].
NAME         LOCATION       SCOPE  BASE_INSTANCE_NAME  SIZE  TARGET_SIZE  INSTANCE_TEMPLATE  AUTOSCALED
nginx-group  us-central1-a  zone   nginx               0     2            nginx-template     no

Cette opération crée deux instances de machines virtuelles, dont le nom commence par nginx-. Elle peut nécessiter quelques minutes.

Listez les instances Compute Engine ; toutes les instances créées devraient s'afficher.

gcloud compute instances list

(Résultat)

NAME       ZONE           MACHINE_TYPE  PREEMPTIBLE INTERNAL_IP EXTERNAL_IP    STATUS
nginx-7wvi us-central1-a n1-standard-1             10.240.X.X  X.X.X.X           RUNNING
nginx-9mwd us-central1-a n1-standard-1             10.240.X.X  X.X.X.X           RUNNING

Configurons à présent le pare-feu, de sorte que vous puissiez vous connecter aux machines sur le port 80, via les adresses EXTERNAL_IP :

gcloud compute firewall-rules create www-firewall --allow tcp:80

Vous devriez pouvoir vous connecter à chacune des instances via son adresse IP externe, en saisissant le résultat de la commande précédente, soit http://EXTERNAL_IP/.

Vérifiez votre progression dans l'atelier. Cliquez sur Vérifier ma progression ci-dessous pour vérifier que vous avez bien créé un groupe de serveurs Web.

Créer un groupe de serveurs Web

Créer un équilibreur de charge réseau

L'équilibrage des charges réseau vous permet d'équilibrer la charge de vos systèmes en fonction des données du protocole IP entrant, telles que l'adresse, le numéro de port et le type de protocole. Vous disposez également d'options qui ne sont pas disponibles avec l'équilibrage de charge HTTP(S). Vous pouvez par exemple équilibrer d'autres protocoles basés sur les protocoles TCP/UDP, tels que le SMTP. Et si les caractéristiques concernant la connexion TCP présentent de l'intérêt pour votre application, sachez que contrairement à l'équilibrage de charge HTTP(S), l'équilibrage de charge réseau permet d'inspecter les paquets.

Créons à présent un équilibreur de charge L4, qui va cibler notre groupe d'instances :

gcloud compute forwarding-rules create nginx-lb \
         --region us-central1 \
         --ports=80 \
         --target-pool nginx-pool

(Résultat)

Created [https://www.googleapis.com/compute/v1/projects/...].

Affichons toutes les règles de transfert Google Compute Engine de votre projet.

gcloud compute forwarding-rules list

(Résultat)

NAME     REGION       IP_ADDRESS     IP_PROTOCOL TARGET
nginx-lb us-central1 X.X.X.X        TCP         us-central1/targetPools/nginx-pool

Vous pouvez à présent accéder à l'équilibreur de charge en saisissant dans votre navigateur http://IP_ADDRESS/, où IP_ADDRESS désigne l'adresse renvoyée par la commande précédente.

Vérifiez votre progression dans l'atelier. Cliquez sur Vérifier ma progression pour vérifier que vous avez bien créé un équilibreur de charge réseau L4 qui cible les serveurs Web.

Créer un équilibreur de charge réseau L4 qui cible les serveurs Web

Créer un équilibreur de charge HTTP(S)

L'équilibrage de charge HTTP(S) permet d'effectuer un équilibrage global des requêtes HTTP(S) destinées à vos instances. Vous pouvez configurer des règles d'URL, qui vont rediriger certaines URL vers un ensemble d'instances donné. Les requêtes sont toujours redirigées vers le groupe d'instances le plus proche de l'utilisateur, sous réserve de compatibilité et de capacité suffisante. En cas de capacité insuffisante, la requête est transmise au groupe le plus proche présentant la capacité nécessaire.

Commençons par créer une vérification de l'état. Celle-ci consiste à vérifier que l'instance répond bien au trafic HTTP ou HTTPS :

gcloud compute http-health-checks create http-basic-check

(Résultat)

Created [https://www.googleapis.com/compute/v1/projects/...].
NAME             HOST PORT REQUEST_PATH
http-basic-check      80   /

Définissons un service HTTP et mappons un nom de port sur le port correspondant au groupe d'instances. Le service d'équilibrage de charge peut désormais transférer le trafic vers le port nommé :

gcloud compute instance-groups managed \
       set-named-ports nginx-group \
       --named-ports http:80

(Résultat)

Updated [https://www.googleapis.com/compute/v1/projects/...].

Créons un service de backend :

gcloud compute backend-services create nginx-backend \
      --protocol HTTP --http-health-checks http-basic-check --global

(Résultat)

Created [https://www.googleapis.com/compute/v1/projects/...].
NAME          BACKENDS PROTOCOL
nginx-backend          HTTP

Ajoutons le groupe d'instances au service de backend :

gcloud compute backend-services add-backend nginx-backend \
    --instance-group nginx-group \
    --instance-group-zone us-central1-a \
    --global

(Résultat)

Updated [https://www.googleapis.com/compute/v1/projects/...].

Créez un mappage d'URL par défaut qui redirige toutes les requêtes entrantes vers vos instances :

gcloud compute url-maps create web-map \
    --default-service nginx-backend

(Résultat)

Created [https://www.googleapis.com/compute/v1/projects/...].
NAME    DEFAULT_SERVICE
Web-map nginx-backend

Créons un serveur proxy HTTP cible, qui va rediriger les requêtes vers votre mappage d'URL :

gcloud compute target-http-proxies create http-lb-proxy \
    --url-map web-map

(Résultat)

Created [https://www.googleapis.com/compute/v1/projects/...].
NAME          URL_MAP
http-lb-proxy web-map

Créons une règle de transfert globale, qui va traiter et rediriger les requêtes entrantes. Une règle de transfert envoie le trafic vers un serveur proxy HTTP ou HTTPS spécifique, en fonction de l'adresse IP, du protocole IP et du numéro de port spécifié. À noter qu'une règle de transfert globale ne permet pas de spécifier plusieurs numéros de port.

gcloud compute forwarding-rules create http-content-rule \
        --global \
        --target-http-proxy http-lb-proxy \
        --ports 80

(Résultat)

Created [https://www.googleapis.com/compute/v1/projects/...].

La diffusion de votre configuration peut nécessiter plusieurs minutes, une fois la règle de transfert globale créée.

gcloud compute forwarding-rules list

(Résultat)

NAME              REGION IP_ADDRESS    IP_PROTOCOL TARGET
http-content-rule        X.X.X.X       TCP         http-lb-proxy
nginx-lb   us-central1  X.X.X.X       TCP         us-central1/....

Notez l'adresse IP de la règle de transfert http-content-rule.

Vous devriez pouvoir y accéder en saisissant dans votre navigateur http://IP_ADDRESS/. L'opération peut prendre entre trois et cinq minutes. Si vous ne parvenez pas à vous connecter, attendez une minute, puis actualisez le navigateur.

Vérifiez votre progression dans l'atelier. Cliquez sur Vérifier ma progression ci-dessous pour vérifier que vous avez bien créé un équilibreur de charge HTTP(S) L7.

Créer un équilibreur de charge HTTP(S) L7

Tester vos connaissances

Testez vos connaissances sur Google Cloud Platform en répondant à notre quiz. (Sélectionnez plusieurs réponses, le cas échéant.)

Terminer l'atelier

Une fois l'atelier terminé, cliquez sur Terminer l'atelier. Google Cloud Skills Boost supprime les ressources que vous avez utilisées, puis efface le compte.

Si vous le souhaitez, vous pouvez noter l'atelier. Sélectionnez un nombre d'étoiles, saisissez un commentaire, puis cliquez sur Envoyer.

Le nombre d'étoiles correspond à votre degré de satisfaction :

  • 1 étoile = très insatisfait(e)
  • 2 étoiles = insatisfait(e)
  • 3 étoiles = ni insatisfait(e), ni satisfait(e)
  • 4 étoiles = satisfait(e)
  • 5 étoiles = très satisfait(e)

Si vous ne souhaitez pas donner votre avis, vous pouvez fermer la boîte de dialogue.

Pour soumettre des commentaires, suggestions ou corrections, veuillez accéder à l'onglet Assistance.

Copyright 2026 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms de société et de produit peuvent être des marques des sociétés auxquelles ils sont associés.

Avant de commencer

  1. Les ateliers créent un projet Google Cloud et des ressources pour une durée déterminée.
  2. Les ateliers doivent être effectués dans le délai imparti et ne peuvent pas être mis en pause. Si vous quittez l'atelier, vous devrez le recommencer depuis le début.
  3. En haut à gauche de l'écran, cliquez sur Démarrer l'atelier pour commencer.

Utilisez la navigation privée

  1. Copiez le nom d'utilisateur et le mot de passe fournis pour l'atelier
  2. Cliquez sur Ouvrir la console en navigation privée

Connectez-vous à la console

  1. Connectez-vous à l'aide des identifiants qui vous ont été attribués pour l'atelier. L'utilisation d'autres identifiants peut entraîner des erreurs ou des frais.
  2. Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.
  3. Ne cliquez pas sur Terminer l'atelier, à moins que vous n'ayez terminé l'atelier ou que vous ne vouliez le recommencer, car cela effacera votre travail et supprimera le projet.

Ce contenu n'est pas disponible pour le moment

Nous vous préviendrons par e-mail lorsqu'il sera disponible

Parfait !

Nous vous contacterons par e-mail s'il devient disponible

Un atelier à la fois

Confirmez pour mettre fin à tous les ateliers existants et démarrer celui-ci

Utilisez la navigation privée pour effectuer l'atelier

Le meilleur moyen d'exécuter cet atelier consiste à utiliser une fenêtre de navigation privée. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.