Sie sind auf Seite 1von 19

RED HAT CONSULTING

MANUAL TECNICO LVS

MANUAL TECNICO DE USO DE LVS


RED HAT CONSULTING

TABLA DE CONTENIDOS
1 Introducción ........................................................................................................................................ 3
1.1 Acerca de este documento .......................................................................................................... 3
1.2 Registro de versiones .................................................................................................................. 3
2 Descripción General............................................................................................................................ 4
2.1 Visión general de la adición de equilibrador de carga ................................................................ 4
2.2 Configuración básica de la adición de equilibrador de carga ..................................................... 4
3 Arquitectura de lvs .............................................................................................................................. 6
3.1 Terminologia ............................................................................................................................... 6
4 instalacion de rhel ............................................................................................................................... 8
4.1 Instalacion de rhel ....................................................................................................................... 8
Configuraciones importantes de lvs ...................................................................................................... 10
NTP ................................................................................................................................................... 10
Configuracion de Network ................................................................................................................ 10
Referencia : https://access.redhat.com/documentation/en-
US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s1-networkscripts-interfaces.html ..... 10
Instalacion de lvs................................................................................................................................... 11
5 Configuracion de lvs ......................................................................................................................... 13
Configuración de Directores ................................................................................................................. 13
Script : ................................................................................................................................................... 13
Configuracion de piranha ...................................................................................................................... 14
Configuración de real server ................................................................................................................. 15
Ejemplo de automatizacion ................................................................................................................... 15
Definiciones de lvs .....................................................................................Error! Bookmark not defined.

Manual de lvs Pagina 2


RED HAT CONSULTING

1 INTRODUCCIÓN

El objetivo de este documento es entregar la información necesaria para poder hacer despliegues de LVS de forma simple y
automatizada .

Este es un documento de orientación al cliente entre Red Hat, Inc.

Copyright 2014© Red Hat, Inc. Todos los derechos reservados. Ninguna parte de la obra amparada por el derecho de autor
en este documento puede ser reproducida o utilizada de ninguna forma ni por ningún medio-gráfico, electrónico o mecánico,
incluyendo el fotocopiado, grabación o sistemas de almacenamiento y recuperación de información, sin permiso por escrito de
Red Hat con excepción de lo que se requiere para compartir esta información según lo previsto con las partes confidenciales
antes mencionados.

1.1 Acerca de este documento

Este documento tiene por objetivo entregar un reporte ejecutivo del uso de LVS

1.2 Registro de versiones


Control de cambio
fecha Nombre
29-11-16 José Catalán

Manual de lvs Pagina 3


RED HAT CONSULTING

2 DESCRIPCIÓN GENERAL

2.1 Visión general de la adición de equilibrador de carga

La adición de equilibrador de carga es un conjunto de componentes de software que proporcionan Servidores virtuales de Linux (LVS) para
balancear la carga IP a través de un set de servidores reales. La adición de equilibrador de cargas se ejecuta en un par de computadores
configurados similarmente:
Uno de ellos es un enrutador LVS activo y el otro es un enrutador LVS de respaldo. El enrutador LVS activo tiene dos roles:

 Equilibrar la carga entre los servidores reales.


 Revisar la integridad de los servicios en cada servidor real.
 El enrutador LVS de respaldo sondea el estado del enrutador LVS activo y toma control de sus tareas en caso de que éste falle.

2.2 Configuración básica de la adición de equilibrador de carga

Las solicitudes de servicios que llegan al enrutador LVS son dirigidas a una IP virtual o VIP. Esta es una dirección de ruta pública que el
administrador del sitio asocia con un nombre de dominio completamente calificado, como www.ejemplo.com, y asigna uno o más servidores
virtuales. Un servidor virtual es un servicio configurado para escuchar en una IP virtual específica.
VIRTUALES” para obtener mayor información sobre cómo configurar un servidor virtual con la Piranha

Configuration Tool. Una dirección VIP migra de un enrutador LVS a otro durante un proceso de recuperación contra fallos, de esta forma se
mantiene una presencia en la dirección IP (también conocida como dirección IP flotante).

Las direcciones VIP pueden tener sobrenombres que se dirijan al mismo dispositivo que conecta al enrutador LVS con la red pública. Por
ejemplo, si eth0 está conectado a Internet, puede haber varios servidores virtuales con sobrenombres a eth0:1. Alternativamente, cada servidor
virtual puede estar asociado con un dispositivo separado por cada servicio. Por ejemplo, el tráfico HTTP puede ser manejado en eth0:1 y el
tráfico FTP puede ser manejado en eth0:2.

