Descripción general del balanceador de cargas de red de transferencia externo

Los balanceadores de cargas de red de transferencia externos son balanceadores de cargas regionales de capa 4 que distribuyen el tráfico externo entre backends (grupos de instancias o grupos de extremos de red [NEG]) en la misma región que el balanceador de cargas. Estos backends deben estar en la misma región y proyecto, pero pueden estar en diferentes redes de VPC.

Puedes configurar un balanceador de cargas de red de transferencia externo para el tráfico de TCP, UDP, ESP, GRE, ICMP y ICMPv6.

Los balanceadores de cargas de red de transferencia externos pueden recibir tráfico de las siguientes fuentes:

  • Cualquier cliente en Internet
  • VM de Google Cloud con IP externas
  • VM de Google Cloud que tienen acceso a Internet a través de Cloud NAT o NAT basada en la instancia

Los balanceadores de cargas de red de transferencia externos tienen las siguientes características:

  • Un balanceador de cargas de red de transferencia externo es un servicio administrado que se implementa mediante las herramientas de redes virtuales de Andromeda y Google Maglev.
  • El alcance de un balanceador de cargas de red de transferencia externo es regional. Esto significa que el balanceador de cargas no puede abarcar varias regiones. Dentro de una sola región, el balanceador de cargas administra todas las zonas.
  • Los balanceadores de cargas de red de transferencia externos no son proxies.
    • Las VM de backend reciben paquetes con balanceo de cargas, direcciones IP de origen y destino, y el protocolo del paquete y, si el protocolo se basa en puertos, los puertos de origen y de destino sin cambios.
    • Las VM de backend finalizan las conexiones de balanceo de cargas.
    • Las respuestas de las VM de backend van directo a los clientes, no pasan a través del balanceador de cargas. El término del sector para esto es retorno directo del servidor (DSR).

En los siguientes diagramas, se muestra un balanceador de cargas de red de transferencia externo cuya regla de reenvío tiene la dirección IP 120.1.1.1. El balanceador de cargas de red de transferencia externo se configura en la región us-central1 con sus backends ubicados en la misma región.

Los balanceadores de cargas de red de transferencia externos son regionales por naturaleza y solo admiten backends en la misma región que sus frontends configurados. Sin embargo, los paquetes a los balanceadores de cargas de red de transferencia externos se pueden enviar desde cualquier lugar en Internet, sin importar si la dirección IP del balanceador de cargas está en el nivel Premium o Estándar. Si la dirección IP del balanceador de cargas está en el nivel Premium, el tráfico recorre la red troncal global de alta calidad de Google, con la intención de que los paquetes ingresen y salgan de un punto de intercambio de tráfico perimetral de Google lo más cercano posible al cliente. Si la dirección IP del balanceador de cargas está en el nivel Estándar, el tráfico ingresa y sale de la red de Google en el punto de intercambio de tráfico más cercano a la región de Google Cloud en la que se configuró el balanceador de cargas.

En el siguiente diagrama, el tráfico se enruta desde un usuario en Singapur al balanceador de cargas de red de transferencia externo en us-central1 (dirección IP de la regla de reenvío 120.1.1.1).

Un usuario en Singapur, cerca de asia-southeast1, accede a un balanceador de cargas de red de transferencia externo en la región us-central1.
Ejemplo del balanceador de cargas de red de transferencia externo para un usuario en Singapur (haz clic para agrandar)
.

En el siguiente diagrama, el tráfico se enruta desde un usuario en Iowa al balanceador de cargas de red de transferencia externo en us-central1 (dirección IP de la regla de reenvío 120.1.1.1).

Un usuario en Iowa, cerca de us-central1, accede a un balanceador de cargas de red en la misma región us-central1.
Ejemplo del balanceador de cargas de red de transferencia externo para un usuario en Iowa (haz clic para ampliar)

Casos de uso

