Los diferentes algoritmos que podemos aplicar para hacer el balanceo son:
- Round Robin
- Least Connection
- Service Least Connection
- Weighted Round Robin
- Weighted Least Connection
- Service Weighted Least Connection
- Fastest Response Time
- Least Request
- Round Robin Strict
- Stateless - con 4 opciones dependiendo de la ip origen/destino y el puerto de origen/destino
El servicio de Balanceo de carga de servidores (SLB) tiene 3 elementos principales.
- Servers: nombre, ip (o nombre DNS) y puertos
- (config)#slb server
- #show slb server
- Service Group: nombre, tipo (tcp/udp), Algoritmo LB, Servers y Puertos
- Virtual Servers (VIPs)
TOPOLOGÍAS DE SLB
Tenemos 4 tipos de topologías que podemos configurar:
- Routed (L3) sin Source NAT
- No requiere cambios ni en cliente ni en servidores
- Provee una capa de seguridad adicional
- Hay que configurar en los servidores al SLB como puerta de enlace
Como vemos en el gráfico, el cliente apunta a la dirección VIP (100.0.0.10). Cuando pasa por el A10 el origen sigue siendo el mismo pero el destino cambia a la 100.0.1.100. Vemos que en la vuelta del tráfico sigue el mismo proceso.
- Routed (L3) con Source NAT
- No requiere cambios ni en cliente ni en servidores
- Fácil de comprobar
- Hay que configurar en el SLB la opción Source Nat
- Los servidores pierden la visibilidad IP del cliente, aunque se puede insertar la IP en la cabecera
Como vemos en el gráfico, el cliente apunta a la dirección VIP (100.0.0.10). Cuando pasa por el A10 el origen cambia a la 100.0.1.50 y el destino cambia a la 100.0.1.100. Vemos que en la vuelta del tráfico sigue el mismo proceso.
- One-Armed (L2)
- No requiere cambios ni en cliente ni en servidores
- Fácil de comprobar
- Hay que configurar en el SLB la opción Source Nat
- Los servidores pierden la visibilidad IP del cliente, aunque se puede insertar la IP en la cabecera
La única diferencia con L3 con Source Nat es que el cliente puede estar en la misma subred que el servidor
- DSR (Direct Server Return)
- Hay que configurar la VIP como loopback en los servidores
- No puede usar funciones de capa 7. aFleX se puede aplicar a nivel de puerto virtual
- Solo hay proceso de SLB en el tráfico de entrada
El cliente apunta a una VIP y los servidores devuelven el tráfico directamente con la VIP como Source ya que la tienen configurada como loopback.
HEALTH MONITOR
Para comprobar la disponibilidad del servicio final usamos los "health monitor". Estos pueden ser aplicados a:
- Server - por defecto es icmp
- Server:Port - por defecto el tcp del hadnsahake
- Service Group - no tiene por defecto
- Capa 3: ping (icmp)
- Capa 4: tcp o udp
- Capa 7: http, https, ftp, smtp, pop3, snmp, dns, radius, ldap, rtsp, sip, ntp
- Scripts
Si el Health Monitor falla en:
- Server - el servidor es considerado en "down" y los Service Groups para ese servidor dejan de balancearse
- Server:Port - el puerto de ese servidor es considerado en "down" y los Service Groups para ese puerto de ese servidor dejan de balancearse
- Service Group. cuando falla para un miembro específico, deja de balancear para ese miembro
SOURCE IP PERSISTENCE
Esta opción se usa para que los clientes, una vez se conectan a uno de los servidores, las siguientes conexiones sigan yendo hacia el mismo servidor.
Para configurar la persistencia se hace a través de una plantilla:
- (config)#slb template persist source-ip
La plantilla tendrá las siguientes opciones:
- VIP
- Port
- Serice Group
- Timeout: por defecto son 5 minutos
- Don't Honnor Conn Rules: ignora los límites de conexiones definidos en Servers y Server Ports y permite nuevas conexiones al Server. Está deshabilitado por defecto.
- Netmask: máscara de red
Una vez creada la plantilla, se asigna al Virtual Server Port.
SOURCE NAT
Necesitamos configurar Source Nat para asegurarnos que la respuesta del tráfico del servidor hacia nuestro equipo A10 antes de devolverlo al cliente. También se hace a través de una plantilla.
Lo primero es crear un Pool:
- (config)#ip nat pool
Ip Incio Ip Final netsmask /X - (config)#ip nat pool NATPLANTILLA 10.0.0.1 10.0.0.10 netsmask /24 - Ejemplo
Si la IP de Inicio y Final es la misma, se hará NAT solo con un IP pero con un ma´ximo de 64 flujos.
Una vez creada la plantilla, se asigna al Virtual Server Port.
Smart NAT (Automatic NAT)
Las direcciones IP que usa el Smart NAT para crear los mapeos dependen de si el VRRP-A o el HA están habilitados y las "Floating IP" que tengan configuradas.
- Si VRRP-A o HA están habilitados, Smart NAT usará la "Floating-Ip" como la IP NAT.
- Si no están habiltado ninguno de los dos, usará la dirección primaria del A10 que esté conectada al servidor real.
- source nat auto precedence
GRUPOS DE POOL CON NAT
Los grupos de Pool con NAT pueden contener múltiples Pools. Se usan cuando el espacio de direcciones NAT no es contiguo.
- (config)#ip nat pool-group
Se aplica en el Virtual Port con el mismo comando que los Pools de NAT:
- (config-slb vserver-vport)#source-nat pool-group
SLB con Virtual Server (VIP) y Virtual Port (VPort)
La configuración mínima para crearlo debe ser:
- VIP
- Nombre
- Dirección IP a la que apuntan los clientes
- Virtual Server Ports
- VPort
- Tipo: tcp, udp, hhtp, https, fast-http, rtsp, ftp, mms, ssl-proxy, smtp, sip, sip-tls, otros
- Número de puerto o rango de puertos
- Grupo de Servicio
Sirve muy util la configuración del Load Balancer A10
ResponderEliminar