IAW - Práctica 5

José Juan Sánchez Hernández

IES Celia Viñas (Almería) - 2019/2020

2 Práctica 5: Balanceador de carga con Apache

En esta práctica deberá automatizar la instalación y configuración de una aplicación web LAMP en cuatro máquinas virtuales EC2 de Amazon Web Services (AWS), con la última versión de Ubuntu Server. En esta práctica vamos a usar una máquina virtual con Apache HTTP Server como un proxy inverso para hacer de balanceador de carga. El objetivo de esta práctica es crear una arquitectura de alta disponibilidad que sea escalable y redundante, de modo que podamos balancear la carga entre todos los frontales web.

La arquitectura estará formada por:

Necesitará crear cuatro máquinas virtuales:

2.1 Arquitectura típica de proxy inverso con Apache

2.2 Activación de los módulos necesarios en Apache

Activamos los siguientes módulos:

a2enmod proxy
a2enmod proxy_http
a2enmod proxy_ajp
a2enmod rewrite
a2enmod deflate
a2enmod headers
a2enmod proxy_balancer
a2enmod proxy_connect
a2enmod proxy_html
a2enmod lbmethod_byrequests

2.3 Configuración de Apache para trabajar como balanceador de carga

Editamos el archivo 000-default.conf que está en el directorio /etc/apache2/sites-enabled:

sudo nano /etc/apache2/sites-enabled/000-default.conf

Añadimos las directivas Proxy y ProxyPass dentro de VirtualHost.

<VirtualHost *:80>
    # Dejamos la configuración del VirtualHost como estaba
    # sólo hay que añadir las siguiente directivas: Proxy y ProxyPass

    <Proxy balancer://mycluster>
        # Server 1
        BalancerMember http://IP-HTTP-SERVER-1

        # Server 2
        BalancerMember http://IP-HTTP-SERVER-2
    </Proxy>

    ProxyPass / balancer://mycluster/
</VirtualHost>

Tendremos que reemplazar IP-HTTP-SERVER-1 y IP-HTTP-SERVER-2 por las direcciones IPs de las dos máquinas que estamos utilizando como Front-End.

2.3.1 Reiniciamos el servicio de Apache

Una vez aplicados los cambios reiniciamos el servicio de Apache:

sudo /etc/init.d/apache2 restart

2.4 Entregables

En esta práctica habrá que entregar un documento técnico con la descripción de los pasos que se han llevado a cabo.

El documento debe incluir como mínimo lo siguientes contenidos:

3 Referencias

4 Licencia

Licencia de Creative Commons
Esta página forma parte del curso Implantación de Aplicaciones Web por José Juan Sánchez y se distribuye bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.