Usa un balanceador de cargas de red de transferencia externo en las siguientes circunstancias:

  • Úsalo si necesitas balancear las cargas de tráfico no TCP o de un puerto TCP que no sea compatible con otros balanceadores de cargas.
  • Si es aceptable hacer que se desencripte el tráfico SSL mediante tus backends en lugar de hacerlo mediante el balanceador de cargas. El balanceador de cargas de red de transferencia externo no puede realizar esta tarea. Cuando los backends desencriptan el tráfico SSL, hay una mayor carga de CPU en las VM.
  • La autogestión de los certificados SSL de la VM del backend es aceptable para tu caso. Los certificados SSL administrados por Google solo están disponibles para balanceadores de cargas de aplicaciones y balanceadores de cargas de red del proxy externos.
  • Úsalo si debes reenviar los paquetes originales sin proxy. Por ejemplo, si necesitas que se conserve la IP de origen de cliente.
  • Si tienes una configuración existente que usa un balanceador de cargas de paso y deseas migrarla sin cambios.
  • Necesitas protección avanzada contra DSD de la red para el balanceador de cargas de red de transferencia externo. Para obtener más información, consulta Configura la protección avanzada contra DSD de red mediante Google Cloud Armor.

Balanceo de cargas para aplicaciones de GKE

Si compilas aplicaciones en GKE, te recomendamos que uses el controlador de servicios de GKE integrado, que implementa balanceadores de cargas de Google Cloud en nombre de los usuarios de GKE. Esto es lo mismo que la arquitectura de balanceo de cargas independiente, excepto que su ciclo de vida está completamente automatizado y controlado por GKE.

Documentación de GKE relacionada:

Arquitectura

La arquitectura de un balanceador de cargas de red de transferencia externo depende de si usas un balanceador de cargas de red de transferencia externo basado en servicios de backend o un balanceador de cargas de red de transferencia externo basado en grupos de destino.

Balanceador de cargas de red de transferencia externo basado en servicios de backend

Puedes crear balanceadores de cargas de red de transferencia externos con un servicio de backend regional que defina el comportamiento del balanceador de cargas y cómo este distribuye el tráfico a sus backends. Los balanceadores de cargas de red de transferencia externos basados en servicios de backend admiten tráfico IPv4 e IPv6, varios protocolos (TCP, UDP, ESP, GRE, ICMP e ICMPv6), backends de grupos de instancias administrados y no administrados, backends de NEG zonales que usan extremos GCE_VM_IP (incluida la compatibilidad con interfaces de red múltiples), controles detallados de distribución de tráfico (seguimiento de conexión, vaciado de conexiones, direccionamiento del tráfico, balanceo de cargas ponderado y políticas de conmutación por error), y te permiten usar verificaciones de estado no heredadas que coincidan con el tipo de tráfico (TCP, SSL, HTTP, HTTPS o HTTP/2) que distribuyes.

Para obtener más detalles sobre la arquitectura, consulta Balanceador de cargas de red de transferencia externo con un servicio de backend regional.

También puedes hacer la transición de un balanceador de cargas de red basado en grupos de destino existente para usar un servicio de backend. Para obtener instrucciones, consulta Cómo hacer la transición de un balanceador de cargas de red de transferencia externo de un grupo de destino a un servicio de backend.

Balanceador de cargas de red de transferencia externo basado en grupos de destino

Un grupo de destino es el backend heredado compatible con los balanceadores de cargas de red de traspaso externos de Google Cloud. Un grupo de destino define un grupo de instancias que deben recibir tráfico entrante desde el balanceador de cargas.

Los balanceadores de cargas de red de transferencia externos basados en grupos de destino admiten tráfico TCP o UDP. Las reglas de reenvío para balanceadores de cargas de red de transferencia externos basados en grupos de destino solo admiten direcciones IPv4 externas.

Para obtener más detalles sobre la arquitectura, consulta Balanceador de cargas de red de transferencia externo con un backend de grupo de destino.

Compara los balanceadores de cargas de red de transferencia externos con otros balanceadores de cargas de Google Cloud

Para obtener información sobre la diferencia entre los balanceadores de cargas de Google Cloud, consulta los siguientes documentos: