Acerca de los equilibradores de carga de red

Puede utilizar IBM Cloud® Network Load Balancer for VPC (NLB) para distribuir tráfico entre varias instancias de servidor dentro de la misma región de la VPC.

Los NLB pueden aceptar miembros en las tres zonas de disponibilidad, pero el propio NLB reside en una zona específica. Para obtener más información, consulte Soporte multizona.

Es posible asignar puertos por cliente, pero no hay ninguna imposición de puerto en el nivel de pasarela VP.

Tipos de equilibradores de carga de red

Tal como se describe en la Visión general de equilibradores de carga para VPC, hay muchos tipos de NLB disponibles:

  • Público: un equilibrador de carga público es un equilibrador de carga con una dirección IP de acceso público registrada en el DNS.

  • Privado-Un equilibrador de carga privado sólo es accesible desde dentro de la red de VPC, donde el cliente está en la misma VPC o tiene accesibilidad (por ejemplo, a través de Direct Link, Transit Gateway, o ambos). Para los equilibradores de carga privados, debe tener una subred dedicada sin rutas personalizadas configuradas para la subred.

  • Privado con modo de enrutamiento habilitado: los NLB privados con modo de enrutamiento habilitado admiten dispositivos de función de red virtual (VNF) como destinos back-end. Realizan un enrutamiento directo sin NAT, lo que permite a los dispositivos VNF inspeccionar los paquetes tal cual.

    Se admite tanto el tráfico simétrico como el asimétrico, de modo que varios NLB privados con modo de enrutamiento en cada zona pueden recibir tráfico de forma asíncrona en cualquier momento mediante el reenvío ponderado. Para obtener más información, consulta Creación de un equilibrador de carga de red con modo de enrutamiento.

  • Vía de acceso privada-Los proveedores de servicios utilizan NLB de vía de acceso privada para conectar de forma segura IBM Cloud con servicios alojados en VPC de terceros en la red privada IBM Cloud. Los NLB de ruta privada son necesarios cuando se utilizan servicios de ruta privada para mantener el tráfico de red en una ruta privada que nunca se cruza con Internet. Para obtener más información, consulte la Guía de soluciones de vía de acceso privada.

    Los NLB Private Path sólo pueden utilizarse con un servicio Private Path.

cómo empezar

Para empezar a utilizar equilibradores de carga de red, siga estos pasos:

  1. Revise los problemas conocidos de los equilibradores de carga de red.
  2. Siga las instrucciones para su NLB en particular:

Para obtener más información, consulte Tipos de equilibradores de carga y el gráfico de comparación del equilibrador de carga.

Métodos de equilibrio de carga

Hay tres métodos de equilibrio de carga disponibles para distribuir el tráfico entre los servidores de aplicaciones de fondo: round-robin, round-robin ponderado y menos conexiones.

Conexiones mínimas

Con este método, la instancia del servidor back-end que atiende el menor número de conexiones en un momento determinado recibe la siguiente conexión de cliente.

Los NLB de ruta privada no admiten el método de conexión mínima.

Round-robin

Round-robin es el método de equilibrio de carga predeterminado. Con este método, el equilibrador de carga reenvía las conexiones de cliente entrantes de forma rotativa a los servidores de fondo. En consecuencia, todos los servidores de fondo reciben aproximadamente el mismo número de conexiones de cliente.

Reenvío ponderado

El reenvío ponderado solo es compatible con los NLB privados que utilizan el modo de enrutamiento.

Con el reenvío ponderado, el NLB utiliza un algoritmo de hash de IP para distribuir los paquetes entre los destinos en función de las ponderaciones que se les han asignado. Dado que el reenvío ponderado no tiene estado, el NLB no mantiene el estado de la conexión. En su lugar, cada paquete se evalúa de forma independiente en función de sus encabezados y se reenvía según el resultado del hash actual y las ponderaciones configuradas. Como resultado, el tráfico se acepta y se reenvía incluso cuando no existe ningún estado de conexión.

Este comportamiento permite dar soporte a escenarios de enrutamiento asimétrico, incluidas las implementaciones en las que los flujos de tráfico dentro de una misma zona no son simétricos, como cuando se utiliza un rango de direcciones IP públicas. Otro escenario compatible es una implementación multizona en la que los NLB privados configurados con el algoritmo de grupo weighted_forwarding pueden recibir tráfico de forma asíncrona en cualquier zona. En el caso de flujos de tráfico simétricos, el NLB sigue proporcionando un reenvío determinista basado en hash, similar al de otros algoritmos de agrupación, lo que hace que el reenvío ponderado sea adecuado para cualquier implementación de NLB en modo de ruta.

Si un NLB en modo de ruta entra en estado no válido debido a una zona en estado no válido o a que no quedan miembros de back-end en estado válido, el NLB retira automáticamente su anuncio de enrutamiento de entrada de VPC asociado. A continuación, el tráfico se redirige a los NLB en modo de ruta que se encuentran en buen estado en las zonas que están en buen estado.

Por ejemplo, consideremos un NLB privado en modo de ruta con dos miembros de back-end operativos: el servidor A, con una ponderación de, y 8 el servidor B, con una ponderación de 2. De cada 1.000 paquetes entrantes, aproximadamente 800 se reenvían al servidor A y 200 al servidor B. Sin embargo, dado que el reenvío ponderado no tiene estado, el NLB no mantiene el estado de la conexión. Cada paquete se evalúa de forma independiente utilizando la información de la cabecera del paquete y se reenvía según el resultado del hash actual y las ponderaciones configuradas. Esto significa que los paquetes que pertenecen al mismo flujo pueden llegar y regresar a través de diferentes NLB en modo de ruta y seguir reenviándose correctamente, incluso cuando la distribución observada difiere de la proporción de ponderación configurada.

Este comportamiento permite escenarios de enrutamiento asimétrico. Para obtener más información, consulta el caso de uso n.º 8: Alta disponibilidad multizona mediante enrutamiento asimétrico.

Round-robin ponderado

Con este método, el equilibrador de carga reenvía las conexiones entrantes del cliente a los servidores back-end en proporción a la ponderación asignada a estos servidores. Cada servidor tiene asignada una ponderación predeterminada de 50, que se puede personalizar y cambiar por cualquier valor comprendido entre 0 - 100.

Por ejemplo, si los servidores de aplicaciones A, B y C tienen las ponderaciones 60, 60 y 30, los servidores A y B reciben un número igual de conexiones, mientras que el servidor C recibe la mitad de ese número de conexiones.

Los valores de ponderación de servidor solo se aplican cuando se utiliza el método 'round-robin ponderado'. Se ignoran con los métodos de equilibrio de carga de round robin y menos conexiones.

Si se establece la ponderación en 0, significa que no se reenvían nuevas conexiones a dicho servidor, pero el tráfico existente sigue fluyendo. El uso de un peso de puede 0 ayudar a retirar gradualmente un servidor y sacarlo de la rotación de servicio.

Escuchas frontales y agrupaciones de fondo

Los escuchas frontales son puertos de aplicación para que los equilibradores de carga reciban solicitudes entrantes mientras que las agrupaciones de fondo son los servidores de las aplicaciones que se encuentran detrás de los equilibradores de carga. Puede definir hasta 10 escuchas frontales y correlacionarlos con agrupaciones de fondo en los servidores de aplicaciones de fondo. En el caso de un NLB público, el FQDN asignado a su equilibrador de carga y los puertos del listener front-end quedan expuestos a Internet. Las solicitudes de usuario entrantes se reciben en dichos puertos. TCP y UDP son los protocolos soportados para escuchas frontales y agrupaciones de fondo.

Puede conectar hasta 50 instancias de servidor virtual a una agrupación de fondo. El tráfico se envía a cada instancia en su puerto de datos especificado. No es necesario que este puerto de datos sea el mismo que el puerto de escucha frontal.

Políticas a prueba de fallos del fondo de reserva

Al editar un grupo back-end en un equilibrador de carga, puede especificar una de las siguientes acciones de política a prueba de fallos:

  • Reenviar:- El equilibrador de carga enruta las solicitudes a un grupo de respaldo designado. Esto proporciona una ruta de conmutación por error limpia a otro conjunto de servidores de aplicaciones. Debe tener un grupo de respaldo existente configurado y listo para recibir tráfico.
  • Bypass:- El equilibrador de carga envía las solicitudes directamente a las direcciones IP de destino de los miembros, eludiendo por completo el equilibrador de carga. Esta opción se utiliza normalmente en configuraciones de red específicas, como con balanceadores de carga de red y dispositivos de función de red virtual (VNF).
  • Drop:- El balanceador de carga elimina todas las peticiones entrantes y el cliente no recibe respuesta.

Puede elegir un destino a prueba de fallos de una lista de grupos de copias de seguridad aplicables.

Requisitos del grupo objetivo a prueba de fallos (si la acción es Forward):

  • deben pertenecer al mismo equilibrador de carga
  • deben tener el mismo protocolo o uno compatible ( TCP sólo es compatible con TCP, pero cualquier combinación de HTTP y HTTPS es compatible)

Número máximo de conexiones

No existe un número definido de conexiones por defecto o de conexiones máximas para un equilibrador de carga de red. El número total de conexiones simultáneas depende de factores como los recursos asignados y el rendimiento de la red.

Representación de VPC de un equilibrador de carga de red

La figura 1 muestra la representación en VPC de una configuración típica de equilibrador de carga de red. El NLB se suministra en una subred de VPC. Para configurar la ruta de datos de red en el NLB, es necesario crear un listener, un pool y al menos un miembro. Un listener es el puerto de interfaz en el que el NLB está a la escucha para recibir las solicitudes de los clientes. Estas solicitudes se reenvían a los destinos de la agrupación que está asociada al escucha. Un grupo es un conjunto de destinos que se utilizan para distribuir las solicitudes de red que llegan al NLB para un listener específico. Un miembro es un servidor de fondo con un puerto especificado que está configurado para escuchar solicitudes.

Flujo de trabajo del equilibrador de carga de red
Flujo de trabajo del equilibrador de carga de red

Equilibrio de carga de capa 4

Network Load Balancer for VPC proporciona un servicio de equilibrio de carga de capa 4 (conocido como capa de transporte) a los servidores del usuario en una VPC. Decide hacia dónde se dirige el tráfico basándose en las direcciones IP de origen y destino y del puerto en la cabecera del paquete. El equilibrador de carga no realiza una comprobación del contenido del paquete.

Dado que el equilibrio de carga de la capa 4 requiere menos cálculos en comparación con el equilibrio de carga más sofisticado, como el de la capa 7, el uso de la CPU y la memoria se utilizan de forma más eficiente.

Caso de uso 1: Equilibrador de carga de red pública

Un NLB público da soporte a Direct Server Return (DSR). Los equilibradores de carga de aplicación no dan soporte a esta prestación.

La figura 2 ilustra cómo funciona un NLB público. El consumidor registra la dirección IP del equilibrador de carga con DNS utilizando el FQDN del equilibrador de carga. Opcionalmente, el consumidor consulta el servidor DNS. DNS responde con la dirección IP del equilibrador de carga. El consumidor envía una solicitud de datos a TCP al equilibrador de carga, y éste la reenvía a un destino back-end. El destino genera una respuesta y la respuesta se envía directamente al consumidor con DSR.

![](images/lb_use_case_1.svg "de carga público*Equilibrador de carga " caption-side="bottom"} de carga "){: caption="

Caso de uso 2: equilibrador de carga de red privada

Un NLB privado solo es accesible desde dentro de la red de VPC, donde el consumidor tiene accesibilidad (por ejemplo, a través de Direct Link, Transit Gatewayo ambos).

Para los equilibradores de carga privados, debe tener una subred dedicada sin rutas personalizadas configuradas para la subred.

La figura 3 ilustra cómo funciona un NLB privado. El consumidor consulta DNS para la dirección IP del equilibrador de carga utilizando el FQDN del equilibrador de carga. Opcionalmente, el consumidor consulta el servidor DNS. DNS responde con la dirección IP del equilibrador de carga. El consumidor envía una solicitud TCP al equilibrador de carga para obtener datos a través de un enlace directo o una pasarela de tránsito, y el equilibrador de carga reenvía la solicitud a un destino back-end. El destino genera una respuesta y la respuesta se envía directamente al consumidor utilizando DSR.

![](images/lb_use_case_2.svg "de carga privado*Equilibrador de carga " caption-side="bottom"} de carga "){: caption="

Caso de uso 3: equilibrador de carga de red privada con la modalidad de direccionamiento habilitada

Los NLB con route_mode establecido en true son equilibradores de carga privados que solo dan soporte a dispositivos de función de red virtual (VNF), como un cortafuegos, como destinos de fondo.

La figura 4 ilustra cómo funciona un NLB privado con modalidad de direccionamiento. El consumidor consulta DNS para la dirección IP del equilibrador de carga utilizando el FQDN del equilibrador de carga. Opcionalmente, el consumidor consulta el servidor DNS. DNS responde con la dirección IP del equilibrador de carga. El consumidor envía una solicitud TCP al equilibrador de carga para obtener datos a través de un enlace directo o una pasarela de tránsito. El equilibrador de carga reenvía la solicitud a los dispositivos VNF y, a continuación, a los destinos de fondo. El destino genera una respuesta y dicha respuesta se devuelve al NLB y, a continuación, de nuevo a los dispositivos VNF antes de volver al cliente.

Balanceador de carga privado con modo de enrutamiento activado*Balanceador de carga
con modo de enrutamiento

Varios NLB privados con el modo de enrutamiento habilitado en cada zona pueden recibir tráfico de forma asíncrona en cualquier momento. Si un NLB en modo de ruta deja de estar operativo, deja de recibir tráfico, y este se redirige automáticamente a los NLB en modo de ruta que sí están operativos en la zona. Para obtener más información, consulta reenvío ponderado.

Caso práctico 4: Alta disponibilidad multizona mediante un equilibrador de carga de red

La Figura 5 ilustra cómo puede desplegar un NLB para soportar múltiples zonas. Este escenario de implementación suele requerir el uso de la opción de equilibrador de carga global (GLB) en IBM Cloud Internet Services(CIS).

