Cómo instalar HAProxy en Debian 11
HAProxy es una solución gratuita, de código abierto y confiable para alta disponibilidad y equilibrio de carga. Distribuye la carga entre los múltiples servidores de aplicaciones y simplifica las tareas de procesamiento de solicitudes. Se puede instalar en todos los principales sistemas operativos Linux. Es popular debido a su eficiencia, confiabilidad y bajo consumo de memoria y CPU.
En esta publicación, explicaremos cómo instalar HAProxy en un sistema Debian 11.
Requisitos previos
- Un servidor que ejecuta Debian 11 para HAProxy.
- Dos servidores que ejecutan Debian 11 para el servidor Apache Backend.
- Una contraseña de root está configurada en todos los servidores.
Configurar servidores web back-end
Para los fines de este tutorial, deberá configurar dos servidores Apache de back-end.
En el primer servidor backend, instale el paquete de Apache con el siguiente comando:
apt-get install apache2 -y
Una vez que Apache esté instalado, cree una página de índice de Apache de muestra con el siguiente comando:
echo "<H1>Welcome to the first Apache Server</H1>" | tee /var/www/html/index.html
En el segundo servidor backend, instale el paquete de Apache con el siguiente comando:
apt-get install apache2 -y
A continuación, cree una página de índice de Apache de muestra con el siguiente comando:
echo "<H1>Welcome to the second Apache Server</H1>" | tee /var/www/html/index.html
Una vez que haya terminado, puede continuar con el siguiente paso.
Instalar HAProxy
De forma predeterminada, HAProxy se incluye en el repositorio predeterminado de Debian 11. Puede instalarlo ejecutando el siguiente comando:
apt-get install haproxy -y
Una vez que HAProxy esté instalado, inicie el servicio HAProxy y habilítelo para que se inicie al reiniciar el sistema:
systemctl start haproxy systemctl enable haproxy
Una vez que haya terminado, puede continuar con el siguiente paso.
Configurar HAProxy
A continuación, deberá editar el archivo de configuración predeterminado de HAProxy y definir los servidores web backend.
nano /etc/haproxy/haproxy.cfg
Agregue las siguientes líneas:
frontend apache_front # Frontend listen port - 80 bind *:80 # Set the default backend default_backend apache_backend_servers # Enable send X-Forwarded-For header option forwardfor # Define backend backend apache_backend_servers # Use roundrobin to balance traffic balance roundrobin # Define the backend servers server backend01 192.168.1.10:80 check server backend02 192.168.1.11:80 check
Guarde y cierre el archivo cuando haya terminado.
Dónde: 192.168.1.10 es la dirección IP del primer servidor backend de Apache y 192.168.1.11 es la dirección IP del segundo servidor Apache.
A continuación, reinicie el servicio HAProxy para aplicar los cambios:
systemctl restart haproxy
Ahora puede verificar el estado de HAProxy con el siguiente comando:
systemctl status haproxy
Obtendrá el siguiente resultado:
? haproxy.service - HAProxy Load Balancer Loaded: loaded (/lib/systemd/system/haproxy.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2021-11-07 03:47:14 UTC; 9s ago Docs: man:haproxy(1) file:/usr/share/doc/haproxy/configuration.txt.gz Process: 86678 ExecStartPre=/usr/sbin/haproxy -f $CONFIG -c -q $EXTRAOPTS (code=exited, status=0/SUCCESS) Main PID: 86680 (haproxy) Tasks: 3 (limit: 4679) Memory: 34.2M CPU: 61ms CGroup: /system.slice/haproxy.service ??86680 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -S /run/haproxy-master.sock ??86682 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -S /run/haproxy-master.sock Nov 07 03:47:14 debian11 systemd[1]: Starting HAProxy Load Balancer... Nov 07 03:47:14 debian11 haproxy[86680]: Proxy apache_front started. Nov 07 03:47:14 debian11 haproxy[86680]: Proxy apache_front started. Nov 07 03:47:14 debian11 systemd[1]: Started HAProxy Load Balancer. Nov 07 03:47:14 debian11 haproxy[86680]: [NOTICE] 310/034714 (86680) : New worker #1 (86682) forked Nov 07 03:47:14 debian11 haproxy[86680]: Proxy apache_backend_servers started. Nov 07 03:47:14 debian11 haproxy[86680]: Proxy apache_backend_servers started.
Verificar HAProxy
En este punto, HAProxy está configurado y ejecutándose. Ahora es el momento de probar el HAProxy.
Abra su navegador web y escriba la URL http://tu-haproxy-ip. Verá que HAProxy está enviando solicitudes a los servidores back-end una por una después de cada actualización.
Conclusión
¡Felicidades! Ha instalado correctamente HAProxy en Debian 11. Ahora puede implementar HAProxy en el entorno de producción para aumentar el rendimiento y la disponibilidad de su aplicación web.