Configurer un équilibreur de charge d'application externe régional avec une connectivité hybride

Cette page explique comment déployer un équilibreur de charge d'application externe régional pour équilibrer le trafic vers les points de terminaison du réseau situés sur site ou dans d'autres clouds publics, et qui sont accessibles via une connectivité hybride.

Une fois ces tâches terminées, vous pouvez explorer la possibilité d'activer des services supplémentaires (tels que Cloud CDN et Google Cloud Armor) et des fonctionnalités avancées de gestion du trafic.

Si vous ne l'avez pas déjà fait, consultez la page Présentation des NEG de connectivité hybride pour comprendre la configuration réseau requise pour mettre en œuvre l'équilibrage de charge hybride.

Vue d'ensemble de la configuration

L'exemple de cette page configure l'exemple de déploiement suivant :

Exemple d'équilibreur de charge d'application externe pour la connectivité hybride.
Exemple d'équilibreur de charge d'application externe pour la connectivité hybride (cliquez pour agrandir)

Vous devez configurer la connectivité hybride avant de tenter de mettre en œuvre un déploiement d'équilibrage de charge hybride. Ce document n'inclut pas la configuration de la connectivité hybride.

Pour cette étape de configuration, utilisez la documentation correspondant à votre choix de produit de connectivité hybride (Cloud VPN ou Cloud Interconnect, en interconnexion dédiée ou partenaire).

Autorisations

Pour configurer l'équilibrage de charge hybride, vous devez disposer des autorisations suivantes :

  • Sur Google Cloud

  • Sur votre environnement sur site ou sur un environnement cloud différent de Google Cloud

    • Autorisation permettant de configurer des points de terminaison du réseau pour accéder depuis Google Cloud aux services situés dans votre environnement sur site ou d'autres environnements cloud, à l'aide d'une combinaison IP:Port. Pour en savoir plus, contactez l'administrateur réseau de votre environnement.
    • Autorisations permettant de créer des règles de pare-feu dans votre environnement sur site ou d'autres environnements cloud afin de permettre aux vérifications d'état de Google d'atteindre les points de terminaison.

En outre, pour suivre les instructions de cette page, vous devez créer un NEG de connectivité hybride, un équilibreur de charge et des NEG zonaux (et leurs points de terminaison), qui vont constituer les backends basés sur Google Cloud pour l'équilibreur de charge.

Vous devez être Propriétaire ou Éditeur du projet, ou disposer des rôles IAM Compute Engine suivants.

Tâche Rôle requis
Créer des réseaux, des sous-réseaux et des composants de l'équilibreur de charge Administrateur de réseaux Compute (roles/compute.networkAdmin)
Ajouter et supprimer des règles de pare-feu Administrateur de sécurité de Compute (roles/compute.securityAdmin)
Créer des instances Administrateur d'instances Compute (roles/compute.instanceAdmin)

Établir une connectivité hybride

Votre environnement Google Cloud, ainsi que votre environnement sur site ou d'autres environnements cloud, doivent être connectés via une connectivité hybride, en utilisant des rattachements de VLAN Cloud Interconnect ou des tunnels Cloud VPN avec Cloud Router. Nous vous recommandons d'utiliser une connexion à haute disponibilité.

Lorsque le routage dynamique global est activé, le routeur Cloud Router apprend le point de terminaison spécifique par l'intermédiaire du protocole Border Gateway Protocol (BGP) et le programme dans votre réseau VPC Google Cloud. Le routage dynamique régional n'est pas pris en charge. De même, les routes statiques ne sont pas prises en charge.

Le réseau VPC que vous utilisez pour configurer Cloud Interconnect ou Cloud VPN est le même que celui que vous utilisez pour configurer le déploiement de l'équilibrage de charge hybride. Assurez-vous que les plages CIDR de sous-réseau de votre réseau VPC n'entrent pas en conflit avec vos plages CIDR distantes. Lorsque les adresses IP se chevauchent, les routes de sous-réseau sont prioritaires sur la connectivité à distance.

Pour savoir comment procéder, consultez la documentation suivante :

