Clúster de equilibrio de carga de Theory-LVS

1. Descripción general de las aplicaciones de clúster empresarial

1.1 El significado de cluster

  • Clúster, clúster, clúster
  • Consta de varios hosts, pero solo externamente aparece como un todo

1.2 El problema

  • En la aplicación de Internet de las cosas, dado que el sitio tiene requisitos cada vez más altos para el rendimiento del hardware, la velocidad de respuesta, la estabilidad del servicio y la confiabilidad de los datos, un solo servidor no puede hacerlo.

1.3 Solución

  • Utilice miniordenadores y mainframes costosos
  • Utilice servidores normales para crear clústeres de servicios

Dos, clasificación de agrupaciones empresariales

2.1 Según la diferencia de destino del grupo, la función se puede dividir en tres tipos

  • Clúster de equilibrio de carga
    ◆ Realice verificación de estado, administre la programación
  • Clústeres de alta disponibilidad
    ◆ Dos servidores de equilibrio de carga logran una alta disponibilidad. Incluso si un servidor de equilibrio de carga está inactivo, aún está disponible y es confiable; los dos servidores pueden no estar ubicados geográficamente juntos, y uno puede estar ubicado en Beijing y el otro En Nanjing
  • Clúster de computación de alto rendimiento
    ◆ Se recibe una gran solicitud de servicio, se asigna un solo procesamiento de 30 minutos a los siguientes nodos, lo que reduce el tiempo

2.2 Clúster de equilibrio de carga

  • Mejore la capacidad de respuesta del sistema de la aplicación, maneje más solicitudes de acceso tanto como sea posible, reduzca la latencia como objetivo y obtenga alta concurrencia y alta carga (LB) rendimiento general
  • La distribución de carga de LB depende del algoritmo de distribución del nodo maestro (el algoritmo de distribución es el algoritmo de programación)

2.3 Clúster de alta disponibilidad

  • El objetivo es mejorar la confiabilidad del sistema de aplicación, reducir el tiempo de interrupción tanto como sea posible y garantizar la continuidad de los servicios para lograr el efecto de tolerancia a fallas de alta disponibilidad (HA)
    ◆ HA significa alta disponibilidad, y los clústeres pueden soportar alta disponibilidad
  • El modo de trabajo de HA incluye modos dúplex y maestro-esclavo.
    ◆ Dúplex significa que ambos servidores están en estado de trabajo. El mecanismo de clúster descentralizado pertenece al nivel de nivel y la información recibida puede procesarse; ejemplos de mecanismo descentralizado: Por ejemplo, redis
    ◆ El maestro-esclavo es un clúster centralizado, uno es el maestro y los demás son todos servidores esclavos para respaldo

2.4 Clúster de computadoras de alto rendimiento

  • Con el objetivo de aumentar la velocidad de computación de la CPU del sistema de aplicaciones, expandir los recursos de hardware y las capacidades de análisis, obtener capacidades de computación de alto rendimiento (HPC) equivalentes a las supercomputadoras a gran escala.
  • El alto rendimiento del clúster de computación de alto rendimiento se basa en la "computación distribuida" y la "computación en paralelo". La CPU, la memoria y otros recursos de varios servidores se integran mediante hardware y software dedicados para lograr capacidades de computación que solo las grandes y supercomputadoras tienen
    ◆ Integrar servidores ordinarios para obtener una potencia informática de alto nivel equivalente a las supercomputadoras
    ◆ Potencia informática: CPU, GPU, chips de placa base, ancho de banda y optimización de la velocidad de funcionamiento de la computadora están todos dentro de la consideración de la potencia informática

Tres, arquitectura de clúster de equilibrio de carga

3.1 La estructura del equilibrio de carga

  • La primera capa, programador de carga (Load Balancer o Director)
  • La segunda capa, el grupo de servidores (grupo de servidores)
  • La tercera capa, almacenamiento compartido (almacenamiento compartido)

Inserte la descripción de la imagen aquí

Cuarto, análisis del modo de trabajo del clúster de equilibrio de carga

  • El clúster de equilibrio de carga es actualmente el tipo de clúster más utilizado en las empresas.
  • La tecnología de programación de carga del clúster tiene tres modos de trabajo:
    traducción de direcciones, modo NAT,
    túnel IP,
    enrutamiento directo, modo DR

4.1 Traducción de direcciones de modo NAT

  • Traducción de direcciones de red, conocida como modo NAT
  • Similar a la estructura de red privada de un firewall, el programador de carga sirve como la administración de red de todos los nodos del servidor, es decir, como la entrada de acceso del cliente, y también la salida de acceso de cada nodo en respuesta al cliente.
  • El nodo del servidor usa una dirección IP privada y está ubicado en la misma red física que el programador de carga, y la seguridad es mejor que los otros dos métodos.

