Ce guide fournit des instructions pour créer un déploiement d'équilibreur de charge réseau passthrough externe à l'aide d'un service de backend régional. Cet exemple crée un équilibreur de charge réseau passthrough externe qui accepte le trafic TCP ou UDP. Si vous souhaitez créer un équilibreur de charge réseau passthrough externe qui équilibre le trafic TCP, UDP, ESP, GRE, ICMP et ICMPv6 (pas seulement TCP ou UDP), consultez la page Configurer un équilibreur de charge réseau passthrough externe pour plusieurs protocoles IP.
Dans cet exemple, nous utilisons l'équilibreur de charge pour répartir le trafic TCP entre les VM de backend de deux groupes d'instances gérés zonaux dans la région us-central1
. Une approche tout aussi valide consiste à utiliser un seul groupe d'instances géré régional pour la région us-central1
.
Ce scénario répartit le trafic TCP entre les instances saines. Dans le cadre de cet exemple, des vérifications d'état TCP sont configurées pour garantir que le trafic n'est envoyé qu'aux instances saines. Notez que les vérifications d'état TCP ne sont compatibles qu'avec un équilibreur de charge basé sur le service de backend. Les équilibreurs de charge basés sur un pool cible ne peuvent utiliser que les anciennes vérifications d'état HTTP.
Cet exemple de charge équilibre le trafic TCP, mais vous pouvez utiliser des équilibreurs de charge réseau passthrough externes basés sur un service de backend pour équilibrer le trafic TCP, UDP, ESP, GRE, ICMP et ICMPv6.
L'équilibreur de charge réseau passthrough externe est un équilibreur de charge régional. Tous les composants de l'équilibreur de charge (VM de backend, service de backend et règle de transfert) doivent se trouver dans la même région.
Avant de commencer
Installez Google Cloud CLI. Pour une présentation complète de l'outil, consultez la présentation de gcloud CLI. Vous trouverez des commandes liées à l'équilibrage de charge dans la documentation de référence sur l'API et sur gcloud.
Si vous n'avez pas encore utilisé Google Cloud CLI, exécutez d'abord la commande gcloud init
pour vous authentifier.
Dans ce guide, nous partons du principe que vous maîtrisez bash.
Configurer le réseau et les sous-réseaux
L'exemple de cette page utilise un réseau VPC en mode personnalisé nommé lb-network
. Vous pouvez utiliser un réseau VPC en mode automatique si vous souhaitez uniquement gérer le trafic IPv4.
Cependant, le trafic IPv6 requiert un sous-réseau en mode personnalisé.
Le trafic IPv6 nécessite également un sous-réseau dual stack (stack-type
défini sur IPv4_IPv6
). Lorsque vous créez un sous-réseau à deux piles sur un réseau VPC en mode personnalisé, choisissez un type d'accès IPv6 pour le sous-réseau. Pour cet exemple, nous définissons le paramètre ipv6-access-type
du sous-réseau sur EXTERNAL
. Cela signifie que les nouvelles VM de ce sous-réseau peuvent se voir attribuer des adresses IPv4 externes et des adresses IPv6 externes.
Les backends et les composants de l'équilibreur de charge utilisés pour cet exemple sont situés dans cette région et ce sous-réseau :
- Région :
us-central1
- Sous-réseau:
lb-subnet
, avec plage d'adresses IPv4 principale10.1.2.0/24
. Bien que vous choisissiez la plage d'adresses IPv4 configurée sur le sous-réseau, la plage d'adresses IPv6 est attribuée automatiquement. Google fournit un bloc CIDR IPv6 de taille fixe (/64).
Pour créer les exemples de réseau et de sous-réseaux, procédez comme suit :
Console
Pour assurer la compatibilité avec le trafic IPv4 et IPv6, procédez comme suit:
Dans Google Cloud Console, accédez à la page Réseaux VPC.
Cliquez sur Créer un réseau VPC.
Saisissez le nom
lb-network
.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, configurez les champs suivants, puis cliquez sur OK :
- Nom :
lb-subnet
- Région :
us-central1
- Type de pile d'adresses IP: IPv4 et IPv6 (double pile)
- Plage IPv4:
10.1.2.0/24
Bien que vous puissiez configurer une plage d'adresses IPv4 pour le sous-réseau, vous ne pouvez pas choisir la plage d'adresses IPv6 pour Le sous-réseau. Google fournit un bloc CIDR IPv6 de taille fixe (/64). - Type d'accès IPv6: Externe
- Nom :
Cliquez sur Créer.
Pour assurer la compatibilité avec le trafic IPv4 uniquement, procédez comme suit :
Dans Google Cloud Console, accédez à la page Réseaux VPC.
Cliquez sur Créer un réseau VPC.
Saisissez le nom
lb-network
.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, configurez les champs suivants, puis cliquez sur OK :
- Nom :
lb-subnet
- Région :
us-central1
- Type de pile IP: IPv4 (single Stack)
- Plage IPv4 :
10.1.2.0/24
- Nom :
Cliquez sur Créer.
gcloud
Créez le réseau VPC en mode personnalisé:
gcloud compute networks create lb-network \ --subnet-mode=custom
Au sein du réseau
lb-network
, créez un sous-réseau pour les backends dans la régionus-central1
.Pour le trafic IPv4 et IPv6, utilisez la commande suivante pour créer un sous-réseau à double pile :
gcloud compute networks subnets create lb-subnet \ --stack-type=IPV4_IPv6 \ --ipv6-access-type=EXTERNAL \ --network=lb-network \ --range=10.1.2.0/24 \ --region=us-central1
Pour le trafic IPv4 uniquement, utilisez la commande suivante:
gcloud compute networks subnets create lb-subnet \ --network=lb-network \ --range=10.1.2.0/24 \ --region=us-central1
Créer les groupes d'instances gérés zonaux
Dans ce scénario d'équilibrage de charge, vous allez créer deux groupes d'instances gérés zonaux Compute Engine et installer un serveur Web Apache sur chaque instance.
Pour gérer le trafic IPv4 et IPv6, configurez les VM backend en une pile double. Définissez le paramètre stack-type
de la VM sur IPv4_IPv6
. Les VM héritent également du paramètre ipv6-access-type
(dans cet exemple, EXTERNAL
) du sous-réseau. Pour en savoir plus sur les exigences IPv6, consultez la page Présentation de l'équilibreur de charge réseau passthrough externe : règles de transfert.
Pour utiliser des VM existantes comme backends, mettez-les à jour en pile double à l'aide de la commande gcloud compute instances network-interfaces
update
.
Les instances qui participent en tant que VM backend pour les équilibreurs de charge réseau passthrough externes doivent exécuter l'environnement invité Linux, l'environnement invité Windows ou d'autres processus appropriés présentant des fonctionnalités équivalentes.
Configurer les instances
Console
Créez un modèle d'instance. Dans Google Cloud Console, accédez à la page Modèles d'instances.
Accéder à la page Modèles d'instances
- Cliquez sur Create instance template (Créer un modèle d'instance).
- Dans le champ Nom, saisissez
ig-us-template
. - Dans la section Disque de démarrage, assurez-vous que l'image est définie sur une image Debian, telle que Debian GNU/Linux 10 (buster). Ces instructions utilisent des commandes uniquement disponibles dans Debian, comme
apt-get
. - Cliquez sur Options avancées.
- Cliquez sur Mise en réseau.
- Pour Tags réseau, saisissez
lb-tag
. - Pour Interfaces réseau, cliquez sur l'interface default et configurez les champs suivants :
- Réseau :
lb-network
- Sous-réseau :
lb-subnet
- Réseau :
- Cliquez sur OK.
- Pour Tags réseau, saisissez
Cliquez sur Gestion et copiez 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
Cliquez sur Créer.
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"
- Cliquez sur Créer un groupe d'instances.
- Sélectionnez 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.
- Dans le champ Nom, saisissez
ig-us-1
. - Pour Modèle d'instance, sélectionnez
ig-us-template
. - Pour Emplacement, sélectionnez Zone unique.
- Pour Région, sélectionnez
us-central1
. - Pour Zone, sélectionnez
us-central1-a
. Spécifiez le nombre d'instances que vous souhaitez créer au sein du groupe.
Pour cet exemple, spécifiez les options suivantes dans la section Autoscaling :
- Dans le champ Mode autoscaling, sélectionnez
Off:do not autoscale
. - Dans le champ Nombre maximal d'instances, saisissez
2
.
- Dans le champ Mode autoscaling, sélectionnez
Cliquez sur Create (Créer).
Répétez les étapes précédentes pour créer un deuxième groupe d'instances géré dans la zone
us-central1-c
avec les spécifications suivantes :- Nom :
ig-us-2
- Zone :
us-central1-c
- Modèle d'instance : utilisez le même modèle
ig-us-template
que celui créé dans la section précédente.
- Nom :
gcloud
Les instructions gcloud
de ce guide supposent que vous utilisez Cloud Shell ou un autre environnement avec bash installé.
Créez un modèle d'instance de VM avec le serveur HTTP à l'aide de la commande
gcloud compute instance-templates create
.Pour gérer le trafic IPv4 et IPv6, utilisez la commande suivante.
gcloud compute instance-templates create ig-us-template \ --region=us-central1 \ --network=lb-network \ --subnet=lb-subnet \ --ipv6-network-tier=PREMIUM \ --stack-type=IPv4_IPv6 \ --tags=lb-tag \ --image-family=debian-10 \ --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'
Pour gérer le trafic IPv4 uniquement, utilisez la commande suivante.
gcloud compute instance-templates create ig-us-template \ --region=us-central1 \ --network=lb-network \ --subnet=lb-subnet \ --tags=lb-tag \ --image-family=debian-10 \ --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'
Créez un groupe d'instances géré dans la zone à l'aide de la commande
gcloud compute instance-groups managed create
.gcloud compute instance-groups managed create ig-us-1 \ --zone us-central1-a \ --size 2 \ --template ig-us-template
Créez un deuxième groupe d'instances géré dans la zone
us-central1-c
:gcloud compute instance-groups managed create ig-us-2 \ --zone us-central1-c \ --size 2 \ --template ig-us-template
Configurer les règles de pare-feu
Créez des règles de pare-feu permettant au trafic externe (qui inclut les tests de vérification d'état) d'atteindre les instances backend.
Cet exemple crée une règle de pare-feu permettant au trafic TCP de toutes les plages sources d'atteindre vos instances backend sur le port 80. Si vous souhaitez créer des règles de pare-feu distinctes qui sont spécifiques aux vérifications d'état, utilisez les plages d'adresses IP sources décrites dans la section Présentation des vérifications d'état: plages d'adresses IP de vérification et règles de pare-feu.
Console
Dans la console Google Cloud, accédez à la page Règles d'administration.
Pour autoriser le trafic IPv4, procédez comme suit :
- Cliquez sur Créer une règle de pare-feu.
- Dans le champ Nom, saisissez
allow-network-lb-ipv4
. - Dans la liste Réseau, sélectionnez
lb-network
. - Pour Cibles, sélectionnez Specified target tags (Tags cibles spécifiés).
- Dans le champ Tags cibles, saisissez
lb-tag
. - Dans la section Filtre source, sélectionnez Plages IPv4.
- Définissez les plages IPv4 sources sur
0.0.0.0/0
. Cela autorise le trafic IPv4 depuis n'importe quelle source. Cela permet également aux vérifications d'état de Google d'atteindre les instances backend. - Dans le champ Protocoles et ports spécifiés, cochez la case TCP, puis saisissez
80
. - Cliquez sur Créer. L'affichage de la nouvelle règle de pare-feu dans Google Cloud Console peut prendre un certain temps. Vous devrez peut-être cliquer sur Actualiser pour qu'elle apparaisse.
Pour autoriser le trafic IPv6, procédez comme suit :
- Cliquez à nouveau sur Créer une règle de pare-feu.
- Dans le champ Nom, saisissez
allow-network-lb-ipv6
. - Dans la liste Réseau, sélectionnez
lb-network
. - Pour Cibles, sélectionnez Specified target tags (Tags cibles spécifiés).
- Dans le champ Tags cibles, saisissez
lb-tag
. - Dans la section Filtre source, sélectionnez Plages IPv6.
- Définissez les plages IPv6 sources sur
::/0
. Cela autorise le trafic IPv6 depuis n'importe quelle source. Cela permet également aux vérifications d'état de Google d'atteindre les instances backend. - Dans le champ Protocoles et ports spécifiés, cochez la case TCP, puis saisissez
80
. - Cliquez sur Créer. L'affichage de la nouvelle règle de pare-feu dans la console peut prendre un certain temps. Vous devrez peut-être cliquer sur Actualiser pour qu'elle apparaisse.
gcloud
Pour autoriser le trafic IPv4, exécutez la commande suivante:
gcloud compute firewall-rules create allow-network-lb-ipv4 \ --network=lb-network \ --target-tags=lb-tag \ --allow=tcp:80 \ --source-ranges=0.0.0.0/0
Pour autoriser le trafic IPv6, exécutez la commande suivante:
gcloud compute firewall-rules create allow-network-lb-ipv6 \ --network=lb-network \ --target-tags=lb-tag \ --allow=tcp:80 \ --source-ranges=::/0
Configurer l'équilibreur de charge
Configurez ensuite l'équilibreur de charge.
Lorsque vous configurez l'équilibreur de charge, vos instances de machines virtuelles (VM) reçoivent les paquets destinés à l'adresse IP externe statique configurée. Si vous utilisez une image fournie par Compute Engine, vos instances de VM sont automatiquement configurées pour gérer cette adresse IP. Si vous utilisez une autre image, vous devez configurer cette adresse en tant qu'alias sur eth0
ou en tant qu'adresse de rebouclage sur chaque instance.
Console
Démarrer la configuration
Dans Google Cloud Console, accédez à la page Équilibrage de charge.
- Cliquez sur Créer un équilibreur de charge.
- Sous Type d'équilibreur de charge, sélectionnez Équilibreur de charge réseau (TCP/UDP/SSL), puis cliquez sur Suivant.
- Pour Proxy ou passthrough, sélectionnez Équilibreur de charge passthrough, puis cliquez sur Suivant.
- Pour Public ou interne, sélectionnez Public (externe), puis cliquez sur Suivant.
- Cliquez sur Configurer.
Configuration du backend
- Sur la page Créer un équilibreur de charge réseau passthrough externe, saisissez le nom
tcp-network-lb
du nouvel équilibreur de charge. - Pour Région, sélectionnez
us-central1
. - Cliquez sur Configuration du backend.
- Sur l'écran Configuration du backend, apportez les modifications suivantes :
- Sous Nouveau backend, sélectionnez le type de pile IP. Si vous avez créé des backends de pile double pour gérer le trafic IPv4 et IPv6, sélectionnez IPv4 et IPv6 (double pile). Pour ne gérer que le trafic IPv4, sélectionnez IPv4 (pile unique).
- Dans la liste Groupe d'instances, sélectionnez
ig-us-1
, puis cliquez sur Terminé. - Cliquez sur Ajouter un backend et répétez cette étape pour ajouter
ig-us-2
. - Pour Vérification d'état, cliquez sur Créer une vérification d'état ou Créer une autre vérification d'état, puis saisissez les informations suivantes :
- Nom :
tcp-health-check
- Protocole :
TCP
- Port :
80
- Nom :
- Cliquez sur Enregistrer.
- Vérifiez qu'une coche bleue apparaît à côté de Configuration du backend avant de continuer.
Configuration de l'interface
- Cliquez sur Configuration de l'interface.
- Dans le champ Nom, saisissez
network-lb-forwarding-rule
. - Pour gérer le trafic IPv4, procédez comme suit :
- Pour Version IP, sélectionnez IPv4.
- Dans la section Objectif de l'adresse IP interne, dans la liste Adresse IP, sélectionnez Créer une adresse IP.
- Sur la page Réserver une nouvelle adresse IP statique, saisissez
network-lb-ipv4
dans le champ Nom. - Cliquez sur Réserver.
- Sur la page Réserver une nouvelle adresse IP statique, saisissez
- Dans le champ Ports, sélectionnez Unique. Pour Numéro de port, saisissez
80
. - Cliquez sur OK.
Pour gérer le trafic IPv6, procédez comme suit :
- Pour Version IP, sélectionnez IPv6.
- Pour le Sous-réseau, sélectionnez lb-subnet.
- Dans la liste Plage IPv6, sélectionnez Créer une adresse IP.
- Sur la page Réserver une nouvelle adresse IP statique, saisissez
network-lb-ipv6
dans le champ Nom. - Cliquez sur Réserver.
- Sur la page Réserver une nouvelle adresse IP statique, saisissez
- Pour Ports, sélectionnez Unique. Pour Numéro de port, saisissez
80
. - Cliquez sur OK.
Si un cercle bleu avec une coche s'affiche à gauche de Configuration du frontend, cela indique que la configuration a réussi.
Vérifier la configuration
- Cliquez sur Vérifier et finaliser.
- Vérifiez les paramètres de configuration de votre équilibreur de charge.
- Facultatif : cliquez sur Code équivalent pour afficher la requête API REST qui sera utilisée pour créer l'équilibreur de charge.
Cliquez sur Créer.
Sur l'écran Équilibrage de charge, sous la colonne Backend qui concerne votre nouvel équilibreur de charge, vous devriez voir une coche verte indiquant que celui-ci est opérationnel.
gcloud
Réservez une adresse IP externe statique.
Pour le trafic IPv4 : créez une adresse IPv4 externe statique pour votre équilibreur de charge.
gcloud compute addresses create network-lb-ipv4 \ --region us-central1
Pour le trafic IPv6 : créez une plage d'adresses IPv6 externe statique pour votre équilibreur de charge. Le sous-réseau utilisé doit être un sous-réseau à double pile avec une plage IPv6 externe.
gcloud compute addresses create network-lb-ipv6 \ --region us-central1 \ --subnet lb-subnet \ --ip-version IPV6 \ --endpoint-type NETLB
Créer une vérification d'état TCP
gcloud compute health-checks create tcp tcp-health-check \ --region us-central1 \ --port 80
Créez un service de backend :
gcloud compute backend-services create network-lb-backend-service \ --protocol TCP \ --health-checks tcp-health-check \ --health-checks-region us-central1 \ --region us-central1
Ajoutez les deux groupes d'instances au service de backend :
gcloud compute backend-services add-backend network-lb-backend-service \ --instance-group ig-us-1 \ --instance-group-zone us-central1-a \ --region us-central1
gcloud compute backend-services add-backend network-lb-backend-service \ --instance-group ig-us-2 \ --instance-group-zone us-central1-c \ --region us-central1
Créez les règles de transfert selon que vous souhaitez gérer le trafic IPv4 ou IPv6. Créez les deux règles de transfert pour gérer ces deux types de trafic.
Pour le trafic IPv4 : créez une règle de transfert pour acheminer le trafic TCP entrant vers le service de backend. Utilisez l'adresse IPv4 réservée à l'étape 1 comme adresse IP externe statique de l'équilibreur de charge.
gcloud compute forwarding-rules create network-lb-forwarding-rule-ipv4 \ --load-balancing-scheme EXTERNAL \ --region us-central1 \ --ports 80 \ --address network-lb-ipv4 \ --backend-service network-lb-backend-service
Pour le trafic IPv6 : créez une règle de transfert pour gérer le trafic IPv6. Utilisez la plage d'adresses IPv6 réservée à l'étape 1 comme adresse IP externe statique de l'équilibreur de charge. Le sous-réseau utilisé doit être un sous-réseau à double pile avec une plage de sous-réseau IPv6 externe.
gcloud compute forwarding-rules create network-lb-forwarding-rule-ipv6 \ --load-balancing-scheme EXTERNAL \ --region us-central1 \ --network-tier PREMIUM \ --ip-version IPV6 \ --subnet lb-subnet \ --address network-lb-ipv6 \ --ports 80 \ --backend-service network-lb-backend-service
Tester l'équilibreur de charge
Maintenant que le service d'équilibrage de charge est configuré, vous pouvez commencer à envoyer le trafic vers l'adresse IP externe de l'équilibreur de charge et surveiller le trafic qui est distribué aux instances backend.
Rechercher l'adresse IP externe de l'équilibreur de charge
Console
Sur la page Composants de l'équilibrage de charge, accédez à l'onglet Règles de transfert.
Localisez la règle de transfert utilisée par l'équilibreur de charge.
Notez l'adresse IP externe indiquée dans la colonne Adresse IP externe.
gcloud: IPv4
Saisissez la commande suivante pour afficher l'adresse IPv4 externe de la règle de transfert network-lb-forwarding-rule
utilisée par l'équilibreur de charge.
gcloud compute forwarding-rules describe network-lb-forwarding-rule-ipv4 \ --region us-central1
gcloud: IPv6
Saisissez la commande suivante pour afficher l'adresse IPv6 externe de la règle de transfert network-lb-forwarding-rule
utilisée par l'équilibreur de charge.
gcloud compute forwarding-rules describe network-lb-forwarding-rule-ipv6 \ --region us-central1
Envoyer du trafic vers l'équilibreur de charge
Envoyez des requêtes Web à l'équilibreur de charge à l'aide de curl
pour contacter son adresse IP.
À partir de clients disposant d'une connectivité IPv4, exécutez la commande suivante:
$ while true; do curl -m1 IPV4_ADDRESS; done
À partir de clients disposant d'une connectivité IPv6, exécutez la commande suivante:
$ while true; do curl -m1 http://IPV6_ADDRESS; done
Par exemple, si l'adresse IPv6 attribuée est
[2001:db8:1:1:1:1:1:1/96]:80
, la commande doit se présenter comme suit:$ while true; do curl -m1 http://[2001:db8:1:1:1:1:1:1]:80; done
Notez le texte renvoyé par la commande curl
. Le nom de la VM de backend qui génère la réponse est affiché dans ce texte, par exemple : Page served
from: VM_NAME
.
La réponse de la commande curl
est alternée de manière aléatoire entre les instances de backend. En cas d'échec au début de la phase de réponse, il vous faudra probablement patienter environ 30 secondes pour que la configuration soit entièrement chargée et que vos instances soient identifiées comme saines avant de réessayer :
Options de configuration supplémentaires
Cette section développe l'exemple de configuration et fournit des instructions pour personnaliser davantage votre équilibreur de charge réseau passthrough externe. Ces tâches sont facultatives. Vous pouvez les exécuter dans n'importe quel ordre.
Configurer l'affinité de session
L'exemple de configuration crée un service de backend avec l'affinité de session désactivée (valeur définie sur NONE
). Cette section explique comment mettre à jour le service de backend afin de modifier le paramètre d'affinité de session de l'équilibreur de charge.
Pour découvrir les types d'affinité de session compatibles, consultez la section Options d'affinité de session.
Console
Dans la console Google Cloud, accédez à la page Équilibrage de charge.
Dans l'onglet Équilibreurs de charge, cliquez sur le nom du service de backend, puis sur Modifier.
Sur la page Modifier l'équilibreur de charge réseau passthrough externe, cliquez sur Configuration du backend.
Sélectionnez une option dans la liste Affinité de session.
Cliquez sur Update (Mettre à jour).
gcloud
Utilisez la commande gcloud
suivante pour mettre à jour l'affinité de session pour le service de backend :
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --session-affinity=SESSION_AFFINITY_OPTION
Remplacez les espaces réservés par des valeurs valides :
BACKEND_SERVICE
: le service de backend que vous mettez à jourSESSION_AFFINITY_OPTION
: l'option d'affinité de session que vous souhaitez définirPour obtenir la liste des valeurs acceptées pour un équilibreur de charge réseau passthrough externe, consultez la page Options d'affinité de session.
Configurer une règle de suivi des connexions
L'exemple de configuration crée un service de backend avec les paramètres par défaut de sa règle de suivi des connexions. Cette section explique comment mettre à jour le service de backend afin de modifier la règle de suivi des connexions par défaut de l'équilibreur de charge.
Une règle de suivi des connexions inclut les paramètres suivants :
- Mode de suivi
- Persistance des connexions sur les backends non opérationnels
- Délai d'inactivité (60 secondes, non configurable)
gcloud
Exécutez la commande gcloud compute
backend-services
suivante pour mettre à jour la règle de suivi des connexions pour le service de backend :
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --tracking-mode=TRACKING_MODE \ --connection-persistence-on-unhealthy-backends=CONNECTION_PERSISTENCE_BEHAVIOR
Remplacez les espaces réservés par des valeurs valides :
BACKEND_SERVICE
: le service de backend que vous mettez à jourTRACKING_MODE
: le mode de suivi des connexions à utiliser pour les paquets entrants. Pour obtenir la liste des valeurs acceptées, consultez la section Mode de suivi.CONNECTION_PERSISTENCE_BEHAVIOR
: comportement de persistance de connexion lorsque les backends ne sont pas opérationnels. Pour obtenir la liste des valeurs acceptées, consultez la section Persistance des connexions sur les backends non opérationnels.
Configurer l'orientation du trafic
Cette section explique comment mettre à jour la configuration du frontend d'un équilibreur de charge pour configurer l'orientation du trafic basé sur l'adresse IP source. Pour en savoir plus sur le fonctionnement de l'orientation du trafic, consultez la page Orientation du trafic.
Dans ces instructions, nous partons du principe que vous avez déjà créé la règle de transfert parente de base. Cet exemple crée une deuxième règle de transfert, qui est la règle de transfert d'orientation, avec la même adresse IP, le même protocole IP et les mêmes ports que la règle parente. Cette règle de transfert d'orientation est configurée avec des plages d'adresses IP sources afin que vous puissiez personnaliser la manière dont les paquets provenant de ces plages d'adresses IP sources sont transférés.
gcloud
Utilisez la commande suivante pour créer une règle de transfert d'orientation pointant vers un service de backend :
gcloud compute forwarding-rules create STEERING_FORWARDING_RULE_BS \ --load-balancing-scheme=EXTERNAL \ --backend-service=BACKEND_SERVICE \ --address=LOAD_BALANCER_VIP \ --ip-protocol=IP_PROTOCOL \ --ports=PORTS \ --region=REGION \ --source-ip-ranges=SOURCE_IP_ADDRESS_RANGES
Exécutez la commande suivante pour créer une règle de transfert d'orientation pointant vers une instance cible :
gcloud compute forwarding-rules create STEERING_FORWARDING_RULE_TI \ --load-balancing-scheme=EXTERNAL \ --target-instance=TARGET_INSTANCE \ --address=LOAD_BALANCER_VIP \ --ip-protocol=IP_PROTOCOL \ --ports=PORTS \ --region=REGION \ --source-ip-ranges=SOURCE_IP_ADDRESS_RANGES
Remplacez les espaces réservés par des valeurs valides :
FORWARDING_RULE
: nom de la règle de transfert d'orientation que vous créez.BACKEND_SERVICE
ouTARGET_INSTANCE
: nom du service de backend ou de l'instance cible vers laquelle cette règle de transfert d'orientation envoie du trafic. Même si la règle de transfert parente pointe vers un service de backend, vous pouvez créer des règles de transfert d'orientation pointant vers des instances cibles.LOAD_BALANCER_VIP
,IP_PROTOCOL
,PORTS
: respectivement l'adresse IP, le protocole IP et les ports pour la règle de transfert d'orientation que vous créez. Ces paramètres doivent correspondre à une règle de transfert de base préexistante.REGION
: région de la règle de transfert que vous créez.SOURCE_IP_ADDRESS_RANGES
: liste d'adresses IP ou de plages d'adresses IP séparées par des virgules. Cette règle de transfert ne transfère du trafic que lorsque l'adresse IP source du paquet entrant appartient à l'une des plages d'adresses IP définies ici.
Utilisez la commande suivante pour supprimer une règle de transfert d'orientation. Vous devez supprimer toutes les règles de transfert d'orientation utilisées par un équilibreur de charge avant de pouvoir supprimer l'équilibreur de charge à proprement parler.
gcloud compute forwarding-rules delete STEERING_FORWARDING_RULE \ --region=REGION
Configurer la règle de basculement
Pour configurer la règle de basculement, consultez la page Configurer le basculement pour les équilibreurs de charge réseau passthrough externes.
Configurer l'équilibrage de charge pondéré
Pour configurer l'équilibrage de charge pondéré, consultez la page Configurer l'équilibrage de charge pondéré.
Étapes suivantes
- Pour apprendre à migrer un équilibreur de charge réseau passthrough externe depuis un backend de pool cible vers un service de backend régional, consultez la page Migrer des équilibreurs de charge réseau passthrough externes depuis des pools cibles vers des services de backend.
- Pour configurer un équilibreur de charge réseau passthrough externe pour plusieurs protocoles IP (compatible avec le trafic IPv4 et IPv6), consultez la page Configurer un équilibreur de charge réseau passthrough externe pour plusieurs protocoles IP.
- Pour configurer un équilibreur de charge réseau passthrough externe avec des backends de groupes de points de terminaison du réseau (NEG) zonaux qui vous permettent de transférer des paquets vers des interfaces réseau non-
nic0
d'instances de VM, consultez la page Configurer un équilibreur de charge réseau passthrough externe avec des backends de NEG zonaux - Pour configurer la protection DDoS avancée du réseau pour un équilibreur de charge réseau passthrough externe à l'aide de Google Cloud Armor, consultez la section Configurer la protection DDoS avancée du réseau.
- Pour supprimer des ressources, consultez la page Nettoyer la configuration de l'équilibreur de charge.