Configurer votre environnement situé en dehors de Google Cloud

Pour configurer l'équilibrage de charge hybride dans votre environnement sur site ou dans un autre environnement cloud, procédez comme suit :

  • Configurez les points de terminaison du réseau pour exposer les services sur site à Google Cloud (IP:Port).
  • Configurez des règles de pare-feu dans votre environnement sur site ou dans un autre environnement cloud.
  • Configurez Cloud Router pour annoncer les routes requises vers votre environnement privé.

Configurer des points de terminaison du réseau

Une fois que vous avez configuré la connectivité hybride, vous configurez un ou plusieurs points de terminaison du réseau dans votre environnement sur site ou dans d'autres environnements cloud accessibles via Cloud Interconnect ou Cloud VPN, en utilisant une combinaison IP:port. Cette combinaison IP:port est configurée comme un ou plusieurs points de terminaison pour le NEG de connectivité hybride qui sera créé ultérieurement dans Google Cloud au cours de cette procédure.

S'il existe plusieurs chemins d'accès au point de terminaison IP, le routage suit le comportement décrit dans la présentation de Cloud Router.

Configurer les règles de pare-feu

Les règles de pare-feu suivantes doivent être créées dans votre environnement sur site ou dans un autre environnement cloud :

  • Créez une règle de pare-feu autorisant le trafic entrant sur site ou dans d'autres environnements cloud pour autoriser le trafic provenant du sous-réseau proxy réservé de la région à atteindre les points de terminaison.
  • L'ajout de plages de vérification de l'état à la liste d'autorisation de Google n'est pas nécessaire pour les NEG hybrides. Toutefois, si vous utilisez à la fois des NEG hybrides et zonaux dans un service de backend, vous devez ajouter les plages de vérification de l'état Google à la liste d'autorisation pour les NEG zonaux.

Configurez Cloud Router pour annoncer les plages d'adresses IP personnalisées suivantes à votre environnement sur site ou à un autre environnement cloud :

  • Plage du sous-réseau proxy réservé de la région.

Configurer l'environnement Google Cloud

Pour les étapes suivantes, assurez-vous d'utiliser le même réseau VPC (appelé NETWORK dans cette procédure) que celui utilisé pour configurer la connectivité hybride entre les environnements.

En outre, assurez-vous que la région utilisée (appelée REGION dans cette procédure) est identique à celle utilisée pour créer le tunnel Cloud VPN ou le rattachement de VLAN Cloud Interconnect.

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

Ce sous-réseau proxy réservé est utilisé pour tous les équilibreurs de charge d'application externes régionaux de la région REGION.

Console

  1. Dans Google Cloud Console, accédez à la page Réseaux VPC.
    Accéder à la page "Réseaux VPC"
  2. Accédez au réseau utilisé pour configurer la connectivité hybride entre les environnements.
  3. Cliquez sur Ajouter un sous-réseau.
  4. Saisissez un Nom : PROXY_ONLY_SUBNET_NAME.
  5. Sélectionnez une Région : REGION.
  6. Définissez le champ Objectif sur Proxy géré régional.
  7. Saisissez une plage d'adresses IP : PROXY_ONLY_SUBNET_RANGE.
  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_NAME \
  --purpose=REGIONAL_MANAGED_PROXY \
  --role=ACTIVE \
  --region=REGION \
  --network=NETWORK \
  --range=PROXY_ONLY_SUBNET_RANGE

Configurer le sous-réseau d'équilibreur de charge

Ce sous-réseau permet de créer les backends de NEG zonaux de l'équilibreur de charge, l'interface et l'adresse IP interne.

Créez ce sous-réseau dans le réseau NETWORK utilisé pour configurer la connectivité hybride entre les environnements.