Inserte la descripción de la imagen aquí

4.2 Túnel IP en modo TUN

  • Túnel IP, modo TUN para abreviar
  • Al adoptar una estructura de red abierta, el programador de carga solo sirve como portal de acceso del cliente, y cada nodo responde directamente al cliente a través de su propia conexión a Internet, en lugar de pasar por el programador de carga.
  • Los nodos del servidor están dispersos en diferentes ubicaciones de Internet, tienen direcciones IP públicas independientes y se comunican con el programador de carga a través de un túnel IP dedicado.

Inserte la descripción de la imagen aquí
Nota:

  • Túnel IP dedicado para cifrado-VPN, cifrado de túnel, cifrado de datos
  • El planificador es el único punto de entrada

4.3 Enrutamiento directo en modo DR

  • Enrutamiento directo, denominado modo DR
  • Adopta una estructura de red semiabierta, que es similar a la estructura del modelo TUN, pero los nodos no están dispersos por todas partes, sino que están ubicados en la misma red física que el programador.
  • El programador de carga está conectado a cada servidor de nodo a través de la red local, sin la necesidad de establecer un túnel IP dedicado.

Inserte la descripción de la imagen aquí

Modo operativo Caracteristicas
Traducción de direcciones de modo NAT (traducción de direcciones de red) Similar a una estructura de red privada similar a un firewall, el programador de carga sirve como la administración de red de todos los nodos del servidor, es decir, como la entrada de acceso del cliente, y el programador de carga también es la salida de acceso de cada nodo en respuesta al cliente. El nodo del servidor usa una dirección IP privada y está ubicado con el programador de carga. La misma red física es más segura que los otros dos métodos
Modo TUN-túnel IP (túnel IP) Con una estructura de red abierta, el programador de carga solo se utiliza como portal de acceso del cliente. Cada nodo responde directamente al cliente a través de su propia conexión a Internet, en lugar de pasar por el programador de carga. Los nodos del servidor están dispersos en diferentes ubicaciones de Internet. Todos los nodos Ambos tienen direcciones IP públicas independientes, se comunican con el programador de carga a través de un túnel IP dedicado
Modo DR: enrutamiento directo Adopta una estructura de red semiabierta, que es similar a la estructura del modelo TUN, pero los nodos no están dispersos por todas partes, sino que están ubicados en la misma red física que el programador. El programador de carga está conectado a cada servidor de nodo a través de la red local y no necesita ser establecido Túnel IP dedicado

Nota:

  • LVS solo puede filtrar según el protocolo tcp / udp de cuatro capas
  • nginx tiene 7 capas
  • SLB de Alibaba Cloud se basa en el protocolo de filtrado de cuatro y siete capas

Cinco, sobre el servidor virtual LVS

5.1 Servidor virtual Linux

  • Solución de equilibrio de carga para el kernel de Linux
  • Fundada por el Dr. Zhang Wensong en China en mayo de 1998
  • Sitio web oficial: http://www.linuxvirtualserver.org/

Inserte la descripción de la imagen aquí

5.2 algoritmo de programación de carga LVS

5.2.1 Round Robin

  • Las solicitudes de acceso recibidas se asignan a cada nodo (servidor real) en el clúster en orden, y cada servidor se trata por igual, independientemente del número real de conexiones y la carga del sistema del servidor.

5.2.2 Round Robin ponderado

  • Según la capacidad de procesamiento del servidor real, las solicitudes de acceso recibidas se asignan a su vez. El programador puede consultar automáticamente el estado de carga de cada nodo y ajustar dinámicamente su peso.
  • Asegúrese de que los servidores con sólidas capacidades de procesamiento soporten más tráfico

Nota:
Encuesta ponderada: también llamada ponderación, el número de visitas asignadas

5.2.3 Conexiones mínimas

  • Asignar según el número de conexiones establecidas por el servidor real, y priorizar las solicitudes de acceso recibidas al nodo con menor número de conexiones

5.2.4 Conexiones menos ponderadas

  • En el caso de grandes diferencias en el rendimiento del nodo del servidor, el peso se puede ajustar automáticamente para el servidor real
  • Los nodos con pesos más altos soportarán una mayor proporción de carga de conexión activa

Seis: herramienta ipvsadm

6.1 Creación y gestión de clústeres LVS

Inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/ZG_66/article/details/108710372
Recomendado
Clasificación