Présentation de Cloud Load Balancing

Un équilibreur de charge répartit le trafic des utilisateurs entre plusieurs instances de vos applications. En répartissant la charge, l'équilibrage de charge réduit le risque que vos applications rencontrent des problèmes de performances. Cloud Load Balancing de Google est développé sur des technologies fiables et très performantes, telles que Maglev, Andromeda, Google Front End et Envoy, qui sont les mêmes que les technologies des produits Google.

Cloud Load Balancing propose un portefeuille complet d'équilibreurs de charge réseau et d'application régionaux. Distribuez des millions de requêtes par seconde entre les backends d'une même région à l'aide de nos équilibreurs de charge. Vous pouvez configurer ces équilibreurs de charge pour qu'ils soient accessibles via une seule adresse IP anycast. Mettez en œuvre un contrôle juridictionnel renforcé avec nos équilibreurs de charge proxy régionaux, en maintenant vos backends et vos proxys dans votre région sans vous soucier du déchargement TLS/SSL. Utilisez nos équilibreurs de charge passthrough régionaux pour acheminer rapidement plusieurs protocoles vers des backends avec les hautes performances de DSR (retour serveur direct).

Présentation de Cloud Load Balancing
Présentation de Cloud Load Balancing (cliquez pour agrandir).

Fonctionnalités clés de Cloud Load Balancing

Cloud Load Balancing propose les fonctionnalités d'équilibreur de charge suivantes :

  • Adresse IP Anycast unique. Avec Cloud Load Balancing, une seule adresse IP anycast sert d'interface à toutes vos instances backend.

  • Autoscaling fluide. Cloud Load Balancing assure l'évolutivité de vos applications à mesure que le nombre d'utilisateurs et le volume du trafic augmentent. Par exemple, il peut gérer facilement d'importants pics instantanés et imprévus en redirigeant le trafic vers des backends situés dans d'autres zones moins sollicitées. L'autoscaling ne nécessite aucun préchauffage. Vous pouvez ainsi passer d'un trafic nul à un trafic maximal en quelques secondes. Cloud Load Balancing réagit instantanément aux changements liés aux utilisateurs, au trafic, au réseau, à l'état du backend et à d'autres conditions de ce type.

  • Équilibrage de charge défini par logiciel. Cloud Load Balancing est un service défini par logiciel, qui est entièrement géré et distribué pour tout votre trafic. Il ne s'agit pas d'une solution basée sur les instances ou les appareils. Par conséquent, vous n'êtes pas prisonnier d'une infrastructure d'équilibrage de charge. Vous pouvez également oublier les problèmes de haute disponibilité, d'évolutivité et de gestion liés à l'équilibrage de charge basé sur les instances.

  • Équilibrage de charge de couche 4 et de couche 7. Utilisez l'équilibrage de charge basé sur la couche 4 pour diriger le trafic en fonction des données des protocoles de couche réseau et de transport tels que TCP, UDP, ESP, GRE, ICMP et ICMPv6. Utilisez l'équilibrage de charge basé sur la couche 7 pour ajouter des décisions de routage des requêtes basées sur des attributs, tels que l'en-tête HTTP et l'identifiant de ressource uniforme.

  • Équilibrage de charge externe et interne. Définit si l'équilibreur de charge peut être utilisé pour l'accès externe ou interne. Vous pouvez utiliser un équilibreur de charge externe lorsque vos clients doivent accéder à votre application depuis Internet. Vous pouvez utiliser un équilibreur de charge interne lorsque vos clients se trouvent dansTrusted Cloud. Pour en savoir plus, consultez Équilibrage de charge externe et interne.

Types d'équilibreurs de charge Trusted Cloud

Cloud Load Balancing propose deux types d'équilibreurs de charge : les équilibreurs de charge d'application et les équilibreurs de charge réseau. Vous devez choisir un équilibreur de charge d'application lorsque vous avez besoin d'un équilibreur de charge de couche 7 pour vos applications avec du trafic HTTP(S). Vous devez choisir un équilibreur de charge réseau lorsque vous avez besoin d'un équilibreur de charge de couche 4 compatible avec le déchargement TLS (avec un équilibreur de charge proxy) ou lorsque vous avez besoin de protocoles IP tels que UDP, ESP et ICMP. (avec un équilibreur de charge passthrough).

Équilibreurs de charge d'application

Les équilibreurs de charge d'application sont des équilibreurs de charge basés sur un proxy de couche 7 qui vous permettent d'exécuter et de faire évoluer vos services derrière une adresse IP anycast. L'équilibreur de charge d'application répartit le trafic HTTP et HTTPS entre les backends hébergés sur diverses plates-formes Trusted Cloud , telles que Compute Engine et Google Kubernetes Engine (GKE), ainsi que les backends externes àTrusted Cloud.

Les équilibreurs de charge d'application peuvent être déployés en externe ou en interne, selon que votre application est Web ou interne. Dans les deux cas, ces équilibreurs de charge n'acceptent les backends que dans une seule région.