Cloud Console

  1. Dans Google Cloud Console, accédez à la page Réseaux VPC.
    Accéder à la page "Réseaux VPC"
  2. Accédez au réseau utilisé pour configurer la connectivité hybride entre les environnements.
  3. Dans la section Sous-réseaux :
    • Définissez Mode de création du sous-réseau sur Personnalisé.
    • Dans la section Nouveau sous-réseau, saisissez les informations suivantes :
      • Nom : LB_SUBNET_NAME
      • Région : REGION
      • Plage d'adresses IP : LB_SUBNET_RANGE
    • Cliquez sur OK.
  4. Cliquez sur Créer.

gcloud

Créez un sous-réseau dans le réseau NETWORK utilisé pour configurer la connectivité hybride entre les environnements.

  gcloud compute networks subnets create LB_SUBNET_NAME 
--network=NETWORK
--range=LB_SUBNET_RANGE
--region=REGION

Réserver l'adresse IP de l'équilibreur de charge

Réserver une adresse IP externe pour l'équilibreur de charge. Cette procédure crée l'adresse IP de l'équilibreur de charge au niveau Standard. Les équilibreurs de charge d'application externes régionaux sont compatibles avec les niveaux de service réseau Premium et Standard. Toutefois, la création de cet équilibreur de charge au niveau Premium n'est pas possible dans la console Google Cloud. Utilisez plutôt gcloud ou l'API REST.

console Cloud

  1. Dans la console Google Cloud, accédez à la page Réserver une adresse statique.

    Accédez à la page "Réserver une adresse statique"

  2. Saisissez un Nom : LB_IP_ADDRESS.

  3. Pour le niveau de service réseau, sélectionnez Standard.

  4. Pour Version IP, sélectionnez IPv4.

  5. Pour le Type, sélectionnez Régional.

  6. Sélectionnez la REGION dans laquelle créer l'adresse.

  7. Laissez l'option Associer à définie sur Aucun. Une fois l'équilibreur de charge créé, cette adresse IP sera associée à la règle de transfert de l'équilibreur de charge.

  8. Cliquez sur Réserver pour réserver l'adresse IP.

gcloud

  1. Réservez une adresse IP statique externe régionale comme suit.

    gcloud compute addresses create LB_IP_ADDRESS  \
       --region=REGION \
       --network-tier=STANDARD
    
  2. Utilisez la commande compute addresses describe pour afficher le résultat :

    gcloud compute addresses describe LB_IP_ADDRESS  \
       --region=REGION
    

Créer des règles de pare-feu pour les NEG zonaux

Dans cet exemple, vous devez créer les règles de pare-feu suivantes pour les backends de NEG zonaux sur Google Cloud :

  • fw-allow-health-check : règle de pare-feu d'entrée, applicable aux instances soumises à l'équilibrage de charge, qui autorise le trafic provenant de l'équilibreur de charge et des systèmes de vérification d'état de Google Cloud (130.211.0.0/22 et 35.191.0.0/16). Cet exemple utilise le tag cible allow-health-check pour identifier les VM de backend auxquelles il doit s'appliquer. Il n'est pas nécessaire d'ajouter des plages de vérification d'état Google à la liste d'autorisation pour les NEG hybrides. Toutefois, si vous utilisez à la fois des NEG hybrides et zonaux dans un service de backend, vous devez ajouter les plages de vérification d'état Google à la liste d'autorisation pour les NEG zonaux.
  • fw-allow-proxy-only-subnet : règle de pare-feu d'entrée qui autorise les connexions provenant du sous-réseau proxy réservé à accéder aux backends. Cet exemple utilise le tag cible allow-proxy-only-subnet pour identifier les VM de backend auxquelles la règle doit s'appliquer.

