GNU/Linux >> Tutoriales Linux >  >> Ubuntu

¿Qué es el equilibrio de carga? Definición y cómo funciona

Introducción

Los sitios web y las aplicaciones modernas generan mucho tráfico y atienden numerosas solicitudes de clientes simultáneamente. El equilibrio de carga ayuda a cumplir con estas solicitudes y mantiene la respuesta rápida y confiable del sitio web y la aplicación.

En este artículo, aprenderá qué es el balanceo de carga, cómo funciona y qué tipos diferentes de balanceo de carga existen.

Definición de equilibrio de carga

El equilibrio de carga distribuye un alto tráfico de red a través de múltiples servidores, lo que permite a las organizaciones escalar horizontalmente para cumplir con las cargas de trabajo de alto tráfico. El equilibrio de carga enruta las solicitudes de los clientes a los servidores disponibles para distribuir la carga de trabajo de manera uniforme y mejorar la capacidad de respuesta de las aplicaciones, lo que aumenta la disponibilidad del sitio web.

El equilibrio de carga se aplica a las capas 4-7 en la interconexión de sistema abierto de siete capas (OSI ) modelo. Sus capacidades son:

  • L4. Dirigir el tráfico en función de los datos de la red y los protocolos de la capa de transporte, por ejemplo, la dirección IP y el puerto TCP.
  • L7 . Agrega cambio de contenido al equilibrio de carga, lo que permite tomar decisiones de enrutamiento en función de características como el encabezado HTTP, el identificador uniforme de recursos, el ID de sesión SSL y los datos del formulario HTML.
  • GSLB. Global Server Load Balancing amplía las capacidades L4 y L7 a servidores en diferentes sitios.

¿Por qué es importante el equilibrio de carga?

El equilibrio de carga es esencial para mantener el flujo de información entre el servidor y los dispositivos de usuario utilizados para acceder al sitio web (por ejemplo, computadoras, tabletas, teléfonos inteligentes).

Hay varios beneficios de equilibrio de carga:

  • Fiabilidad. Un sitio web o aplicación debe proporcionar una buena UX incluso cuando el tráfico es alto. Los balanceadores de carga manejan los picos de tráfico moviendo datos de manera eficiente, optimizando el uso de recursos de entrega de aplicaciones y evitando sobrecargas del servidor. De esa forma, el rendimiento del sitio web se mantiene alto y los usuarios quedan satisfechos.
  • Disponibilidad. El equilibrio de carga es importante porque implica comprobaciones de estado periódicas entre el balanceador de carga y las máquinas host para garantizar que reciban solicitudes. Si una de las máquinas host está inactiva, el equilibrador de carga redirige la solicitud a otros dispositivos disponibles.

    Los balanceadores de carga también eliminan servidores defectuosos de la piscina hasta que se resuelva el problema. Algunos balanceadores de carga incluso crean nuevos servidores de aplicaciones virtualizados para satisfacer una mayor cantidad de solicitudes.
  • Seguridad. El equilibrio de carga se está convirtiendo en un requisito en la mayoría de las aplicaciones modernas, especialmente con las funciones de seguridad adicionales a medida que evoluciona la computación en la nube. La función de descarga del equilibrador de carga protege contra ataques DDoS cambiando el tráfico de ataque a un proveedor de nube pública en lugar del servidor corporativo.
  • Información predictiva. El equilibrio de carga incluye análisis que pueden predecir cuellos de botella en el tráfico y permitir que las organizaciones los prevengan. Los conocimientos predictivos impulsan la automatización y ayudan a las organizaciones a tomar decisiones para el futuro.

¿Cómo funciona el equilibrio de carga?

Los balanceadores de carga se ubican entre los servidores de aplicaciones y los usuarios en Internet. Una vez que el balanceador de carga recibe una solicitud, determina qué servidor en un grupo está disponible y luego enruta la solicitud a ese servidor.

Al enrutar las solicitudes a los servidores disponibles o servidores con cargas de trabajo más bajas, el equilibrio de carga elimina la presión de los servidores estresados ​​y garantiza una alta disponibilidad y confiabilidad.

Los balanceadores de carga agregan o quitan servidores dinámicamente en caso de alta o baja demanda. De esa manera, proporciona flexibilidad para adaptarse a la demanda.

El equilibrio de carga también proporciona conmutación por error además de potenciar el rendimiento. El equilibrador de carga redirige la carga de trabajo de un servidor fallido a uno de respaldo, mitigando el impacto en los usuarios finales.

Tipos de equilibrio de carga

Los balanceadores de carga varían en el tipo de almacenamiento, la complejidad del balanceador y la funcionalidad. Los diferentes tipos de balanceadores de carga se explican a continuación.

