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

Los balanceadores de cargas de red de transferencia son balanceadores de cargas de transferencia de capa 4. Distribuyen el tráfico entre backends en la misma región que el balanceador de cargas o, en el caso del balanceador de cargas de red de transferencia externo global, en varias Google Cloud regiones. Tal como lo sugiere el nombre, los balanceadores de cargas de red no son proxies. Las VMs 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 conexiones con balanceo de cargas se finalizan en los backends. Las respuestas de las VMs 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 el siguiente diagrama, se muestra un ejemplo de arquitectura de un balanceador de cargas de red.

Arquitectura del balanceador de cargas de red de transferencia.
Arquitectura del balanceador de cargas de red de transferencia (haz clic para ampliar).

Deberías usar un balanceador de cargas de red de transferencia en las siguientes circunstancias:

  • Si necesitas reenviar los paquetes de clientes originales a los backends sin proxy, por ejemplo, si necesitas que se conserve la dirección IP de origen de cliente.
  • Si necesitas balancear las cargas de tráfico de TCP, UDP, ESP, GRE, ICMP e ICMPv6, o necesitas balancear las cargas 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 no puede realizar esta tarea. Cuando los backends desencriptan el tráfico SSL, hay una mayor carga de CPU en las VM.
  • Puedes administrar los certificados SSL de la VM de backend por tu cuenta. Los certificados SSL administrados por Google solo están disponibles para los balanceadores de cargas de proxy.
  • Úsalo si tienes una configuración existente que use un balanceador de cargas de transferencia y deseas migrarla sin cambios.

Los balanceadores de cargas de red de transferencia están disponibles en los siguientes modos de implementación.

Alcance Tipo de tráfico Nivel de servicio de red Esquema de balanceo de cargas Dirección IP Puertos de frontend Modo de balanceo de cargas
Balanceador de cargas de red de transferencia externo global

Balancea la carga del tráfico que proviene de los clientes en Internet.

Global TCP, UDP, ESP, ICMP, ICMPv6 y GRE Premium EXTERNAL_PASSTHROUGH IPv4 e IPv6 Una lista de hasta cinco puertos, un rango de puertos o todos los puertos RATE y UTILIZATION
Balanceador de cargas de red de transferencia regional externo

Balancea la carga del tráfico que proviene de los clientes en Internet.

Regional TCP, UDP, ESP, ICMP, ICMPv6 y GRE Premium o Estándar EXTERNO IPv4 e IPv6 Una lista de hasta cinco puertos, un rango de puertos o todos los puertos CONNECTION
Balanceador de cargas de red de transferencia interno

Balancea las cargas de tráfico dentro de tu red de VPC o redes conectadas a tu red de VPC.

Regional TCP, UDP, ICMP, ICMPv6, SCTP, ESP, AH y GRE Premium INTERNAL IPv4 e IPv6 Una lista de hasta cinco puertos, un rango de puertos o todos los puertos CONNECTION

El esquema de balanceo de cargas es un atributo de la regla de reenvío y el servicio de backend de un balanceador de cargas y, luego, indica si el balanceador de cargas se puede usar para tráfico interno o externo.

Balanceadores de cargas de red de transferencia externos globales

Los balanceadores de cargas de red de transferencia externos globales son balanceadores de cargas de transferencia de capa 4 que distribuyen el tráfico externo entre backends (grupos de instancias o grupos de extremos de red) que pueden residir en varias Google Cloud regiones. Estos balanceadores de cargas se compilan en Maglevs que se distribuyen de forma global y operan juntos mediante el plano de control y la red global de Google.

Un balanceador de cargas de red de transferencia externo global dirige automáticamente el tráfico a la región de backend más cercana al punto en el que el tráfico del usuario ingresa Google's red global.

Siempre que los backends aptos estén configurados en dos o más regiones, se aplicará lo siguiente:

  • Si una región está al máximo de capacidad, el balanceador de cargas automáticamente desborda algunas de las conexiones de usuario nuevas que superan la capacidad de la región a las siguientes regiones más cercanas en las que haya capacidad disponible, mientras mantiene las conexiones existentes en la región actual.

  • Si una región está inactiva, el balanceador de cargas automáticamente conmuta por error el tráfico a la siguiente región más cercana con capacidad disponible.

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

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

En el siguiente diagrama, se muestra un balanceador de cargas de red de transferencia externo global que distribuye el tráfico a backends en varias Google Cloud regiones. Cada balanceador de cargas te proporciona dos direcciones IP externas, que se entregan a través de una infraestructura de servidor de plano de datos y control de balanceo de cargas global aislada y separada (también conocida como grupos de disponibilidad, AG0 y AG1).

