Présentation des groupes de points de terminaison du réseau zonaux

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Un groupe de points de terminaison du réseau (NEG) est un objet de configuration qui spécifie un groupe de points de terminaison ou de services de backend. Les NEG zonaux sont des ressources zonales qui représentent des collections d'adresses IP ou de combinaisons adresses IP/port pour les ressources Google Cloud faisant partie d'un même sous-réseau.

Les NEG sont utiles, car ils vous permettent de créer des regroupements logiques d'adresses IP et de ports représentant des services logiciels au lieu de VM entières. Les adresses IP des microservices (exécutés sur les VM Google Cloud) gérées par d'autres outils d'orchestration tels qu'Apache Mesos ou Cloud Foundry peuvent constituer des points de terminaison.

Pour en savoir plus sur les autres types de NEG, consultez les pages suivantes :

Deux types de NEG zonaux sont disponibles, en fonction du type de points de terminaison du réseau qui constituent le NEG. Les deux types de NEG zonaux sont compatibles avec différents cas d'utilisation et différents types d'équilibreurs de charge.

NEG avec points de terminaison GCE_VM_IP

Ces NEG zonaux contiennent un ou plusieurs points de terminaison du réseau internes qui renvoient l'adresse IP principale d'une VM Compute Engine. Vous ne pouvez pas spécifier de port avec ce type de NEG zonal.

Les NEG GCE_VM_IP ne vous permettent d'associer que des points de terminaison appartenant à l'adresse IP interne principale d'une VM au sein du réseau VPC du NEG. Vous pouvez ajouter les adresses IP internes principales de n'importe quelle carte d'interface réseau d'une VM à un NEG, tant que celui-ci utilise le même réseau VPC que la carte d'interface réseau.

Ces types de points de terminaison ne peuvent être utilisés que comme backends dans les services de backend pour les équilibreurs de charge TCP/UDP internes.

NEG avec points de terminaison GCE_VM_IP_PORT

Ces NEG zonaux contiennent un ou plusieurs points de terminaison du réseau internes qui renvoient l'adresse IP interne principale d'une VM ou une adresse IP figurant dans l'une de ses plages d'adresses IP d'alias. Par exemple, GKE utilise ce type de NEG dont les points de terminaison correspondent à une adresse IP de la plage d'adresses IP d'alias du nœud, ainsi qu'un port (adresse IP du pod et port du conteneur). Chaque point de terminaison du réseau est spécifié à l'aide d'une combinaison d'adresse IP et de port.

Les backends NEG zonaux vous permettent de spécifier les adresses IP et les ports. Par conséquent, vous pouvez répartir le trafic de manière précise entre les applications ou les conteneurs exécutés au sein des instances de VM.

Pour créer un point de terminaison du réseau GCE_VM_IP_PORT unique pour un conteneur ou une application s'exécutant sur une VM, vous devez utiliser l'adresse IP principale de la VM ou une adresse IP secondaire attribuée à la VM à l'aide de la fonctionnalité d'adresse IP d'alias. Vous devez associer les logiciels exécutés dans le conteneur ou l'application exécutée sur la VM à l'adresse IP utilisée par le point de terminaison du réseau.

Les NEG GCE_VM_IP_PORT sont particulièrement utiles dans GKE. Pour en savoir plus sur l'utilisation des NEG zonaux avec GKE, consultez la page Utiliser l'équilibrage de charge natif en conteneurs.

Relations entre points de terminaison

Lorsque vous créez un NEG, vous sélectionnez une zone, un réseau et un sous-réseau. Chaque adresse IP de point de terminaison doit se trouver dans le même sous-réseau que le NEG zonal.

Si le réseau que vous sélectionnez est un réseau en mode automatique, vous pouvez omettre de spécifier le sous-réseau. Cependant, un sous-réseau est toujours associé au NEG zonal. Si vous spécifiez un réseau automatique sans spécifier de sous-réseau lors de la création d'un NEG zonal, le sous-réseau utilisé est le sous-réseau créé automatiquement dans la zone sélectionnée pour le NEG zonal.

Vous spécifiez le type du NEG zonal lorsque vous en créez un (GCE_VM_IP ou GCE_VM_IP_PORT). Cela détermine les types de points de terminaison acceptés par le NEG.

