arrow_back

Créer un équilibreur de charge interne

Créer un équilibreur de charge interne

50 minutes 5 crédits

GSP216

Google Cloud – Ateliers adaptés au rythme de chacun

Présentation

Google Cloud propose un équilibrage de charge interne pour le trafic basé sur les protocoles TCP et UDP. L'équilibrage de charge interne vous permet d'assurer l'exécution et le scaling de vos services derrière une adresse IP d'équilibrage de charge privée uniquement accessible à vos instances de machines virtuelles internes.

Dans cet atelier, vous créerez deux groupes d'instances gérés dans la même région. Ensuite, vous configurerez et testerez un équilibreur de charge interne en utilisant les groupes d'instances en tant que backends, comme illustré dans ce diagramme de réseau :

Network_Diagram.png

Objectifs

Dans cet atelier, vous allez apprendre à effectuer les tâches suivantes :

  • Créer des règles de pare-feu HTTP et de vérification d'état

  • Configurer deux modèles d'instance

  • Créer deux groupes d'instance gérés

  • Configurer et tester un équilibreur de charge interne

Prérequis

Avant de cliquer sur le bouton Start Lab (Démarrer l'atelier)

Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Start Lab (Démarrer l'atelier), indique combien de temps les ressources Google Cloud resteront accessibles.

Cet atelier pratique Qwiklabs vous permet de suivre vous-même les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Des identifiants temporaires vous sont fournis pour vous permettre de vous connecter à Google Cloud le temps de l'atelier.

Conditions requises

Pour réaliser cet atelier, vous devez :

  • avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome) ;
  • disposer de suffisamment de temps pour réaliser l'atelier en une fois.

Remarque : Si vous possédez déjà votre propre compte ou projet Google Cloud, veillez à ne pas l'utiliser pour réaliser cet atelier.

Remarque : Si vous utilisez un appareil Chrome OS, exécutez cet atelier dans une fenêtre de navigation privée.

Démarrer l'atelier et se connecter à la console Google Cloud

  1. Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, un pop-up s'affiche pour vous permettre de sélectionner un mode de paiement. Sur la gauche, vous trouverez le panneau Détails concernant l'atelier, qui contient les éléments suivants :

    • Le bouton Ouvrir la console Google
    • Le temps restant
    • Les identifiants temporaires que vous devez utiliser pour cet atelier
    • Des informations complémentaires vous permettant d'effectuer l'atelier
  2. Cliquez sur Ouvrir la console Google. L'atelier lance les ressources, puis ouvre la page Se connecter dans un nouvel onglet.

    Conseil : Réorganisez les onglets dans des fenêtres distinctes, placées côte à côte.

    Remarque : Si la boîte de dialogue Sélectionner un compte s'affiche, cliquez sur Utiliser un autre compte.
  3. Si nécessaire, copiez le nom d'utilisateur inclus dans le panneau Détails concernant l'atelier et collez-le dans la boîte de dialogue Se connecter. Cliquez sur Suivant.

  4. Copiez le mot de passe inclus dans le panneau Détails concernant l'atelier et collez-le dans la boîte de dialogue de bienvenue. Cliquez sur Suivant.

    Important : Vous devez utiliser les identifiants fournis dans le panneau de gauche. Ne saisissez pas vos identifiants Google Cloud Skills Boost. Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires peuvent vous être facturés.
  5. Accédez aux pages suivantes :

    • Acceptez les conditions d'utilisation.
    • N'ajoutez pas d'options de récupération ni d'authentification à deux facteurs (ce compte est temporaire).
    • Ne vous inscrivez pas aux essais offerts.

Après quelques instants, la console Cloud s'ouvre dans cet onglet.

Remarque : Vous pouvez afficher le menu qui contient la liste des produits et services Google Cloud en cliquant sur le menu de navigation en haut à gauche. Icône du menu de navigation

Tâche 1 : Configurer des règles de pare-feu HTTP et de vérification de l'état

Configurez des règles de pare-feu permettant d'autoriser le trafic HTTP vers les backends et le trafic TCP depuis le vérificateur d'état Google Cloud.

Explorer le réseau my-internal-app

Le réseau my-internal-app, composé des sous-réseaux subnet-a et subnet-b, et les règles de pare-feu pour le trafic RDP, SSH et ICMP ont été configurés pour vous.

  1. Dans la console, accédez au menu de navigation > Réseau VPC > Réseaux VPC.

  2. Faites défiler la page vers le bas. Vous voyez alors le réseau my-internal-app et ses sous-réseaux : subnet-a et subnet-b

    Chaque projet Google Cloud commence avec le réseau default (par défaut). En outre, le réseau my-internal-app a été créé lors de l'élaboration du diagramme de réseau.

    Vous allez créer les groupes d'instances gérés dans subnet-a et subnet-b. Ces deux sous-réseaux figurent dans la région us-central1, car un équilibreur de charge interne est un service régional. Les groupes d'instances gérés se trouvent dans des zones distinctes, de manière à immuniser votre service contre les défaillances de zone.

Créer la règle de pare-feu HTTP

Créez une règle de pare-feu pour autoriser le trafic HTTP vers les backends en provenance de l'équilibreur de charge et d'Internet (afin d'installer Apache sur les backends).

  1. Toujours dans Réseau VPC, dans le volet de gauche, cliquez sur Règles de pare-feu.

  2. Vous verrez alors les règles de pare-feu app-allow-icmp et app-allow-ssh-rdp.

    Ces règles de pare-feu ont été créées en amont.

  3. Cliquez sur Créer une règle de pare-feu.

  4. Indiquez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :

    Propriété Valeur (saisissez la valeur ou sélectionnez l'option spécifiée)
    Nom app-allow-http
    Réseau my-internal-app
    Cibles Tags cibles spécifiés
    Tags cibles lb-backend
    Filtre source Plages IPv4
    Plages IPv4 sources 0.0.0.0/0
    Protocoles et ports Protocoles et ports spécifiés, puis cochez tcp et saisissez : 80
Remarque : Pensez à ajouter /0 dans les plages IPv4 sources pour indiquer tous les réseaux.
  1. Cliquez sur Créer.

Créer les règles de pare-feu de vérification d'état

Les vérifications d'état déterminent les instances d'un équilibreur de charge qui peuvent recevoir de nouvelles connexions. Pour l'équilibrage de charge interne, les vérifications d'état portant sur vos instances à équilibrage de charge proviennent d'adresses situées dans les plages 130.211.0.0/22 et 35.191.0.0/16. Vos règles de pare-feu doivent autoriser ces connexions.

  1. Toujours depuis la page Règles de pare-feu, cliquez sur Créer une règle de pare-feu.

  2. Indiquez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :

    Propriété Valeur (saisissez la valeur ou sélectionnez l'option spécifiée)
    Nom app-allow-health-check
    Cibles Tags cibles spécifiés
    Tags cibles lb-backend
    Filtre source Plages IPv4
    Plages IPv4 sources 130.211.0.0/22 et 35.191.0.0/16
    Protocoles et ports Protocoles et ports spécifiés, puis cochez tcp
Remarque : Veillez à renseigner les deux propriétés Plages IPv4 sources individuellement et à appuyer sur la touche ESPACE entre chaque valeur.
  1. Cliquez sur Créer.

Cliquez sur "Vérifier ma progression" pour vérifier l'objectif.

Configurer des règles de pare-feu HTTP et de vérification de l'état

Tâche 2 : Configurer les modèles d'instance et créer les groupes d'instances

Un groupe d'instances géré crée un groupe d'instances identiques à l'aide d'un modèle d'instances. Ces instances permettent de créer les backends de l'équilibreur de charge interne.

Configurer les modèles d'instance

Un modèle d'instance est une ressource API qui vous permet de créer des instances de VM et des groupes d'instances gérés. Les modèles d'instance définissent le type de machine, l'image disque de démarrage, le sous-réseau, les libellés et d'autres propriétés d'instance. Créez un modèle d'instance pour les deux sous-réseaux du réseau my-internal-app.

  1. Dans la console, accédez au menu de navigation > Compute Engine > Modèles d'instance.

  2. Cliquez sur Créer un modèle d'instance.

  3. Dans le champ Nom, saisissez instance-template-1.

  4. Dans Série, sélectionnez N1.

  5. Cliquez sur Options avancées.

  6. Cliquez sur Mise en réseau.

  7. Dans Tags réseau, saisissez lb-backend.

    Remarque : Le tag réseau lb-backend garantit que les règles de pare-feu HTTP et Vérification d'état s'appliquent à ces instances.
  8. Pour Interfaces réseau, cliquez sur la flèche déroulante afin d'effectuer vos modifications.

  9. Indiquez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :

    Propriété Valeur (saisissez la valeur ou sélectionnez l'option spécifiée)
    Réseau my-internal-app
    Sous-réseau subnet-a
  10. Cliquez sur OK.

  11. Cliquez sur Gestion.

  12. Sous Métadonnées, cliquez sur Ajouter un élément et spécifiez les valeurs suivantes :

    Clé 1 Valeur 1
    startup-script-url gs://cloud-training/gcpnet/ilb/startup.sh
Remarque : La clé startup-script-url spécifie un script qui sera exécuté au démarrage des instances. Ce script installe Apache et modifie la page d'accueil pour y inclure l'adresse IP client et le nom, la région et la zone de l'instance de VM. Pour consulter ce script, cliquez ici.
  1. Cliquez sur Créer.

  2. Attendez que le modèle d'instance soit créé.

Configurer le modèle d'instance suivant

Créez un autre modèle d'instance pour le sous-réseau subnet-b en copiant instance-template-1 :

  1. Toujours dans Modèles d'instances, cochez la case instance-template-1, puis cliquez sur Copier. L'instance est intitulée instance-template-2.

  2. Cliquez sur Options avancées.

  3. Cliquez sur l'onglet Réseau.

  4. Pour Interfaces réseau, cliquez sur la flèche déroulante afin d'effectuer vos modifications.

  5. Sélectionnez subnet-b pour la propriété Sous-réseau.

  6. Cliquez sur OK, puis sur Créer.

Créer les groupes d'instances gérés

Créez un groupe d'instances géré dans subnet-a (us-central1-a), et un autre dans subnet-b (us-central1-b).

  1. Toujours dans Compute Engine, dans le volet de gauche, cliquez sur Groupes d'instances, puis cliquez sur Créer un groupe d'instances.

  2. Indiquez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :

    Propriété Valeur (saisissez la valeur ou sélectionnez l'option spécifiée)
    Nom instance-group-1
    Modèle d'instance instance-template-1
    Emplacement Zone unique
    Région us-central1
    Zone us-central1-a
    Autoscaling > Nombre minimal d'instances 1
    Autoscaling > Nombre maximal d'instances 5
    Autoscaling > Métriques d'autoscaling (cliquez sur la flèche déroulante afin d'effectuer vos modifications) > Type de métrique Utilisation du processeur
    Utilisation du processeur cible 80
    Intervalle entre chaque autoscaling 45
Remarque : Les groupes d'instances gérés proposent des fonctionnalités d'autoscaling qui vous permettent d'ajouter ou de supprimer automatiquement des instances dans un groupe géré en fonction de l'augmentation ou de la réduction de la charge. Avec l'autoscaling, vos applications peuvent gérer de façon optimale les hausses de trafic et réduire vos coûts lorsque les besoins en ressources sont moins importants. Il vous suffit de définir des règles d'autoscaling pour que l'autoscaler procède automatiquement aux ajustements nécessaires en fonction de la charge mesurée.
  1. Cliquez sur Créer.

    Effectuez la même procédure pour instance-group-2 dans us-central1-b :

  2. Cliquez sur Créer un groupe d'instances.

  3. Indiquez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :

    Propriété Valeur (saisissez la valeur ou sélectionnez l'option spécifiée)
    Nom instance-group-2
    Modèle d'instance instance-template-2
    Emplacement Zone unique
    Région us-central1
    Zone us-central1-b
    Autoscaling > Nombre minimal d'instances 1
    Autoscaling > Nombre maximal d'instances 5
    Autoscaling > Métriques d'autoscaling (cliquez sur la flèche déroulante afin d'effectuer vos modifications) > Type de métrique Utilisation du processeur
    Utilisation du processeur cible 80
    Intervalle entre chaque autoscaling 45
  4. Cliquez sur Créer.

Vérifier les backends

Vérifiez que les instances de VM sont créées dans les deux sous-réseaux, et créez une VM utilitaire pour accéder aux sites HTTP des backends.

  1. Toujours dans Compute Engine, cliquez sur Instances de VM.

  2. Vous verrez alors deux instances qui commencent par instance-group-1 et instance-group-2.

    Ces instances figurent dans des zones distinctes, et leurs adresses IP internes font partie des blocs CIDR (Classless Inter-Domain Routing) subnet-a et subnet-b.

  3. Cliquez sur Créer une instance.

  4. Indiquez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :

    Propriété Valeur (saisissez la valeur ou sélectionnez l'option spécifiée)
    Nom utility-vm
    Région us-central1
    Zone us-central1-f
    Série N1
    Type de machine f1-micro (1 vCPU partagé)
  5. Cliquez sur Options avancées.

  6. Cliquez sur Mise en réseau.

  7. Pour Interfaces réseau, cliquez sur la flèche déroulante afin d'effectuer vos modifications.

  8. Indiquez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :

    Propriété Valeur (saisissez la valeur ou sélectionnez l'option spécifiée)
    Réseau my-internal-app
    Sous-réseau subnet-a
    Adresse IP interne principale Éphémère [personnalisée]
    Adresse IP éphémère personnalisée 10.10.20.50
  9. Cliquez sur OK, puis sur Créer.

Cliquez sur "Vérifier ma progression" pour vérifier l'objectif.

Configurer les modèles d'instance et créer les groupes d'instances
  1. Notez que les adresses IP internes des backends sont 10.10.20.2 et 10.10.30.2.
Remarque : Si ces adresses IP diffèrent, remplacez-les dans les deux commandes curl ci-dessous.
  1. Pour utility-vm, cliquez sur SSH pour lancer un terminal et vous y connecter.

  2. Pour vérifier la page d'accueil d'instance-group-1-xxxx, exécutez la commande suivante :

curl 10.10.20.2

Le résultat doit se présenter comme suit :

<h1>Internal Load Balancing Lab</h1><h2>Client IP</h2>Your IP address : 10.10.20.50<h2>Hostname</h2>Server Hostname: instance-group-1-1zn8<h2>Server Location</h2>Region and Zone: us-central1-a
  1. Pour vérifier la page d'accueil d'instance-group-2-xxxx, exécutez la commande suivante :

curl 10.10.30.2

Le résultat doit se présenter comme suit :

<h1>Internal Load Balancing Lab</h1><h2>Client IP</h2>Your IP address : 10.10.20.50<h2>Hostname</h2>Server Hostname: instance-group-2-q5wp<h2>Server Location</h2>Region and Zone: us-central1-b

Remarque : Les commandes curl montrent que chaque instance de VM présente l'adresse IP client et le nom et l'emplacement qui lui sont propres. Cela se révélera utile pour vérifier que l'équilibreur de charge interne envoie du trafic aux deux backends.
  1. Fermez le terminal SSH pour utility-vm :

exit

Tâche 3 : Configurer l'équilibreur de charge interne

Configurez l'équilibreur de charge interne pour qu'il équilibre le trafic entre les deux backends (instance-group-1 dans us-central1-a et instance-group-2 dans us-central1-b), comme illustré dans le diagramme suivant :

Schéma réseau illustrant l&#39;équilibreur de charge interne équilibrant le trafic entre les deux backends

Démarrer la configuration

  1. Dans la console Cloud, accédez au menu de navigation > Services réseau > Équilibrage de charge, puis cliquez sur Créer un équilibreur de charge.
  2. Sous Équilibrage de charge TCP, cliquez sur Démarrer la configuration.
  3. Pour Web ou interne uniquement, sélectionnez Seulement entre les VM.
Remarque : Le choix de l'option Seulement entre les VM définit cet équilibreur de charge comme interne. Ce choix nécessite que les backends se trouvent dans une même région (us-central1) et n'autorise pas le déchargement du traitement TCP sur l'équilibreur de charge.
  1. Cliquez sur Continuer.

  2. Dans le champ Nom, saisissez my-ilb.

  3. Dans le champ Région, sélectionnez us-central1.

  4. Dans le champ Réseau, sélectionnez my-internal-app.

Configurer le service de backend régional

Le service de backend surveille les groupes d'instances et les empêche de dépasser l'utilisation configurée.

  1. Cliquez sur Configuration des backends.

  2. Indiquez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :

    Propriété Valeur (sélectionnez l'option spécifiée)
    Groupe d'instances instance-group-1 (us-central1-a)
  3. Cliquez sur Ajouter un backend.

  4. Dans le champ Groupe d'instances, sélectionnez instance-group-2 (us-central1-b).

  5. Dans le champ Vérification d'état, sélectionnez Créer une vérification d'état.

  6. Indiquez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :

    Propriété Valeur (sélectionnez l'option spécifiée)
    Nom my-ilb-health-check
    Protocole TCP
    Port 80
Remarque : Les vérifications de l'état déterminent les instances qui peuvent recevoir de nouvelles connexions. Cette vérification de l'état HTTP sonde les instances toutes les cinq secondes, attend une réponse pendant cinq secondes, puis considère deux tentatives ayant réussi ou ayant échoué comme un état opérationnel ou non opérationnel, respectivement.
  1. Cliquez sur Enregistrer.

  2. Cliquez sur OK.

  3. Vérifiez qu'il y ait une coche bleue à côté de Configuration du backend dans la console Cloud. Dans le cas contraire, vérifiez que vous avez bien suivi la procédure ci-dessus dans son intégralité.

Configurer l'interface

L'interface transfère le trafic vers le backend.

  1. Cliquez sur Configuration de l'interface.

  2. Indiquez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :

    Propriété Valeur (saisissez la valeur ou sélectionnez l'option spécifiée)
    Sous-réseau subnet-b
    Adresse IP interne Sous Adresse IP, sélectionnez Créer une adresse IP.
  3. Indiquez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :

    Propriété Valeur (saisissez la valeur ou sélectionnez l'option spécifiée)
    Nom my-ilb-ip
    Adresse IP statique Laissez-moi choisir
    Adresse IP personnalisée 10.10.30.5
  4. Cliquez sur Réserver.

  5. Sous Numéro de port, saisissez 80.

  6. Cliquez sur OK.

Examiner et créer l'équilibreur de charge interne

  1. Cliquez sur Vérifier et finaliser.
  2. Examinez les sections Backend et Interface.
  3. Cliquez sur Créer. Attendez que l'équilibreur de charge soit créé avant de passer à la tâche suivante.

Cliquez sur "Vérifier ma progression" pour vérifier l'objectif.

Configurer l'équilibreur de charge interne

Tâche 4. Tester l'équilibreur de charge interne

Vérifiez que l'adresse IP my-ilb transfère le trafic vers instance-group-1 dans us-central1-a et vers instance-group-2 dans us-central1-b.

Accéder à l'équilibreur de charge interne

  1. Dans la console Cloud, accédez au menu de navigation > Compute Engine > Instances de VM.

  2. Pour utility-vm, cliquez sur SSH pour lancer un terminal et vous y connecter.

  3. Pour vérifier que l'équilibreur de charge interne transfère le trafic, exécutez la commande suivante :

curl 10.10.30.5

Le résultat doit se présenter comme suit :

<h1>Internal Load Balancing Lab</h1><h2>Client IP</h2>Your IP address : 10.10.20.50<h2>Hostname</h2>Server Hostname: instance-group-1-1zn8<h2>Server Location</h2>Region and Zone: us-central1-a Remarque : Comme prévu, le trafic est transféré de l'équilibreur de charge interne (10.10.30.5) vers le backend.
  1. Exécutez la même commande à plusieurs reprises.

Dans la sortie, vous devez obtenir des réponses d'instance-group-1 dans us-central1-a et d'instance-group-2 dans us-central1-b.

Félicitations !

Dans cet atelier, vous avez créé deux groupes d'instances gérés dans la région us-central1, ainsi que des règles de pare-feu pour autoriser le trafic HTTP vers ces instances et le trafic TCP à partir du vérificateur d'état Google Cloud. Ensuite, vous avez configuré et testé un équilibreur de charge interne pour ces groupes d'instances.

Terminer votre quête

Cet atelier d'auto-formation fait partie de la quête Networking in the Google Cloud. Une quête est une série d'ateliers associés qui constituent un parcours de formation. Si vous terminez cette quête, vous obtenez un badge attestant de votre réussite. Vous pouvez rendre publics les badges que vous recevez et ajouter leur lien dans votre CV en ligne ou sur vos comptes de réseaux sociaux. Inscrivez-vous à cette quête ou à une autre quête contenant cet atelier pour obtenir immédiatement les crédits associés. Découvrez toutes les quêtes disponibles dans le catalogue Google Cloud Skills Boost.

Atelier suivant

Continuez sur votre lancée en suivant l'atelier Passerelles VPN dynamiques – Routeurs Cloud.

Étapes suivantes et informations supplémentaires

Pour en savoir plus sur les concepts de base de l'équilibrage de charge, consultez la documentation sur Google Cloud Load Balancing.

Dernière mise à jour du manuel : 14 septembre 2022

Dernier test de l'atelier : 14 septembre 2022

Copyright 2020 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.