Un balanceador de cargas de red de transferencia externo global envía tráfico a los backends de grupos de instancias de VM implementados en las regiones `us-west1` y `europe-west2`.
Distribución del tráfico a backends de grupos de instancias de VM mediante un balanceador de cargas de red de transferencia externo global (haz clic para ampliar).

Para obtener detalles sobre la arquitectura y más información sobre las funciones compatibles, consulta Descripción general de la arquitectura del balanceador de cargas de red de transferencia externo global.

Balanceadores de cargas de red de transferencia regionales externos

Los balanceadores de cargas de red de transferencia externos regionales 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. Estos balanceadores de cargas se compilan en Maglev y en la pila de virtualización de red de Andromeda.

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

  • Cualquier cliente en Internet
  • Google Cloud VMs con IPs externas
  • Google Cloud VMs 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 regionales no son proxies. El balanceador de cargas no finaliza las conexiones de usuario. Los paquetes con balanceo de cargas se envían a las VMs de backend con las direcciones IP de origen y destino, el protocolo y, si corresponde, los puertos, sin cambios. Luego, las VMs de backend finalizan las conexiones de usuario. Las respuestas de las VMs de backend van directo a los clientes, no pasan a través del balanceador de cargas. Este proceso se conoce como retorno directo del servidor (DSR).

En el siguiente diagrama, se muestra un balanceador de cargas de red de transferencia externo regional que se configura en la región us-central1 con sus backends ubicados en la misma región. El tráfico se enruta desde un usuario en Singapur al balanceador de cargas en us-central1 (dirección IP de la regla de reenvío 120.1.1.1).

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 Google Cloud región en la que se configuró el balanceador de cargas.

Enrutamiento del tráfico del balanceador de cargas de red de transferencia externo regional en los niveles Premium y Estándar de la red.
Enrutamiento del tráfico del balanceador de cargas de red de transferencia externo regional en los niveles de red Premium y Estándar.

La arquitectura de un balanceador de cargas de red de transferencia externo regional depende de si usas un servicio de backend o un grupo de destino para configurar el backend.

Balanceadores de cargas basados en servicios de backend

Los balanceadores de cargas de red de transferencia externos regionales se pueden crear con un servicio de backend regional que define 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 regionales basados en servicios de backend admiten tráfico IPv4 e IPv6, varios protocolos (TCP, UDP, ESP, ICMP, ICMPv6 y GRE), y backends de grupos de instancias administrados y no administrados , backends de grupo de extremos de red (NEG) zonales con extremos GCE_VM_IP , controles detallados de distribución de tráfico, 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.

El balanceo de cargas en Google Kubernetes Engine (GKE) se controla mediante el controlador de servicios de GKE integrado . Además, los balanceadores de cargas de red de transferencia externos regionales basados en servicios de backend son compatibles con App Hub.

Para obtener detalles sobre la arquitectura y más información sobre las funciones compatibles, consulta Descripción general del balanceador de cargas de red de transferencia externo regional basado en servicios de backend.

Puedes hacer la transición de un balanceador de cargas de basado en grupos de destino existente para usar un servicio de backend. Para obtener instrucciones, consulta Migra balanceadores de cargas de grupos de destino a servicios de backend.

Balanceadores de cargas basados en grupos de destino

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

Los balanceadores de cargas 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 regionales basados en grupos de destino solo admiten direcciones IPv4 externas.

Para obtener detalles sobre la arquitectura, consulta Descripción general del balanceador de cargas de red de transferencia externo regional basado en grupos de destino.

Balanceadores de cargas de red de transferencia internos

Los balanceadores de cargas de red de transferencia internos distribuyen el tráfico entre las instancias de máquina virtual (VM) internas en la misma región en una red de nube privada virtual (VPC). Te permiten ejecutar y escalar tus servicios detrás de una dirección IP interna a la que solo pueden acceder los sistemas en la misma red de VPC o los sistemas conectados a tu red de VPC.

Estos balanceadores de cargas se compilan en la pila de virtualización de red de Andromeda. Solo admiten backends regionales para que puedas realizar un ajuste de escala automático en una región, y así proteger tu servicio de fallas zonales. Además, este balanceador de cargas solo se puede configurar en el nivel Premium.

Los balanceadores de cargas de red de transferencia internos abordan muchos casos prácticos. En las siguientes secciones, se muestran algunos ejemplos de alto nivel.

Acceso a redes conectadas

Puedes acceder a un balanceador de cargas de red de transferencia interno en tu red de VPC desde una red conectada mediante lo siguiente:

  • Intercambio de tráfico entre redes de VPC
  • Cloud VPN y Cloud Interconnect