Pour les NEG zonaux GCE_VM_IP et GCE_VM_IP_PORT :

  • Vous devez spécifier le nom de chaque point de terminaison de la VM.

  • Toutes les VM doivent se trouver dans la même zone que le NEG.

  • Chaque point de terminaison du NEG doit correspondre à une combinaison unique d'adresse IP et de port. Plusieurs NEG peuvent faire référence à une combinaison unique d'adresse IP et de port d'un point de terminaison.

  • Chaque VM du point de terminaison doit posséder une interface réseau (carte d'interface réseau) sur le même réseau VPC que le NEG. Les adresses IP des points de terminaison doivent être associées au même sous-réseau que celui spécifié dans le NEG.

  • Chaque NEG peut gérer plusieurs points de terminaison dans la limite du nombre maximal autorisé par NEG. Les points de terminaison peuvent être répartis entre plusieurs VM uniques ou tous se situer sur une même VM.

Lorsque vous ajoutez un point de terminaison à un NEG GCE_VM_IP_PORT, vous pouvez choisir de spécifier une adresse IP et un port, seulement une adresse IP, ou aucun des deux :

  • Si vous spécifiez une adresse IP et un port, l'adresse IP peut être l'adresse IP interne principale de la carte d'interface réseau de la VM ou une adresse IP d'alias de la carte d'interface réseau. Vous pouvez indiquer le port de votre choix.

  • Si vous ne spécifiez qu'une adresse IP, celle-ci peut être l'adresse IP interne principale de la carte d'interface réseau de la VM ou une adresse IP d'alias de la carte d'interface réseau. Le port utilisé est le port par défaut du NEG.

  • Si vous ne spécifiez aucun de ces deux éléments, Google Cloud sélectionne l'adresse IP interne principale de la carte d'interface réseau et utilise le port par défaut du NEG.

Équilibrage de charge avec des NEG zonaux

Les NEG zonaux peuvent être utilisés comme backends pour les services de backend d'un équilibreur de charge. Lorsque vous utilisez un NEG zonal en tant que backend pour un service de backend, tous les autres backends de ce service doivent également être des NEG zonaux du même type (GCE_VM_IP ou GCE_VM_IP_PORT). Vous ne pouvez pas utiliser à la fois des groupes d'instances et des NEG zonaux comme backends dans le même service de backend.

Vous pouvez ajouter le même point de terminaison du réseau à plusieurs NEG zonaux. Vous pouvez utiliser le même NEG zonal en tant que backend pour plusieurs services de backend.

Les NEG zonaux GCE_VM_IP_PORT peuvent utiliser le mode d'équilibrage RATE ou le mode d'équilibrage CONNECTION en fonction du protocole du service de backend. Vous devez définir la capacité cible des équilibreurs de charge acceptés.

Les NEG zonaux GCE_VM_IP doivent utiliser le mode d'équilibrage CONNECTION et ne peuvent pas définir de capacité cible, car les équilibreurs de charge TCP/UDP internes n'acceptent pas ce paramètre.

Vous ne pouvez pas utiliser le mode d'équilibrage UTILIZATION avec des backends de NEG zonaux.

Équilibrage de charge TCP/UDP interne

Les NEG zonaux dotés de points de terminaison GCE_VM_IP ne peuvent être utilisés comme backends que pour les services de backend des équilibreurs de charge TCP/UDP internes.

Voici les principaux cas d'utilisation des NEG avec des points de terminaison GCE_VM_IP :

Gestion simplifiée des VM pour les équilibreurs de charge TCP/UDP internes

Comme pour les groupes d'instances, vous pouvez utiliser le même NEG comme backend pour plusieurs équilibreurs de charge TCP/UDP internes. Contrairement aux groupes d'instances, le point de terminaison d'une VM peut appartenir à plusieurs NEG, chacun d'eux pouvant être utilisé comme backend pour un ou plusieurs équilibreurs de charge TCP/UDP internes.

Équilibreurs de charge TCP/UDP internes avec des NEG zonaux GCE_VM_IP se chevauchant
Équilibreurs de charge TCP/UDP internes avec des NEG zonaux se chevauchant

Sous-paramètre GKE

GKE utilise des NEG zonaux GCP_VM_IP et un sous-paramètre pour améliorer l'évolutivité des équilibreurs de charge TCP/UDP internes de la manière suivante :

Sans sous-paramètre, GKE crée un groupe d'instances non géré par zone, constitué des nœuds du cluster issus de tous les pools de nœuds de cette zone. Ces groupes d'instances zonaux sont utilisés comme backends pour un ou plusieurs services LoadBalancer (et pour les objets Ingress externes n'utilisant pas de NEG).

Avec un sous-paramètre, GKE crée des NEG zonaux GCE_VM_IP pour chaque service LoadBalancer interne. Le même point de terminaison peut appartenir à plusieurs NEG zonaux. Contrairement aux groupes d'instances, Google Cloud peut équilibrer la charge sur plusieurs NEG zonaux contenant le même point de terminaison.

Le sous-paramètre répartit plus efficacement le trafic vers les services LoadBalancer internes des clusters comptant plus de 250 nœuds. Par exemple, un cluster GKE de 300 nœuds peut disposer d'un service LoadBalancer interne avec 25 nœuds au sein d'un NEG, car ce service contient 25 pods actifs. Les 300 nœuds ne doivent pas tous être ajoutés au backend d'un groupe d'instances pour ce service.

Notez que les quotas pour les NEG, les règles de transfert, les services de backend et d'autres ressources de mise en réseau Google Cloud continuent de s'appliquer.

Pour plus de détails, consultez la page Utiliser le sous-paramètre d'équilibrage de charge TCP/UDP interne.

Équilibrage de charge HTTP(S) externe, HTTP(S) interne, proxy TCP/SSL externe et proxy TCP interne

Les illustrations suivantes présentent les composants de configuration des équilibreurs de charge où les NEG zonaux avec des points de terminaison GCE_VM_IP_PORT sont les backends :

Groupes de points de terminaison du réseau zonaux dans le cadre de l'équilibrage de charge (cliquez sur l'image pour agrandir)
Groupes de points de terminaison du réseau zonaux dans le cadre de l'équilibrage de charge (cliquez sur l'image pour agrandir)