Console

  1. Dans la console Google Cloud, accédez à la page Règles d'administration.
    Accéder à la page "Stratégies de pare-feu"
  2. Cliquez de nouveau sur Créer une règle de pare-feu pour créer la règle autorisant le trafic provenant des vérifications d'état :
    1. Saisissez le nom fw-allow-health-check.
    2. Sous Réseau, sélectionnez NETWORK.
    3. Sous Cibles, sélectionnez Tags cibles spécifiés.
    4. Dans le champ Tags cibles, saisissez allow-health-check.
    5. Définissez Filtre source sur Plages IPv4.
    6. Définissez Plages IPv4 sources sur 130.211.0.0/22 et 35.191.0.0/16.
    7. Dans Protocoles et ports, sélectionnez Protocoles et ports spécifiés.
    8. Sélectionnez TCP, puis saisissez 80 pour le numéro de port.
    9. Cliquez sur Créer.
  3. Cliquez de nouveau sur Créer une règle de pare-feu pour créer la règle autorisant les connexions entrantes à partir du sous-réseau proxy réservé :
    1. Nom : fw-allow-ssh
    2. Réseau : NETWORK
    3. Priorité : 1000
    4. Sens du trafic : entrée
    5. Action en cas de correspondance : autoriser
    6. Cibles : tags cibles spécifiés
    7. Tags cibles : allow-proxy-only-subnet
    8. Filtre source : Plages IPv4
    9. Plages IPv4 sources : PROXY_ONLY_SUBNET_RANGE
    10. Protocoles et ports : sélectionnez Protocoles et ports spécifiés.
    11. Sélectionnez TCP, puis saisissez 80 pour le numéro de port.
    12. Cliquez sur Créer.

gcloud

  1. Créez la règle fw-allow-health-check-and-proxy pour autoriser les vérifications d'état Google Cloud à atteindre les instances backend sur le port TCP 80 :

    gcloud compute firewall-rules create fw-allow-health-check \
        --network=NETWORK \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-health-check \
        --source-ranges=130.211.0.0/22,35.191.0.0/16 \
        --rules=tcp:80
    
  2. Créez une règle de pare-feu autorisant le trafic entrant pour le sous-réseau proxy réservé afin de permettre à l'équilibreur de charge de communiquer avec les instances backend sur le port TCP 80 :

    gcloud compute firewall-rules create fw-allow-proxy-only-subnet \
        --network=NETWORK \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-proxy-only-subnet \
        --source-ranges=PROXY_ONLY_SUBNET_RANGE \
        --rules=tcp:80
    

Configurer le NEG zonal

Pour les backends basés sur Google Cloud, nous vous recommandons de configurer plusieurs NEG zonaux dans la même région que celle où vous avez configuré la connectivité hybride.

Pour cet exemple, nous avons configuré un NEG zonal (avec des points de terminaison de type GCE_VM_IP_PORT) dans la région REGION. Commencez par créer les VM dans la zone GCP_NEG_ZONE. Créez ensuite un NEG zonal dans la même GCP_NEG_ZONE et ajoutez les points de terminaison du réseau des VM au NEG.

Créer des VM

Console

  1. Accédez à la page Instances de VM de Google Cloud Console.
    Accéder à la page Instances de VM
  2. Cliquez sur Create instance (Créer une instance).
  3. Dans le champ Nom, spécifiez vm-a1.
  4. Dans le champ Région, choisissez REGION, puis sélectionnez une zone. Dans le cadre de la présente procédure, elle sera appelée GCP_NEG_ZONE.
  5. Dans la section Disque de démarrage, assurez-vous que les options sélectionnées sont Debian pour le système d'exploitation et 10 (Buster) pour la version. Si nécessaire, cliquez sur Sélectionner pour modifier l'image.
  6. Cliquez sur Options avancées et apportez les modifications suivantes :

    • Cliquez sur Mise en réseau et ajoutez les tags réseau suivants : allow-ssh, allow-health-check et allow-proxy-only-subnet.
    • Cliquez sur le bouton Modifier () sous Interfaces réseau, apportez les modifications suivantes, puis cliquez sur OK :
      • Réseau : NETWORK
      • Sous-réseau : LB_SUBNET_NAME
    • Cliquez sur Management (Gestion). Dans le champ Script de démarrage, copiez et collez le contenu de script suivant. Le contenu du script est identique pour les quatre VM :

      #! /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
      
  7. Cliquez sur Create (Créer).

  8. Répétez les étapes ci-dessous pour créer une deuxième VM en utilisant la combinaison de nom et de zone suivante :

    • Nom : vm-a2, zone : GCP_NEG_ZONE