Le schéma suivant montre un exemple d'architecture de l'équilibreur de charge d'application.

Architecture de l'équilibreur de charge d'application.
Architecture de l'équilibreur de charge d'application (cliquez pour agrandir).

Équilibreurs de charge réseau

Les équilibreurs de charge réseau sont des équilibreurs de charge de couche 4 capables de gérer le trafic TCP, UDP ou autre protocole IP. Ces équilibreurs de charge sont disponibles en tant qu'équilibreurs de charge proxy ou directs. Vous pouvez choisir un équilibreur de charge en fonction des besoins de votre application et du type de trafic qu'il doit gérer. Choisissez un équilibreur de charge réseau proxy si vous souhaitez configurer un équilibreur de charge proxy inverse compatible avec les contrôles de trafic avancés et les backends sur site et dans d'autres environnements cloud. Choisissez un équilibreur de charge réseau passthrough si vous souhaitez conserver l'adresse IP source des paquets client, vous préférez le retour direct du serveur pour les réponses ou vous souhaitez gérer divers protocoles IP tels que TCP, UDP, ESP, GRE, ICMP et ICMPv6.

Équilibreurs de charge réseau proxy

Les équilibreurs de charge réseau proxy sont des équilibreurs de charge proxy inverse de couche 4 qui distribuent le trafic TCP aux instances de machines virtuelles (VM) de votre réseau VPC Trusted Cloud. Le trafic est interrompu au niveau de la couche d'équilibrage de charge, puis transmis au backend disponible le plus proche à l'aide du protocole TCP.

Les équilibreurs de charge réseau proxy peuvent être déployés en externe ou en interne, selon que votre application est Web ou interne : Dans les deux cas, ces équilibreurs de charge n'acceptent les backends que dans une seule région.

  • Les équilibreurs de charge réseau proxy externes régionaux sont des équilibreurs de charge de couche 4 qui distribuent le trafic provenant d'Internet aux backends de votre réseau VPC Trusted Cloud , sur site ou dans d'autres environnements cloud.
  • Les équilibreurs de charge réseau proxy internes régionaux sont des équilibreurs de charge régionaux de couche 4 basés sur un proxy Envoy qui vous permettent d'exécuter et d'effectuer le scaling de votre trafic de service TCP derrière une adresse IP interne accessible uniquement aux clients du même réseau VPC ou aux clients connectés à votre réseau VPC.

Le schéma suivant montre un exemple d'architecture d'équilibreur de charge réseau proxy.

Architecture de l'équilibreur de charge réseau proxy
Architecture de l'équilibreur de charge réseau proxy (cliquez pour agrandir)

Équilibreurs de charge réseau passthrough

Les équilibreurs de charge réseau passthrough sont des équilibreurs de charge passthrough régionaux de couche 4. Ces équilibreurs de charge répartissent le trafic entre les backends de la même région que l'équilibreur de charge. Ils sont mis en œuvre à l'aide de la mise en réseau virtuelle Andromeda et de Google Maglev.

Comme leur nom l'indique, ces équilibreurs de charge ne sont pas des proxys. Les paquets à équilibrage de charge sont reçus par les VM de backend avec les adresses IP source et de destination de paquet, le protocole et, si celui-ci est basé sur le port, les ports source et de destination inchangés. Les connexions à équilibrage de charge sont interrompues au niveau des backends. Les réponses provenant des VM backend vont directement aux clients. Elles ne passent pas par l'équilibreur de charge. Le terme utilisé dans le secteur est retour direct du serveur.

Ces équilibreurs de charge, comme illustré dans l'image suivante, sont déployés dans deux modes, selon qu'ils sont Web ou internes.

  • Les équilibreurs de charge réseau externes passthrough sont basés sur Maglev. Les clients peuvent se connecter à ces équilibreurs de charge depuis n'importe où sur Internet, quels que soient leurs niveaux de service réseau. L'équilibreur de charge peut également recevoir du trafic provenant de VM Trusted Cloud avec des adresses IP externes ou de VM Trusted Cloud ayant accès à Internet via Cloud NAT ou une NAT basée sur une instance.

    Les backends des équilibreurs de charge réseau passthrough externes peuvent être déployés à l'aide d'un service de backend ou d'un pool cible. Pour les nouveaux déploiements, nous vous recommandons d'utiliser des services de backend.

  • Les équilibreurs de charge réseau internes passthrough sont basés sur la pile de virtualisation de réseau Andromeda. Un équilibreur de charge réseau interne passthrough vous permet d'équilibrer la charge du trafic TCP/UDP derrière une adresse IP d'équilibrage de charge interne accessible uniquement aux systèmes du même réseau VPC ou des systèmes connectés à votre réseau VPC. Cet équilibreur de charge ne peut être configuré qu'avec le niveau Premium.

Le schéma suivant montre un exemple d'architecture directe d'équilibreur de charge réseau passthrough.

Architecture de l'équilibreur de charge réseau passthrough
Architecture de l'équilibreur de charge réseau passthrough (cliquez pour agrandir)