Solamente un enrutador LVS está activo a la vez. El rol del enrutador activo es el de redirigir las solicitudes de la dirección IP virtual a los
servidores reales. La redirección está basada en uno de ocho algoritmos que estan detalladas en la documentacion oficial de RedHat.

El enrutador LVS activo, sondea dinámicamente la salud de los servicios especificados en los servidores reales a través de un script de envío
y espera. Para ayudar en la detección de servicios que requieren datos dinámicos, tal como HTTPS o SSL, se puede incluso llamar a programas
ejecutables externos. Si un servicio en un servidor real no funciona adecuadamente, el enrutador LVS activo no envía solicitudes a ese
servidor hasta que retorne a la operación normal.
El enrutador de respaldo ejecuta el rol de sistema en espera. Periódicamente, los enrutadores LVS intercambian mensajes a través de la
interfaz pública externa primaria y, en caso de fallos, a través de la interfaz privada. Si el enrutador LVS de respaldo no recibe un mensaje
dentro de un intervalo de tiempo esperado, éste inicia un proceso de recuperación contra fallos y asume el rol de enrutador

Manual de lvs Pagina 4


RED HAT CONSULTING

Manual de lvs Pagina 5


RED HAT CONSULTING

3 ARQUITECTURA DE LVS
En este apartado se detalla la arquitectura planteada para LVS , el que esta compuesto por dos maquinas directores, los que se
encargan de hacer el trabajo de balanceo entre los servidores Reales.

3.1 Terminologia

Termino Descripción
RHEL Red Hat Enterprise Linux
LVS Servidores virtuales de Linux
SATELLITE Servicio de repositorios centralizados
IdM IPA Identity Managment - Identity, Policy, Audit
MS ACTIVE DIRECTORY (AD) Servicio de directorio en una red distribuida de computadores
SUDOERS Usuarios que tienen permisos de administración total y limitados del sistema

Manual de lvs Pagina 6


RED HAT CONSULTING

HOSTS Equipos conectados en la red


CPU Unidad central de procesamiento
KERNEL Nucleo del sistema operativo
SSHD Demonio sobre el que trabaja el servicio ssh

Manual de lvs Pagina 7


RED HAT CONSULTING

4 INSTALACION DE RHEL

Instalacion de rhel
Instalacion base de rhel se puede hacer por kickstart usando el siguiente :
# Date Created : 19:15:50.0

install
text
network --bootproto=static --device=eth0 --gateway=10.0.25.1 --ip=10.1.12.12 --nameserver=10.0.25.165 --
netmask=255.255.255.0
cdrom
lang en_US.UTF-8
keyboard la-latin1
timezone America/Santiago
auth --enablemd5 --enableshadow
rootpw redhat
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto"
# Disk partitioning information
clearpart --drives=sda,sdb,sdc --initlabel
# Create primary partitions
part /boot --fstype "ext4" --size=512 --asprimary
part pv.01 --size=1 --grow

# Create more logical partitions


# CCE-14161-4, CCE-14777-2, CCE-14011-1, CCE-14171-3, CCE-14559-9 (Rows 2 - 6)
volgroup vgroup1 pv.01
logvol swap --fstype=swap --name=swap --vgname=vgroup1 --size=1024

logvol / --fstype ext4 --name=root --vgname=vgroup1 --size=2560 --grow


logvol /tmp --fstype ext4 --name=temp --vgname=vgroup1 --size=256 --fsoptions="nodev,noexec,nosuid"
logvol /home --fstype ext4 --name=home --vgname=vgroup1 --size=1024 --fsoptions="nodev"
logvol /var --fstype ext4 --name=var --vgname=vgroup1 --size=1024 --fsoptions="nodev"
logvol /var/crash --fstype=ext4 --name=crash --vgname=vgroup1 --size=384 --fsoptions="nodev"
logvol /var/log --fstype ext4 --name=varlog --vgname=vgroup1 --size=512 --fsoptions="nodev,noexec,nosuid"
logvol /var/log/audit --fstype ext4 --name=audit --vgname=vgroup1 --size=256 --
fsoptions="nodev,noexec,nosuid"

reboot

%packages
@ Base
kexec-tools
postfix
logwatch
audit

%end
%post --interpreter=/bin/bash

MEDIO=192.168.1.X
HOST=cliente.example.com
# ----- Config YUM ----- #

cat <<EOF > /etc/yum.repos.d/rhel-source.repo

[rhel-source]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=http://$MEDIO/rhel-server-6.3/
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
EOF
# ----- FIN Config YUM ----- #

Manual de lvs Pagina 8


RED HAT CONSULTING

# ----- Config KDUMP -----


yum install kexec-tools kernel-kdump kernel-debug crash -y

cat <<EOF > /etc/kdump.conf


ext4 /var/crash
default reboot
debug_mem_level 3
path /var/crash

core_collector makedumpfile -c --message-level 1 -d 31


link_delay 60
EOF

# Detalles
chkconfig kdump on
#----- FIN Config KDUMP ----- #

# ----- RED- -------------#


cat <<EOF>> /etc/resolv.conf
nameserver 10.52.0.50
nameserver 10.52.0.56
search labbcch.local
EOF

cat <<EOF > /etc/sysconfig/network


NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=hotsname
EOF

#----- FIN Config RED----- #

# ----- FIREWALL -------------#

cat <<EOF > /etc/sysconfig/iptables

# Firewall configuration written by system-config-firewall


# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth+ -j ACCEPT
-A INPUT -i eth0 -s 192.168.0.0/24 -p tcp --dport 22 -j ACCEPT
# HTTP
-A INPUT -i eth0 -s 192.168.0.0/24 -p tcp --dport 80 -j ACCEPT
#SNMP
-A INPUT -i eth0 -s 192.168.0.0/24 -p udp --dport 161 -j ACCEPT
-A INPUT -i eth0 -s 192.168.0.0/24 -p tcp --dport 161 -j ACCEPT

#iptables -I INPUT -i eth0 -s 192.168.1.0/24 -p tcp --dport 445 -j ACCEPT


-A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
-A FORWARD -p icmp -j ACCEPT
-A FORWARD -i lo -j ACCEPT
-A FORWARD -i eth+ -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
EOF

# ----- FIN FIREWALL -------------#

Manual de lvs Pagina 9


RED HAT CONSULTING

# ----- SNMP -------------#


yum install -y net-snmp-utils.x86_64 net-snmp.x86_64

# cambiar comunidad snmp


cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf_backup

cat <<EOF > /etc/snmp/snmpd.conf


com2sec mynetwork 127.0.0.1 comunidad
com2sec mynetwork 192.168.0.0/24 comunidad
group MyROGroup v2c mynetwork
view all included .1
access MyROGroup "" any noauth exact all none none
syslocation Unknown (edit /etc/snmp/snmpd.conf)
syscontact Root (configure /etc/snmp/snmp.local.conf)
EOF
# ----- FIN SNMP -------------#
%end

Configuraciones importantes de LVS


En este apartado se detallan las configuraciones relevantes para le correcto funcionamiento de los sistemas que contienen la solucion LVS

NTP
Es relevante tomar en comsideracion que las configuraciones de hora es relevantesya que sin esto la conexión tcp no funciona de forma
correcta .
Para esto es necesario tener el NTP configurado en RHEL.

Referencia: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/sect-
Date_and_Time_Configuration-Command_Line_Configuration-Network_Time_Protocol.html

Configuracion de Network
Es importante que las configuraciones de red esten configuradas sin el control de Network Manager, ya que este puede interferir en el
correcto funcionamiento del sistema que se encuentre en produccion.

Referencia : https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s1-networkscripts-
interfaces.html

Repositorio de sistema

Para poder obtener los paquetes de rhel necesarios para la instalacion es lvs es necesario tener el repositorio de HA en nuestro rhel .

Referencia: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/sec-
Configuring_Yum_and_Yum_Repositories.html

Ejemplo:
cat <<EOF > /etc/yum.repos.d/ha.repo
[Base]
name=RHEL -
failovermethod=priority
baseurl=http://instructor.example.com/rhel/repo/
enabled=1
gpgcheck=0

[HighAvailability]
name=RHEL -
failovermethod=priority
baseurl=http://instructor.example.com/rhel/repo/HighAvailability/
enabled=1

Manual de lvs Pagina 10


RED HAT CONSULTING

gpgcheck=0

[LoadBalancer]
name=RHEL -
failovermethod=priority
baseurl=http://instructor.example.com/rhel/repo/LoadBalancer/
enabled=1
gpgcheck=0

[ResilientStorage]
name=RHEL -
failovermethod=priority
baseurl=http://instructor.example.com/rhel/repo/ResilientStorage/
enabled=1
gpgcheck=0

[ScalableFileSystem]
name=RHEL -
failovermethod=priority
baseurl=http://instructor.example.com/rhel/repo/ScalableFileSystem/
enabled=1
gpgcheck=0
EOF

Instalacion de lvs
Una ves que tenemos los repositorios listos podemos hacer la instalacion de los paquetes de LVS en ambos servidores directores

Ejemplo :

yum groupinstall -y load-balancer

Manual de lvs Pagina 11


RED HAT CONSULTING

Manual de lvs Pagina 12


RED HAT CONSULTING

5 CONFIGURACION DE LVS

Configuración de Directores
En este apartado detallamos la configuración de lvs a traves de un script, el cual se encarga de hacer la configuracion inicial
del servicio de forma automatizada .

Script :
#------------------CAMBIOS EN DIRECTORES------------------
# CREACION DE CONFIGURACION LVS, EN AMBOS DIRECTORES

DIRECTOR_PRIMARIO=10.0.25.229
DIRECTOR_SECUNDARIO=10.0.25.230
IP_REAL1=10.0.25.223
IP_REAL2=10.0.25.224
VIP=10.0.25.235
VIP_BROADCAST=10.0.25.255
VIP_MASK=255.255.255.128

cat <<EOF>> /etc/sysconfig/ha/lvs.cf


serial_no = 38
primary = $DIRECTOR_PRIMARIO
service = lvs
backup_active = 1
backup = $DIRECTOR_SECUNDARIO
heartbeat = 1
heartbeat_port = 539
keepalive = 6
deadtime = 18
network = direct
debug_level = NONE
monitor_links = 1
syncdaemon = 1
syncd_iface = eth0
syncd_id = 1
tcp_timeout = 60
tcpfin_timeout = 1
udp_timeout = 2
virtual [http] {
active = 1
address = $VIP eth0:1
vip_nmask = $VIP_MASK
port = 80
send = "GET / HTTP/1.0\r\n\r\n"
expect = "HTTP"
use_regex = 0
load_monitor = none
scheduler = rr
protocol = tcp
timeout = 6
reentry = 15
quiesce_server = 0
server real1 {
address = $IP_REAL1
active = 1
weight = 1
}
server real2 {
address = $IP_REAL2
active = 1
weight = 1
}
}
EOF

Manual de lvs Pagina 13


RED HAT CONSULTING

Configuration de iptables

#Configuracion iptables
cat <<EOF> /etc/sysconfig/iptables
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
#lvs http service
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
#directores
-A INPUT -s $DIRECTOR_PRIMARIO -j ACCEPT
-A INPUT -s $DIRECTOR_SECUNDARIO -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
EOF

Replicacion de iptables
#replicacion iptables
scp /etc/sysconfig/iptables $DIRECTOR_SECUNDARIO:/etc/sysconfig/iptables

# Servicios en ambos directores


yum install -y ipvsadm piranha
service ipvsadm start
service iptables restart
service pulse restart

chkconfig pulse on
chkconfig piranha-gui on # SÓLO EN UNO DE LOS DIRECTORES, y sólo si se usará a futuro
chkconfig httpd on
chkconfig ipvsadm on
chkconfig iptables on

Modificacion de parametros de kernel par el funcionamiento del enturamiento

cat <<EOF>> /etc/sysctl.conf


#LVS
net.ipv4.ip_forward = 1
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.eth0.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.eth0.arp_announce = 2
EOF

Configuracion de piranha
# CONFIGURACION DE PIRANHA-GUI (sólo en 1 director)

#cambio de password de piranha-gui


[root@ttalvspro01 ~]# piranha-passwd <<EOF
> redhat
> redhat
> EOF
New Password:
Verify:
Updating password for user piranha
[root@ttalvspro01 ~]#

http://localhost:3636

Manual de lvs Pagina 14


RED HAT CONSULTING

user=piranha
pass=redhat

[root@ttalvspro01 ~]# ipvsadm -L -n


IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 10.0.25.235:80 rr
-> 10.0.25.223:80 Route 1 0 0
-> 10.0.25.224:80 Route 1 0 0

Configuración de real server