gcloud

Créez les VM en exécutant la commande suivante deux fois, en utilisant ces combinaisons pour le nom de la VM et sa zone. Le contenu du script est identique pour les deux VM.

  • VM_NAME de vm-a1 et la zone GCP_NEG_ZONE de votre choix
  • VM_NAME de vm-a2 et la même zone GCP_NEG_ZONE

    gcloud compute instances create VM_NAME \
        --zone=GCP_NEG_ZONE \
        --image-family=debian-10 \
        --image-project=debian-cloud \
        --tags=allow-ssh,allow-health-check,allow-proxy-only-subnet \
        --subnet=LB_SUBNET_NAME \
        --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'
    

Créer le NEG zonal

Console

Pour créer un groupe de points de terminaison de réseau zonal :

  1. Accédez à la page "Groupes de points de terminaison du réseau" dans la console Google Cloud.
    Accéder à la page Groupes de points de terminaison du réseau
  2. Cliquez sur Créer un groupe de points de terminaison du réseau.
  3. Saisissez un nom pour le NEG zonal. Appelé GCP_NEG_NAME dans cette procédure.
  4. Sélectionnez le type de groupe de points de terminaison du réseau : Groupe de points de terminaison du réseau (zonal).
  5. Sélectionnez le réseau : NETWORK.
  6. Sélectionnez le sous-réseau : LB_SUBNET_NAME.
  7. Sélectionnez la zone : GCP_NEG_ZONE.
  8. Saisissez le port par défaut : 80.
  9. Cliquez sur Create (Créer).

Ajoutez des points de terminaison au NEG zonal :

  1. Accédez à la page "Groupes de points de terminaison du réseau" dans Google Cloud Console.
    Accéder à la page Groupes de points de terminaison du réseau
  2. Cliquez sur le nom du groupe de points de terminaison du réseau créé à l'étape précédente (GCP_NEG_NAME). La page Détails du groupe de points de terminaison du réseau s'affiche.
  3. Dans la section Points de terminaison du réseau de ce groupe, cliquez sur Ajouter un point de terminaison du réseau. La page Ajouter un point de terminaison du réseau s'affiche.
  4. Sélectionnez une instance de VM pour ajouter ses adresses IP internes en tant que points de terminaison du réseau. Dans la section Interface réseau, le nom, la zone et le sous-réseau de la VM s'affichent.
  5. Saisissez l'adresse IP du nouveau point de terminaison du réseau.
  6. Sélectionnez le type de port.
    1. Si vous sélectionnez Par défaut, le point de terminaison utilise le port par défaut 80 pour tous les points de terminaison du groupe de points de terminaison du réseau. Cela est suffisant pour notre exemple, car le serveur Apache diffuse les requêtes au port 80.
    2. Si vous sélectionnez Personnalisé, saisissez le numéro de port du point de terminaison à utiliser.
  7. Pour ajouter d'autres points de terminaison, cliquez sur Ajouter un point de terminaison du réseau, puis répétez les étapes précédentes.
  8. Après avoir ajouté tous les points de terminaison, cliquez sur Créer.

gcloud

  1. Créez un NEG zonal (avec des points de terminaison GCE_VM_IP_PORT) à l'aide de la commande gcloud compute network-endpoint-groups create :

    gcloud compute network-endpoint-groups create GCP_NEG_NAME \
        --network-endpoint-type=GCE_VM_IP_PORT \
        --zone=GCP_NEG_ZONE \
        --network=NETWORK \
        --subnet=LB_SUBNET_NAME
    

    Vous pouvez spécifier un --default-port lors de la création du NEG ou spécifier un numéro de port pour chaque point de terminaison à l'étape suivante.

  2. Ajoutez des points de terminaison à GCP_NEG_NAME.

    gcloud compute network-endpoint-groups update GCP_NEG_NAME \
        --zone=GCP_NEG_ZONE \
        --add-endpoint='instance=vm-a1,port=80' \
        --add-endpoint='instance=vm-a2,port=80'
    

Configurer le NEG de connectivité hybride