Para ver ejemplos detallados, consulta Balanceadores de cargas de red de transferencia internos y redes conectadas.

Servicio web de tres niveles

Puedes usar los balanceadores de cargas de red de transferencia internos junto con otros balanceadores de cargas. Por ejemplo, si incorporas balanceadores de cargas de aplicaciones externos, el balanceador de cargas de aplicaciones externo es el nivel web y depende de los servicios detrás del balanceador de cargas de red de transferencia interno.

En el siguiente diagrama, se muestra un ejemplo de una configuración de tres niveles que utiliza balanceadores de cargas de aplicaciones externos y balanceadores de cargas de red de transferencia internos:

Aplicación web de tres niveles con un balanceador de cargas de aplicaciones externo y un balanceador de cargas de red de transferencia interno
Aplicación web de tres niveles con un balanceador de cargas de aplicaciones externo y un balanceador de cargas de red de transferencia interno (haz clic para ampliar).

Ejemplo de servicio web de tres niveles con acceso global

Si habilitas el acceso global, las VMs de nivel web pueden estar en otra región, como se muestra en el siguiente diagrama.

En este ejemplo de aplicación de varios niveles, se muestra la siguiente información:

  • Un nivel web orientado a Internet con disponibilidad global que balancea las cargas del tráfico con un balanceador de cargas de aplicaciones externo.
  • Un nivel de base de datos de backend interno con balanceo de cargas en la región us-east1 al que accede el nivel web global
  • Una VM de cliente que forma parte del nivel web en la región europe-west1 y que accede al nivel de base de datos interno con balanceo de cargas ubicado en us-east1
El
Aplicación web de tres niveles con un balanceador de cargas de aplicaciones externo, acceso global y un balanceador de cargas de red de transferencia interno
Aplicación web de tres niveles con un balanceador de cargas de aplicaciones externo, acceso global y un balanceador de cargas de red de transferencia interno (haz clic para ampliar).

Usa balanceadores de cargas de red de transferencia internos como próximos saltos

Puedes usar un balanceador de cargas de red de transferencia interno como la próxima puerta de enlace a la cual se reenvían los paquetes en la ruta a su destino final. Para ello, configura el balanceador de cargas como el próximo salto en una ruta estática.

Un balanceador de cargas de red de transferencia interno de próximo salto procesa paquetes para todo el tráfico compatible independientemente de los protocolos de la regla de reenvío y del servicio de backend que especificaste cuando creaste el balanceador de cargas.

Esta función admite el uso de direcciones IPv4 o IPv6.

A continuación, figura una arquitectura de muestra que usa un balanceador de cargas de red de transferencia interno como próximo salto a una puerta de enlace NAT. Puedes enrutar el tráfico a los backends del dispositivo virtual de tu puerta de enlace o firewall a través de un balanceador de cargas de red de transferencia interno.

Caso de uso de NAT.
Caso de uso de NAT (haz clic para ampliar).

Los casos de uso adicionales incluyen los siguientes:

  • Concentrador y radio: intercambio de rutas de salto siguiente mediante el intercambio de tráfico entre redes de VPC para configurar una topología de concentrador y radio con los dispositivos virtuales de firewall de salto siguiente ubicados en la red de VPC de hub. Las rutas que usan el balanceador de cargas como el salto siguiente en la red de VPC de hub se pueden usar en cada red de spoke.
  • Balanceo de cargas a interfaces de red múltiples (nic0 a nic7) en las VMs de backend.

Para obtener más información sobre estos casos de uso, consulta Balanceadores de cargas de red de transferencia internos como próximos saltos.

Balanceadores de cargas de red de transferencia internos y GKE

Si deseas obtener detalles sobre cómo GKE crea balanceadores de cargas de red de transferencia internos para servicios, consulta los conceptos del objeto Service LoadBalancer en la documentación de GKE.

Balanceadores de cargas de red de transferencia internos y App Hub

Los recursos que usan los balanceadores de cargas de red de transferencia internos se pueden designar como servicios en las aplicaciones de App Hub.

Asignación de puertos de Private Service Connect

Los servicios de asignación de puertos de Private Service Connect usan NEG de asignación de puertos y tienen parámetros de configuración similares a los balanceadores de cargas de red de transferencia internos. Sin embargo, los servicios de asignación de puertos no balancean las cargas del tráfico. En cambio, Private Service Connect reenvía el tráfico a los puertos de servicio en las VMs del productor de servicios según el puerto de destino del cliente que recibe el tráfico.

Si envías tráfico a un servicio de asignación de puertos desde la misma red de VPC que el servicio, se descartan los paquetes.

Para obtener más información, consulta Acerca de la asignación de puertos de Private Service Connect.

¿Qué sigue?