Pour en savoir plus sur les exigences architecturales de ces équilibreurs de charge, consultez les pages suivantes : * Présentation de l'équilibreur de charge HTTP(S) externePrésentation de l'équilibreur de charge HTTP(S) internePrésentation de l'équilibreur de charge proxy TCP externePrésentation de l'équilibreur de charge proxy TCP interne régionalPrésentation de l'équilibreur de charge proxy SSL externe

Le principal cas d'utilisation des NEG zonaux GCE_VM_IP_PORT est l'équilibrage de charge natif en conteneurs, qui permet de répartir directement le trafic vers les conteneurs s'exécutant sur des VM (par exemple, vers les adresses IP des pods dans les clusters GKE).

L'équilibrage de charge natif en conteneurs permet aux équilibreurs de charge de cibler directement les pods et de prendre des décisions sur la distribution de la charge au niveau du pod plutôt qu'au niveau de la VM.

L'exemple suivant montre comment les équilibreurs de charge répartissent le trafic entre les microservices exécutés dans des conteneurs sur vos VM. Les VM sont configurées pour utiliser des plages d'adresses IP d'alias situées dans leurs sous-réseaux, qui sont également utilisées par les conteneurs.

Groupes de points de terminaison du réseau zonaux de l'équilibrage de charge avec des conteneurs (cliquez sur l'image pour l'agrandir)
Groupes de points de terminaison du réseau zonaux de l'équilibrage de charge avec des conteneurs (cliquez sur l'image pour l'agrandir)

Il existe deux manières de configurer l'équilibrage de charge natif en conteneurs : utiliser des NEG gérés par GKE Ingress ou des NEG autonomes.

  • Kubernetes Ingress avec des NEG (méthode recommandée)

    Lorsque des groupes de points de terminaison du réseau sont utilisés avec Ingress, le contrôleur d'entrée facilite la création de tous les aspects d'un équilibreur de charge HTTP(S). Cela inclut la création de l'adresse IP virtuelle, des règles de transfert, des vérifications d'état, des règles de pare-feu, etc. Pour savoir comment configurer cela, consultez la page Équilibrage de charge natif en conteneurs via Ingress.

    L'objet Ingress constitue la méthode recommandée pour utiliser les Negs pour l'équilibrage de charge natif en conteneurs, car il comporte de nombreuses fonctionnalités qui simplifient la gestion des NEG. Vous pouvez également créer un équilibreur de charge proxy manuellement, mais demander à GKE de gérer l'appartenance aux points de terminaison NEG, comme décrit dans le point suivant (NEG autonome).

    Pour obtenir des instructions sur la configuration d'un équilibreur de charge via Ingress, consultez la page Équilibrage de charge natif en conteneurs via Ingress.

  • NEG autonomes

    Les NEG autonomes permettent à votre cluster GKE de créer des NEG zonaux avec des points de terminaison GCE_VM_IP_PORT représentant les adresses IP des pods et les ports des conteneurs, tout en vous permettant de configurer les composants de l'équilibreur de charge en dehors de GKE.

    Pour voir des exemples d'utilisation des NEG zonaux autonomes avec GKE, consultez les pages suivantes :

Limites

  • Vous ne pouvez pas utiliser de NEG zonaux avec les anciens réseaux.
  • Un service de backend utilisant des NEG comme backends ne peut pas utiliser également des groupes d'instances comme backends.
  • Vous ne pouvez pas utiliser de NEG zonaux en tant que backend pour l'équilibrage de charge réseau TCP/UDP externe.

Limites des NEG zonaux GCE_VM_IP :

  • Les NEG zonaux avec des points de terminaison GCE_VM_IP ne sont compatibles qu'avec les équilibreurs de charge TCP/UDP internes.
  • La propriété default-port n'est pas disponible dans les NEG zonaux GCE_VM_IP.
  • Vous ne pouvez pas créer ou gérer des NEG GCE_VM_IP à l'aide de la console Google Cloud. Utilisez gcloud ou l'API REST.

Quotas

  • Pour en savoir plus sur les quotas NEG, tels que les NEG par projet, les NEG par service de backend et les points de terminaison par NEG, reportez-vous à la page quotas d'équilibrage de charge.

Étapes suivantes