Basado en hardware

Un balanceador de carga basado en hardware es hardware dedicado con software propietario instalado. Puede procesar grandes cantidades de tráfico de varios tipos de aplicaciones.

Los balanceadores de carga basados ​​en hardware contienen capacidades de virtualización integradas que permiten múltiples instancias de balanceador de carga virtual en el mismo dispositivo.

Basado en software

Un equilibrador de carga basado en software se ejecuta en máquinas virtuales o servidores de caja blanca, generalmente incorporados en ADC (controladores de entrega de aplicaciones). El equilibrio de carga virtual ofrece una flexibilidad superior en comparación con la física.

Los balanceadores de carga basados ​​en software se ejecutan en hipervisores comunes, contenedores o como procesos de Linux con una sobrecarga insignificante en un servidor completo.

Virtuales

Un balanceador de carga virtual implementa el software patentado de balanceo de carga desde un dispositivo dedicado en una máquina virtual para combinar los dos tipos mencionados anteriormente. Sin embargo, los balanceadores de carga virtuales no pueden superar los desafíos arquitectónicos de escalabilidad y automatización limitadas.

Basado en la nube

El equilibrio de carga basado en la nube utiliza la infraestructura de la nube. Algunos ejemplos de equilibrio de carga basado en la nube son:

  • Equilibrio de carga de red . El equilibrio de carga de red se basa en la capa 4 y aprovecha la información de la capa de red para determinar dónde enviar el tráfico de red. El equilibrio de carga de red es la solución de equilibrio de carga más rápida, pero carece de equilibrio en la distribución del tráfico entre servidores.
  • Equilibrio de carga HTTP(S) . El balanceo de carga HTTP(S) se basa en la capa 7. Es uno de los tipos de balanceo de carga más flexibles, lo que permite a los administradores tomar decisiones de distribución de tráfico en función de cualquier información que venga con una dirección HTTP.
  • Equilibrio de carga interna . El equilibrio de carga interno es casi idéntico al equilibrio de carga de red, excepto que puede equilibrar la distribución en la infraestructura interna.

Algoritmos de equilibrio de carga

Los diferentes algoritmos de balanceo de carga ofrecen diferentes beneficios y complejidad, según el caso de uso. Los algoritmos de equilibrio de carga más comunes son:

Ronda Robin

Distribuye solicitudes secuencialmente al primer servidor disponible y mueve ese servidor al final de la cola al finalizar. El algoritmo Round Robin se usa para grupos de servidores iguales, pero no considera la carga ya presente en el servidor.

Conexiones mínimas

El algoritmo Least Connections implica enviar una nueva solicitud al servidor menos ocupado . El método de conexión mínima se usa cuando hay muchas conexiones persistentes distribuidas de manera desigual en el grupo de servidores.

Menor tiempo de respuesta

El equilibrio de carga de menor tiempo de respuesta distribuye las solicitudes al servidor con la menor cantidad de conexiones activas y con la respuesta promedio más rápida tiempo a una solicitud de control de salud. La velocidad de respuesta indica qué tan cargado está el servidor.

Hachís

El algoritmo Hash determina dónde distribuir las solicitudes en función de una clave designada , como la dirección IP del cliente, el número de puerto o la URL de solicitud. El método Hash se usa para aplicaciones que se basan en información almacenada específica del usuario, por ejemplo, carritos en sitios web de comercio electrónico.

Carga personalizada

El algoritmo de carga personalizada dirige las solicitudes a servidores individuales a través de SNMP (Protocolo Simple de Manejo de Red). El administrador define la carga del servidor para que el equilibrador de carga la tenga en cuenta al enrutar la consulta (por ejemplo, uso de CPU y memoria, y tiempo de respuesta).


Ubuntu
  1. ¿Qué es Hadoop Mapreduce y cómo funciona?

  2. ¿Qué es Git Upstream y cómo configurar la rama Upstream?

  3. Reforzamiento de VPN:qué es y cómo hacerlo

  4. ¿Qué es Build-Essential-Ubuntu, cómo instalarlo y usarlo?

  5. ¿Qué es el correo y cómo se navega?

¿Qué es PPA en Ubuntu y cómo agregarlo o eliminarlo?

¿Qué es EasyApache y cómo lo uso?

¿Qué es PPA en Ubuntu Linux y cómo lo uso?

¿Cómo funciona un balanceador de carga? ¿Qué es el equilibrio de carga?

¿Qué es DHCP y cómo funciona DHCP? (Explicación de los fundamentos de DHCP)

¿Qué es el DNS y cómo funciona el DNS? (Fundamentos del servidor de nombres de dominio)