Existe una limitación conocida para este caso de uso. Dos miembros con la misma instancia y puerto no pueden existir al mismo tiempo. En su lugar, puede utilizar un puerto diferente con la misma instancia.

Quizá te interese aprovechar el alto rendimiento (y la baja latencia) que el NLB obtiene gracias a DSR. Además, se recomienda implementar las cargas de trabajo en varias zonas para aumentar su disponibilidad en un entorno de alta disponibilidad (HA).

Puede utilizar este escenario de despliegue para obtener alta disponibilidad y asegurarse de que las cargas de trabajo estén disponibles en varias zonas de disponibilidad en caso de que se produzca un error del equilibrador de carga. Si se produce una condición de anomalía en un equilibrador de carga en una zona de disponibilidad, el GLB ya no envía tráfico a dicha zona de disponibilidad. Por ejemplo, si se produce una anomalía en la zona de disponibilidad 1, el GLB envía tráfico a la zona de disponibilidad 2 o a la zona de disponibilidad 3. Los casos de ejemplo pueden incluir un gran número de anomalías, desde un solo NLB, hasta una zona de disponibilidad completa.

Equilibrador de carga de red pública multizona
Equilibrador de carga de red multizona

El requisito de un NLB por zona sólo es necesario para NLB Públicos y Privados. Private Path NLB es regional por naturaleza, por lo que no es necesario definir uno por zona.

Caso práctico 5: Equilibrador de carga de red Private Path

Un NLB Private Path mantiene todos los puntos de control de tráfico entre el Proveedor y el Consumidor dentro de la infraestructura IBM Cloud. Los datos no salen a Internet.

A diferencia de otros NLB, un balanceador de carga de red Private Path proporciona disponibilidad regional y es resistente a fallos de zona incluso si se selecciona una única subred. No es necesario crear varios balanceadores de carga Private Path ni especificar más de una subred para garantizar la resiliencia ante fallos de zona. Su selección de subred sólo afecta a las direcciones IP asociadas con el equilibrador de carga.

Sólo puede utilizar NLB de vía de acceso privada con un servicio de vía de acceso privada. Para obtener más información, consulte Acerca de los servicios de vía de acceso privada.

La Figura 6 ilustra cómo funciona un NLB de Private Path para dar soporte a un servicio de Private Path. El NLB de vía de acceso privada se registra con el servidor DNS. Opcionalmente, el consumidor consulta el servidor DNS. A continuación, el consumidor envía una solicitud de datos a TCP al NLB de ruta privada a través de una pasarela VPE, y el NLB de ruta privada reenvía la solicitud a los destinos. A su vez los objetivos generan una respuesta, esa respuesta es enviada por direct-server-return al VPE, y luego es enviada al Consumidor.

Equilibrador de carga de red de ruta privada
Equilibrador de carga público

Caso de uso 8: Alta disponibilidad multizona mediante enrutamiento asimétrico

La siguiente configuración solo se puede utilizar con un NLB privado que tenga habilitado el modo de enrutamiento.

La figura 9 ilustra cómo los NLB en modo de ruta privada pueden proporcionar alta disponibilidad multizona mediante el enrutamiento asimétrico. En primer lugar, un usuario envía una solicitud al VPC central del proveedor a través de una ruta de conectividad privada, como una VPN, Direct Link o Transit Gateway. El NLB en modo de ruta privada del proveedor envía la solicitud a través de una puerta de enlace de tránsito a las instancias de servidor virtual en la VPC secundaria. Con el reenvío ponderado activado, el tráfico de respuesta puede seguir una ruta diferente a la de la solicitud original sin depender del estado de la conexión establecido previamente.

Por ejemplo, un paquete de solicitud podría entrar a través del NLB de la zona de disponibilidad 1 y reenviarse a una instancia de servidor virtual en la VPC secundaria, mientras que el paquete de respuesta volvería a través del NLB de la zona de disponibilidad 2. Dado que el reenvío es independiente de la ruta de conexión original, la respuesta se acepta y se reenvía correctamente. Los pesos configurados siguen influyendo en la distribución del tráfico entre las instancias de servidores virtuales del backend, al tiempo que se mantiene la alta disponibilidad en varias zonas.

Además, si una zona deja de estar disponible o un equilibrador de carga de red (NLB) en modo de ruta ya no tiene ninguna instancia de cortafuegos activa asociada, el anuncio de ruta correspondiente se retira automáticamente. Este mecanismo dinámico de retirada de rutas evita que el tráfico se dirija a puntos finales de servicio que no funcionan correctamente y permite la alta disponibilidad (HA) regional, al garantizar que el tráfico se enrute únicamente a través de dispositivos de cortafuegos operativos basados en VNF.

Alta disponibilidad

multizona mediante enrutamiento
asimétrico. Alta disponibilidad multizona mediante enrutamiento
asimétrico