Reglas de balanceo de cargas TCP/UDP internas y de reenvío con una dirección IP común

El balanceo de cargas TCP/UDP interno de Google Cloud es un balanceador de cargas regional que te permite ejecutar y escalar tus servicios detrás de una dirección IP de balanceo de cargas interno a la que solo pueden acceder las instancias internas de máquina virtual (VM).

Para obtener información general sobre los balanceadores de carga TCP/UDP internos, consulta la página de descripción general.

En esta página, se discute el uso de múltiples reglas de reenvío con la misma dirección IP.

Resumen

Las reglas de reenvío interno que tienen una dirección IP interna común pueden hacer lo siguiente:

  • Usar los mismos protocolos o diferentes
  • Usar el mismo conjunto de puertos específico o diferente o la opción --ports=ALL
  • Consultar un servicio de fondo común (un solo balanceador de carga) o múltiples servicios de fondo (múltiples balanceadores de carga que comparten la misma dirección IP)

Cuando tus reglas de reenvío tienen protocolos diferentes, también debes tener dos servicios backend diferentes. Un único balanceador de carga TCP/UDP interno funciona para el tráfico TCP o UDP, no para ambos, porque tiene un único servicio de fondo que usa solo uno de estos protocolos.

Matrices de decisión para reglas de reenvío

Usa las siguientes tablas para diseñar tu implementación.

Balanceador de carga TCP/UDP interno único

Un único servicio de backend admite TCP o UDP, no ambos.

Cuando necesites varias reglas de reenvío, calcula la cantidad de reglas de reenvío que necesitas mediante la siguiente fórmula:

⌈total number of ports / 5⌉
donde ⌈⌉ es la función techo (menos entero), lo que significa redondear hacia arriba

Por ejemplo, supón que necesitas 26 puertos TCP en una dirección IP del balanceador de carga. Si no deseas crear una sola regla de reenvío mediante --ports=ALL, debes crear seis reglas de reenvío porque:

26 / 5 = 5 with a remainder of 1

Configuración de frontend previsto Número de reglas de reenvío requeridas Se requiere la marca --purpose=SHARED_LOADBALANCER_VIP para la dirección IP Especificación de puerto de regla de reenvío
Una dirección IP, tráfico en todos los puertos Una regla de reenvío No --ports=ALL
Una dirección IP, tráfico en puertos específicos
  • Cinco o menos puertos:
    una regla de reenvío
  • Seis o más puertos específicos:
    múltiples reglas de reenvío
No, para cinco o menos puertos

Sí, para seis o más puertos
Establece --ports en un conjunto de hasta cinco números de puerto contiguos o no contiguos
Múltiples direcciones IP, tráfico en todos los puertos. Una regla de reenvío por dirección IP No --ports=ALL
Múltiples direcciones IP, tráfico en puertos específicos Una regla de reenvío por dirección IP No, para cinco o menos puertos

Sí, para seis o más puertos
Establece --ports en un conjunto de hasta cinco números de puerto contiguos o no contiguos

Dos balanceadores de carga TCP/UDP internos

Cuando tiene dos balanceadores de carga TCP/UDP internos, puedes tener dos servicios de backend, donde un servicio de backend es para tráfico TCP y el otro servicio de backend es para tráfico UDP.

Cuando necesites varias reglas de reenvío, calcula la cantidad de reglas de reenvío que necesitas mediante la siguiente fórmula:

⌈total number of TCP ports / 5⌉

⌈total number of UDP ports / 5⌉

donde ⌈⌉ es la función techo (mínimo entero), lo que significa redondear hacia arriba

Por ejemplo, suponga que necesita 26 puertos TCP y 12 puertos UDP. Debe crear 9 reglas de reenvío porque:

  • 26 / 5 = 5 with a remainder of 1, por lo que necesitas seis reglas de reenvío para tus puertos TCP.
  • 12 / 5 = 2 with a remainder of 2, por lo que necesitas tres reglas de reenvío para tus puertos UDP.
Configuración de frontend previsto Número de reglas de reenvío requeridas Se requiere la marca --purpose=SHARED_LOADBALANCER_VIP para la dirección IP Especificación de puerto de regla de reenvío
Una dirección IP, tráfico en todos los puertos Dos reglas de reenvío (una para TCP, una para UDP) Sí, porque la regla de reenvío TCP y la regla de reenvío UDP deben compartir una sola dirección IP --ports=ALL
Una dirección IP, tráfico en puertos específicos Cinco o menos puertos TCP y cinco o menos puertos UDP:
dos reglas de reenvío (una para TCP, una para UDP)

Para seis o más puertos TCP o puertos UDP:
múltiples reglas de reenvío, en el que cada regla de reenvío admite un protocolo y cinco o menos puertos
Establece --ports en un conjunto de hasta cinco números de puerto contiguos o no contiguos
Múltiples direcciones IP, tráfico en todos los puertos, ya sea TCP o UDP Al menos dos reglas de reenvío (una para TCP con una dirección IP, la otra para UDP con una dirección IP diferente)

Necesita tres o más reglas de reenvío si necesita tres o más direcciones IP
No --ports=ALL
Múltiples direcciones IP, tráfico en puertos específicos, ya sea TCP o UDP Al menos dos reglas de reenvío (una para TCP con una dirección IP, la otra para UDP con una dirección IP diferente)

Necesitas más de dos reglas de reenvío si necesita:
  • Más de dos direcciones IP, o...
  • Más de cinco puertos para el tráfico TCP en una dirección IP o más de cinco puertos para el tráfico UDP en una dirección IP
No, para una dirección IP con cinco o menos puertos TCP y una dirección IP con cinco o menos puertos UDP

Sí, para seis o más puertos TCP o seis o más puertos UDP
Establece --ports en un conjunto de hasta cinco números de puerto contiguos o no contiguos

Casos de uso

Son posibles muchos tipos diferentes de implementaciones. Los siguientes son solo algunos ejemplos que usan una dirección IP que acepta tráfico en puertos específicos para dos balanceadores de carga.

  • Diferentes reglas de reenvío con lo siguiente:

    • La misma dirección IP
    • Diferentes protocolos
    • Apuntar a separar los servicios de backend
    • El protocolo de cada servicio de backend coincide con el protocolo de la regla de reenvío correspondiente
    Diferentes reglas de reenvío, misma dirección IP, diferentes protocolos/puertos (haz clic para ampliar)
    Diferentes reglas de reenvío, misma dirección IP, diferentes protocolos/puertos (haz clic para ampliar)
  • Diferentes reglas de reenvío con lo siguiente:

    • La misma dirección IP
    • El mismo protocolo
    • Un conjunto específico diferente de puertos numerados en cada regla de reenvío

    Esta opción de configuración es una alternativa a la creación de una sola regla de reenvío que especifique todos los puertos.

    Diferentes reglas de reenvío, misma dirección IP, mismo protocolo, más de cinco puertos numerados (haz clic para ampliar)
    Diferentes reglas de reenvío, misma dirección IP, mismo protocolo, más de cinco puertos numerados (haz clic para ampliar)

Configurando

Puedes crear varias reglas de reenvío internas que tengan la misma dirección IP si haces lo siguiente:

Para ver una configuración de ejemplo, consulta Configura las reglas de reenvío con la misma dirección IP.