Lorsque vous créez le NEG, utilisez une zone qui réduit la distance géographique entre Google Cloud et votre environnement sur site ou autre environnement cloud. Par exemple, si vous hébergez un service dans un environnement sur site à Francfort, en Allemagne, vous pouvez spécifier la zone Google Cloud europe-west3-a lorsque vous créez le NEG.

De plus, si vous utilisez Cloud Interconnect, la zone utilisée pour créer le NEG doit se trouver dans la même région que le rattachement Cloud Interconnect.

Pour connaître les régions et les zones disponibles, consultez la documentation Compute Engine : Régions et zones disponibles.

Console

Pour créer un groupe de points de terminaison du réseau de connectivité hybride :

  1. Accédez à la page "Groupes de points de terminaison du réseau" dans Google Cloud Console.
    Accéder à la page Groupes de points de terminaison du réseau
  2. Cliquez sur Créer un groupe de points de terminaison du réseau.
  3. Saisissez un nom pour le NEG hybride. Appelé ON_PREM_NEG_NAME dans cette procédure.
  4. Sélectionnez le type de groupe de points de terminaison du réseau : Groupe de points de terminaison du réseau de connectivité hybride (zonal).
  5. Sélectionnez le réseau : NETWORK.
  6. Sélectionnez le sous-réseau : LB_SUBNET_NAME.
  7. Sélectionnez la zone : ON_PREM_NEG_ZONE.
  8. Saisissez le port par défaut.
  9. Cliquez sur Créer.

Ajoutez des points de terminaison au NEG de connectivité hybride :

  1. Accédez à la page "Groupes de points de terminaison du réseau" dans Google Cloud Console.
    Accéder à la page Groupes de points de terminaison du réseau
  2. Cliquez sur le nom du groupe de points de terminaison du réseau créé à l'étape précédente (ON_PREM_NEG_NAME). La page Détails du groupe de points de terminaison du réseau s'affiche.
  3. Dans la section Points de terminaison du réseau de ce groupe, cliquez sur Ajouter un point de terminaison du réseau. La page Ajouter un point de terminaison du réseau s'affiche.
  4. Saisissez l'adresse IP du nouveau point de terminaison du réseau.
  5. Sélectionnez le type de port.
    1. Si vous sélectionnez Par défaut, le point de terminaison utilise le port par défaut pour tous les points de terminaison du groupe de points de terminaison du réseau.
    2. Si vous sélectionnez Personnalisé, vous pouvez saisir un numéro de port différent à utiliser par le point de terminaison.
  6. Pour ajouter d'autres points de terminaison, cliquez sur Ajouter un point de terminaison du réseau, puis répétez les étapes précédentes.
  7. Après avoir ajouté tous les points de terminaison autres que Google Cloud, cliquez sur Créer.

gcloud

  1. Créez un NEG de connectivité hybride à l'aide de la commande gcloud compute network-endpoint-groups create.

    gcloud compute network-endpoint-groups create ON_PREM_NEG_NAME \
        --network-endpoint-type=NON_GCP_PRIVATE_IP_PORT \
        --zone=ON_PREM_NEG_ZONE \
        --network=NETWORK
    
  2. Ajoutez le point de terminaison de VM de backend sur site à ON_PREM_NEG_NAME :

    gcloud compute network-endpoint-groups update ON_PREM_NEG_NAME \
        --zone=ON_PREM_NEG_ZONE \
        --add-endpoint="ip=ON_PREM_IP_ADDRESS_1,port=PORT_1" \
        --add-endpoint="ip=ON_PREM_IP_ADDRESS_2,port=PORT_2"
    

Vous pouvez utiliser cette commande pour ajouter les points de terminaison du réseau précédemment configurés dans votre environnement situé sur site ou sur un autre cloud. Répétez --add-endpoint autant de fois que nécessaire.

Vous pouvez répéter ces étapes pour créer plusieurs NEG hybrides si nécessaire.

Configurer l'équilibreur de charge

Console