Technologies sous-jacentes des équilibreurs de charge Trusted Cloud

Le tableau suivant liste la technologie sous-jacente sur laquelle chaque équilibreur de chargeTrusted Cloud est basé.

  • Les Google Front Ends (GFE) sont des systèmes distribués définis par logiciel qui sont situés dans les points de présence Google (POP) et assurent un équilibrage de charge global conjointement avec d'autres systèmes et plans de contrôle.
  • Andromeda est la pile de virtualisation de réseau définie par logiciel de Google Cloud.
  • Maglev est un système distribué pour l'équilibrage de charge réseau.
  • Envoy est un proxy de service et de périphérie Open Source, conçu pour les applications cloud natives.
Équilibreur de charge Technologie
Équilibreur de charge d'application externe régional Envoy
Équilibreur de charge d'application interne régional Envoy
Équilibreur de charge réseau proxy externe régional Envoy
Équilibreur de charge réseau proxy interne régional Envoy
Équilibreur de charge réseau passthrough externe Maglev
Équilibreur de charge réseau passthrough interne Andromeda

Choisir un équilibreur de charge

Pour déterminer le produit Cloud Load Balancing à utiliser, vous devez d'abord déterminer le type de trafic que vos équilibreurs de charge doivent gérer. En règle générale, il est préférable de choisir un équilibreur de charge d'application lorsque vous avez besoin d'un ensemble de fonctionnalités flexible pour vos applications avec du trafic HTTP(S). De plus, vous devez choisir un équilibreur de charge réseau lorsque vous avez besoin du déchargement TLS à grande échelle ou qu'il est compatible avec UDP, ou si vous devez exposer des adresses IP clientes à vos applications.

Vous pouvez affiner vos choix selon que votre application est externe (Web) ou interne.

Le schéma suivant illustre tous les modes de déploiement disponibles pour Cloud Load Balancing. Pour en savoir plus, consultez le guide Choisir un équilibreur de charge.

Choisir un équilibreur de charge
Choisir un équilibreur de charge (cliquez pour agrandir).

Récapitulatif des types d'équilibreurs de charge Trusted Cloud

Le tableau suivant fournit des informations, telles que le niveau de service réseau sur lequel chaque équilibreur de charge fonctionne, ainsi que son schéma d'équilibrage de charge.

Équilibreur de charge Mode de déploiement Type de trafic Niveau de service réseau Schéma d'équilibrage de charge1
Équilibreurs de charge d'application Externe régional HTTP ou HTTPS Niveau Premium ou Standard EXTERNAL_MANAGED
Régional interne HTTP ou HTTPS Niveau Premium INTERNAL_MANAGED
Équilibreurs de charge réseau proxy Externe régional TCP Niveau Premium ou Standard EXTERNAL_MANAGED
Régional interne TCP sans déchargement SSL Niveau Premium INTERNAL_MANAGED
Équilibreurs de charge réseau passthrough

Externe

Toujours régional

TCP, UDP, ESP, GRE, ICMP et ICMPv6 Niveau Premium ou Standard EXTERNAL

Interne

Toujours régional

TCP, UDP, ICMP, ICMPv6, SCTP, ESP, AH et GRE Niveau Premium INTERNAL

1 Le schéma d'équilibrage de charge est un attribut de la règle de transfert et du service de backend d'un équilibreur de charge qui indique si l'équilibreur de charge peut être utilisé pour le trafic interne ou externe.

Le terme géré dans EXTERNAL_MANAGED ou INTERNAL_MANAGED indique que l'équilibreur de charge est implémenté en tant que service géré sur un Google Front End (GFE) ou sur le proxy Envoy Open Source. Dans un schéma d'équilibrage de charge géré, les requêtes sont acheminées vers GFE ou vers le proxy Envoy.

Interfaces

Vous pouvez configurer et mettre à jour vos équilibreurs de charge via les interfaces suivantes :

  • Google Cloud CLI : outil de ligne de commande inclus dans Google Cloud CLI. La documentation appelle fréquemment cet outil pour effectuer des tâches. Pour une présentation complète de l'outil, consultez le guide de gcloud CLI. Vous trouverez des commandes associées à l'équilibrage de charge dans la section dédiée au groupe de commandes gcloud compute.

    Vous pouvez également obtenir une assistance approfondie pour n'importe quelle commande gcloud à l'aide de l'option --help.

    gcloud compute http-health-checks create --help
    
  • La consoleTrusted Cloud  : les tâches d'équilibrage de charge peuvent être effectuées à l'aide de la consoleTrusted Cloud .

  • L'API REST : toutes les tâches d'équilibrage de charge peuvent être réalisées à l'aide de l'API Cloud Load Balancing. La documentation de référence de l'API décrit les ressources et les méthodes mises à votre disposition.

  • Terraform : vous pouvez provisionner, mettre à jour et supprimer l'infrastructure d'équilibrage de charge Trusted Cloudà l'aide d'un outil d'infrastructure sous forme de code Open Source tel que Terraform.

Étapes suivantes