lvs-DR Descripción General Recomendaciones

Anuncio
WALC2012
Alta Disponibilidad y Virtualización con soluciones de bajo costo
lvs-DR
Descripción General
En este laboratorio configuraremos Linux Virtual Server (lvs) en modo Direct Routing (DR) de esta
forma lograremos el balanceo de carga entre diferentes servidores Web.
Pueden existir más
Servidores reales
Aunque sencillo este concepto es muy útil cuando pensamos en servicios de alta disponibilidad y alto
rendimiento.
Recomendaciones
•
Durante el desarrollo de las actividades de laboratorio tendrá los privilegios de administración
del usuario root de cada servidor. Consulte a los instructores ante cualquier duda que pudiera
surgir.
•
Trabaje en equipo, de esta forma avanzaremos mas rápido y alcanzaremos los objetivos de
cada actividad de laboratorio.
•
Transcriba los comandos que aparecen en cada guiá de laboratorio en el shell que esta
usando (en algunas partes la fuente usada para generar este documento guiá no siempre es
compatible con la fuente del shell)
Octubre 2012
lvs-DR
WALC2012
Alta Disponibilidad y Virtualización con soluciones de bajo costo
Desarrollo de Laboratorio
1. Configurando el servidor Director
a) Instalamos la aplicación que nos permite configurar y administrar la tabla de servidores:
# aptitude install ipvsadm
b) Activamos la opción que permita el reenvió de paquetes IP:
# echo 1 > /proc/sys/net/ipv4/ip_forward
# sysctl -p
deberíamos obtener una salida como la siguiente indicando que el reenvió de paquetes esta
activo:
# net.ipv4.ip_forward = 1
c) Configuremos la dirección IP virtual. Primero verificamos cual es la dirección IP real del
Director y según sea el caso configurar la dirección IP virtual. Veamos un ejemplo:
# ifconfig
eth0 Link encap:Ethernet HWaddr 00:10:18:55:c9:48
inet addr:192.168.0.17 Bcast:192.168.1.255 Mask:255.255.254.0
inet6 addr: fe80::210:18ff:fe55:c948/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:96 errors:0 dropped:0 overruns:0 frame:0
TX packets:98 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:16950 (16.5 KiB) TX bytes:14039 (13.7 KiB)
Interrupt:17
En este ejemplo la dirección IP real es 192.168.0.17 por lo tanto la dirección IP virtual seria
192.168.0.117 y la configuramos con:
# ifconfig eth0:0 192.168.0.117 netmask 255.255.254.0 broadcast 192.168.1.255
d) Configuremos la tabla de servidores Linux:
# ipvsadm -A -t 192.168.0.117:80 -s rr
e) Agreguemos a la tabla la dirección de los servidores reales (en este caso son los demas PC
de su grupo de laboratorio):
# ipvsadm -a -t 192.168.0.117:80 -r 192.168.0.18:80 -g
# ipvsadm -a -t 192.168.0.117:80 -r 192.168.0.19:80 -g
Octubre 2012
lvs-DR
WALC2012
Alta Disponibilidad y Virtualización con soluciones de bajo costo
2. Configurando los Servidores Reales
f)
Instalamos el servicio Web usando apache2:
# apt-get install apache2
g) En cada servidor editemos el archivo index.html para identificar cada uno de los servidores.
Por ejemplo para el Servidor Real 1:
# cd /var/www/
# vim index.html
1. Debería quedar de la siguiente forma:
<html><body><h1>Servidor Real 1</h1>
<p>This is the default web page for this server.</p>
<p>The web server software is running but no content has been added,
yet.</p>
</body></html>
2. Reiniciemos el servicio de apache2:
# /etc/init.d/apache2 restart
h) Activamos la opción que permita el reenvió de paquetes IP:
# echo 1 > /proc/sys/net/ipv4/ip_forward
# sysctl -p
i)
Configuremos la dirección IP virtual pero ahora en cada Servidor Real. Siguiendo con el
ejemplo anterior:
# ifconfig lo:0 192.168.0.117 netmask 255.255.255.255
3. Probando lvs-DR
j)
Verificamos la tabla de servidores Linux en el Director:
# ipvsadm -l --stats
Debería obtener una salida como la siguiente:
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port
Conns
-> RemoteAddress:Port
TCP 192.168.0.17:www
28
-> 192.168.0.18:www
14
-> 192.168.0.19:www
14
Octubre 2012
InPkts
OutPkts
28
14
14
0
0
0
InBytes OutBytes
1672
832
840
0
0
0
lvs-DR
WALC2012
Alta Disponibilidad y Virtualización con soluciones de bajo costo
k) Para seguir probando es necesario que desde una PC que funcione como cliente se abran
diferentes pestañas del navegador con el URL:
http://192.168.0.117
Mientras más pestañas (conexiones http) abra y las actualice constantemente se mostrara la
conexión de forma alternada a los Servidores Reales. Baje el servicio de apache2 en alguno
de los servidores mientras navega y verifique que se esta usando el otro servidor que aun
tiene apache2 corriendo.
Verifique constantemente en el Director la tabla de servidores Linux y compare como varia el
numero de conexión a cada servidor (cuando trabajan los dos servidores y cuando trabaja
solo uno)
Octubre 2012
lvs-DR
Descargar