En cada uno de los nodos que irán tras el balanceador (los 2 servidores reales en el ejemplo) deberemos crear un alias en la tarjeta de red,
con la IP virtual que hemos indicado para el virtual server:

real1$ ip addr add <IP VIP> dev eth0:1


real2$ ip addr add <IP VIP> dev eth1:1

En cada server que se define como real, debemos incluir la correspondiente sentencia en /etc/rc.local para asegurarnos que en cada reunicio
del servidor el balanceo funcione, tal como lo incica la documentacion oficial de RedHat, ejemplo de cómo podriamos hacer esta sentencia:

real1$ ifconfig eth0:1 192.168.2.240 netmask 255.255.252.0 broadcast 192.168.2.255 up


real2$ ifconfig eth1:1 192.168.2.240 netmask 255.255.252.0 broadcast 192.168.2.255 up

Una vez creado el alias y configurado en el rc.local, instalaremos y configuraremos arptables en cada los servers:

real1$ yum install arptables_jf


real1$ arptables -A IN -d <IP VIP> -j DROP
real1$ arptables -A IN -d <IP VIP> -j mangle --mangle-ip-s <Real>

real2$ yum install arptables_jf


real2$ arptables -A IN -d <IP VIP> -j DROP
real2$ arptables -A IN -d <IP VIP> -j mangle --mangle-ip-s <Real>

NOTA: En la documentación oficial de Red Hat, las reglas arptables están definidas de forma ligeramente diferente:

arptables -A IN -d <IP VIP> -j DROP


arptables -A OUT -s <IP VIP> -j mangle --mangle-ip-s <Real ip>

Una vez configurado, ejecutaremos las dos siguientes sentencias en cada Real Server para guardarlo y asegurarnos de ejecutarlo al inicio

service arptables_jf save


chkconfig --level 2345 arptables_jf on

Ejemplo de automatizacion Real Server


Este es un ejemplo de automatizacion de la creacion y configuracion de real server

#------------------CAMBIOS EN REAL SERVERS------------------

#variables
IP_REAL1=10.0.25.223
IP_REAL2=10.0.25.224
VIP=10.0.25.235
VIP_BROADCAST=10.0.25.255

Manual de lvs Pagina 15


RED HAT CONSULTING

VIP_MASK=255.255.255.128

#real server 1

service arptables_jf start


arptables -A IN -d $VIP -j DROP
arptables -A OUT -d $VIP -j mangle --mangle-ip-s $IP_REAL1
service arptables_jf save
chkconfig arptables_jf on
service arptables_jf restart
cat <<EOF>> /etc/rc.local
ifconfig eth0:1 $VIP netmask $VIP_MASK broadcast $VIP_BROADCAST up
EOF
ifconfig eth0:1 $VIP netmask $VIP_MASK broadcast $VIP_BROADCAST up
cat <<EOF>> /etc/sysctl.conf
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
EOF
echo $(hostname) > /var/www/html/test.html

#real server 2
service arptables_jf start
arptables -A IN -d $VIP -j DROP
arptables -A OUT -d $VIP -j mangle --mangle-ip-s $IP_REAL2
service arptables_jf save
chkconfig arptables_jf on
service arptables_jf restart

cat <<EOF>> /etc/rc.local


ifconfig eth0:1 $VIP netmask $VIP_MASK broadcast $VIP_BROADCAST up
EOF
ifconfig eth0:1 $VIP netmask $VIP_MASK broadcast $VIP_BROADCAST up

cat <<EOF>> /etc/sysctl.conf


net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
EOF
echo $(hostname) > /var/www/html/test.html

ESPERAR 5 MINUTOS PARA QUE EL SWITCH ACTUALICE SU TABLA DE ARP

Revisión de estado de lvs


Con estos commando podemos ver el estado del lvs.

[root@lnxqbal2 ~]# /etc/init.d/ipvsadm status


IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 150.10.11.170:80 rr
-> 150.10.11.176:80 Route 1 0 0
-> 150.10.11.177:80 Route 1 0 0
TCP 150.10.11.172:80 rr
-> 150.10.11.165:80 Route 1 0 0
-> 150.10.11.166:80 Route 1 0 0

[root@lnxqbal2 ~]#

Manual de lvs Pagina 16


RED HAT CONSULTING

Manual de lvs Pagina 17


RED HAT CONSULTING

DEFINICIONES DE LVS
Tipos de algorismos de balanceo de carga:

Algoritmos de programación
La estructura que la tabla IPVS adquiere depende del algoritmo de programación que el administrador elige para cualquier
servidor virtual determinado. Para permitir mayor flexibilidad en los tipos de servicios que se pueden agrupar en cluster y
para controlar la manera como se programan estos servicios, Red Hat Enterprise Linux proporciona los siguientes algoritmos
de programación. Para
obtener instrucciones sobre cómo asignar algoritmos de programación.

Programación Round-Robin
Distribuye cada solicitud secuencialmente a lo largo del grupo de servidores reales. Con este algoritmo, todos los servidores
reales son tratados como iguales sin importar la capacidad o
carga. Este modelo de programación se asemeja a DNS de Round-Robin, pero es más detallado porque se basa en las
conexiones de red y no en el host. La programación de roundrobin de la adición de equilibrador de carga tampoco sufre
desbalances causados por el proceso de cache de las solicitudes de DNS.

Programación ponderada Round-Robin


Distribuye cada solicitud secuencialmente al rededor del grupo de servidores reales, pero otorga más trabajos a los servidores
que tienen mayor capacidad. La capacidad es indicada por un factor de peso asignado por el usuario, el cual se ajusta hacia
arriba y hacia abajo gracias a la información de carga dinámica. Consulte la Sección 1.3.2, “Peso del servidor y
programación” para obtener mayor información sobre el peso de los servidores reales.
La programación Round-Robin ponderada es la preferida si hay diferencias significativas en la capacidad de los servidores
reales en el grupo. Sin embargo, si la carga de solicitudes varía de forma dramática, los servidores con una capacidad mayor
responderán a más solicitudes de las que deberían.

Conexión mínima
Distribuye más solicitudes a los servidores reales con menos conexiones activas.

Visión general de la adición de equilibrador de carga 13 rastrea las conexiones vivas a los servidores reales a través de la
tabla IPVS, la conexión mínima es un tipo de algoritmo de programación dinámica, siendo una mejor opción si hay un alto
grado de variaciones en la carga de solicitudes. Es adecuado para grupos de servidores
reales en donde cada nodo miembro tiene la misma capacidad. Si un grupo de servidores tiene capacidades diferentes, la
programación de conexión mínima ponderada es una mejor opción.

Conexiones ponderadas mínimas (predeterminada)

Distribuye más solicitudes a los servidores con menos conexiones activas en relación con sus capacidades. La capacidad es
indicada por el usuario y es ajustada por la información de carga dinámica. La adición del parámetro de capacidad hace que
este algoritmo sea ideal cuando la
infraestructura tiene servidores reales con capacidades de hardware variado. Consulte la Sección 1.3.2, “Peso del servidor y
programación” para obtener mayor información sobre servidores reales.

Programación de conexión mínima basada en localidad

Distribuye más solicitudes a los servidores con menos conexiones activas en relación con sus IP de destino. Este algoritmo se
utiliza en cluster de servidores de cache proxy. Envía el paquete para una dirección IP al servidor con esa dirección a menos
que ese servidor esté por encima de su capacidad y tenga un servidor a media carga, en dicho caso se asigna la dirección IP al
servidor real con menos carga.

Programación mínima basada en localidad con programación de réplica Distribuye más solicitudes a los servidores con
menos conexiones activas de acuerdo al IP de

Manual de lvs Pagina 18


RED HAT CONSULTING

destino. Este algoritmo es usado en servidores de cache de proxy. Se diferencia de la programación "Conexión mínima
basada en localidad" al relacionar la dirección IP objetivo con un grupo de servidores reales. Las solicitudes son luego
enviadas al servidor en el grupo con menos número de conexiones. Si la capacidad de todos los nodos para el IP de destino
está sobre el límite, este método añade un nuevo servidor real del grupo general al grupo de servidores para el IP de destino.
El nodo con mayor carga es desplazado fuera del grupo para evitar un exceso de replicación.

Programación de destino hash


Distribuye las solicitudes al grupo de servidores reales buscando el IP de destino en una tabla hash estática. Este algoritmo
está diseñado para ser usado en un cluster de servidor de cache de proxy.
Programación de fuente hash.
Distribuye todas las solicitudes al grupo de servidores reales, buscando el IP de origen en una tabla hash estática. Este
algoritmo se utiliza en enrutadores LVS con varios cortafuegos.

Manual de lvs Pagina 19

Das könnte Ihnen auch gefallen