gcloud

  1. Créez une vérification d'état pour les backends.
       gcloud compute health-checks create http HTTP_HEALTH_CHECK_NAME \
           --region=REGION \
           --use-serving-port
       
    Les vérifications d'état des backends de NEG hybrides proviennent des proxys Envoy du sous-réseau proxy réservé, tandis que les vérifications des backends de NEG zonaux proviennent des [plages d'adresses IP de vérification centrales de Google](/load-balancing/docs/health-check-concepts#ip-ranges).
  2. Créez un service de backend. Ajoutez à la fois le NEG zonal et le NEG de connectivité hybride en tant que backends à ce service de backend.
      gcloud compute backend-services create BACKEND_SERVICE \
          --load-balancing-scheme=EXTERNAL_MANAGED \
          --protocol=HTTP \
          --health-checks=HTTP_HEALTH_CHECK_NAME \
          --health-checks-region=REGION \
          --region=REGION
      
  3. Ajoutez le NEG zonal en tant que backend au service de backend.
    gcloud compute backend-services add-backend BACKEND_SERVICE \
        --region=REGION \
        --balancing-mode=RATE \
        --max-rate-per-endpoint=MAX_REQUEST_RATE_PER_ENDPOINT \
        --network-endpoint-group=GCP_NEG_NAME \
        --network-endpoint-group-zone=GCP_NEG_ZONE
    
    Pour en savoir plus sur la configuration du mode d'équilibrage, consultez la documentation de gcloud CLI concernant le paramètre --max-rate-per-endpoint.
  4. Ajoutez le NEG hybride en tant que backend au service de backend :
    gcloud compute backend-services add-backend BACKEND_SERVICE \
        --region=REGION \
        --balancing-mode=RATE \
        --max-rate-per-endpoint=MAX_REQUEST_RATE_PER_ENDPOINT \
        --network-endpoint-group=ON_PREM_NEG_NAME \
        --network-endpoint-group-zone=ON_PREM_NEG_ZONE
    
    Pour en savoir plus sur la configuration du mode d'équilibrage, consultez la documentation de gcloud CLI concernant le paramètre --max-rate-per-endpoint.
  5. Créez un mappage d'URL pour acheminer les requêtes entrantes vers le service de backend :
    gcloud compute url-maps create URL_MAP_NAME \
        --default-service BACKEND_SERVICE \
        --region=REGION
    
  6. Facultatif : effectuez cette étape si vous utilisez HTTPS entre le client et l'équilibreur de charge. Cette opération n'est pas requise pour les équilibreurs de charge HTTP.

    Vous pouvez créer des certificats Compute Engine ou via le gestionnaire de certificats. Utilisez l'une des méthodes suivantes pour créer des certificats à l'aide du gestionnaire de certificats :

    • Certificats régionaux autogérés. Pour en savoir plus sur la création et l'utilisation de certificats autogérés régionaux, consultez la page Déployer un certificat régional autogéré. Les mappages de certificats ne sont pas acceptés.

    • Certificats régionaux gérés par Google. Les mappages de certificats ne sont pas acceptés.

      Les types de certificats régionaux gérés par Google suivants sont compatibles avec le gestionnaire de certificats :

    • Après avoir créé des certificats, associez-les directement au proxy cible.

      Pour créer une ressource de certificat SSL autogéré Compute Engine, procédez comme suit :
      gcloud compute ssl-certificates create SSL_CERTIFICATE_NAME \
          --certificate CRT_FILE_PATH \
          --private-key KEY_FILE_PATH
      
    • Créez un proxy HTTP(S) cible, qui va rediriger les requêtes vers votre mappage d'URL.

      Pour un équilibreur de charge HTTP, créez un proxy cible HTTP :
      gcloud compute target-http-proxies create TARGET_HTTP_PROXY_NAME \
          --url-map=URL_MAP_NAME \
          --url-map-region=REGION \
          --region=REGION
      
      Pour un équilibreur de charge HTTPS, créez un proxy cible HTTPS. Le serveur proxy est la partie de l'équilibreur de charge qui contient le certificat SSL pour l'équilibrage de charge HTTPS. Vous chargez donc également votre certificat à cette étape :
      gcloud compute target-https-proxies create TARGET_HTTPS_PROXY_NAME \
          --ssl-certificates=SSL_CERTIFICATE_NAME \
          --url-map=URL_MAP_NAME \
          --url-map-region=REGION \
          --region=REGION
      
    • Créez une règle de transfert pour acheminer les requêtes entrantes vers le proxy. N'utilisez pas le sous-réseau proxy réservé pour créer la règle de transfert.

      Pour un équilibreur de charge HTTP :
        gcloud compute forwarding-rules create HTTP_FORWARDING_RULE_NAME \
            --load-balancing-scheme=EXTERNAL_MANAGED \
            --network=NETWORK \
            --subnet=LB_SUBNET_NAME \
            --address=LB_IP_ADDRESS \
            --ports=80 \
            --region=REGION \
            --target-http-proxy=TARGET_HTTP_PROXY_NAME \
            --target-http-proxy-region=REGION
      
      Pour un équilibreur de charge HTTPS :
        gcloud compute forwarding-rules create HTTPS_FORWARDING_RULE_NAME \
            --load-balancing-scheme=EXTERNAL_MANAGED \
            --network=NETWORK \
            --subnet=LB_SUBNET_NAME \
            --address=LB_IP_ADDRESS \
            --ports=443 \
            --region=REGION \
            --target-http-proxy=TARGET_HTTPS_PROXY_NAME \
            --target-http-proxy-region=REGION
      

Connecter un domaine à votre équilibreur de charge

Une fois l'équilibreur de charge créé, notez l'adresse IP associée à celui-ci (par exemple, 30.90.80.100). Pour faire pointer votre domaine vers votre équilibreur de charge, créez un enregistrement A à l'aide de votre service d'enregistrement de domaine. Si vous avez ajouté plusieurs domaines à votre certificat SSL, vous devez ajouter un enregistrement A à chacun d'eux, tous pointant vers l'adresse IP de l'équilibreur de charge. Par exemple, pour créer des enregistrements A pour www.example.com et example.com, utilisez le code suivant :

NAME                  TYPE     DATA
www                   A        30.90.80.100
@                     A        30.90.80.100

Si vous utilisez Cloud DNS comme fournisseur DNS, consultez la section Ajouter, modifier et supprimer des enregistrements.

Tester l'équilibreur de charge

Maintenant que vous avez configuré votre équilibreur de charge, vous pouvez commencer à envoyer du trafic vers son adresse IP.

  1. Accédez à la page "Équilibrage de charge" dans Google Cloud Console.
    Accéder à la page "Équilibrage de charge"
  2. Cliquez sur l'équilibreur de charge que vous venez de créer.
  3. Notez l'adresse IP de l'équilibreur de charge.
  4. Envoyez du trafic vers l'équilibreur de charge.

    • Si vous avez créé un équilibreur de charge HTTP, vous pouvez le tester à l'aide d'un navigateur Web en accédant à http://IP_ADDRESS. Remplacez IP_ADDRESS par l'adresse IP de l'équilibreur de charge. Vous devriez être redirigé vers le service que vous avez exposé via le point de terminaison.

    • Si vous avez créé un équilibreur de charge HTTPS, vous pouvez le tester à l'aide de curl comme suit. Remplacez IP_ADDRESS par l'adresse IP de l'équilibreur de charge. Vous devriez être redirigé vers le service que vous avez exposé via le point de terminaison.

      curl -k https://IP_ADDRESS
      

      Si cela ne fonctionne pas et que vous utilisez un certificat géré par Google, vérifiez que l'état de votre ressource de certificat est ACTIF. Pour plus d'informations, consultez la section État des ressources de certificat SSL géré par Google. Testez ensuite le domaine pointant vers l'adresse IP de l'équilibreur de charge. Exemple :

      curl -s https://test.example.com
      
  5. Le test des points de terminaison autres que Google Cloud dépend du service que vous avez exposé via le point de terminaison NEG hybride.

Étape suivante