El equilibrio de carga es la práctica más común de distribuir el tráfico web entrante entre múltiples servidores de fondo. Esto hace que la aplicación esté muy disponible incluso si algunos de los servidores caen por alguna razón. El equilibrio de carga aumenta la eficiencia y la confiabilidad de una aplicación web. Haproxy Load-Balancer se usa para el mismo propósito. Es el balancer de carga más utilizado en las industrias. Según el sitio web oficial, Haproxy es utilizado por compañías líderes como AWS, Fedora, Github y muchos más.
Haproxy o proxy de alta disponibilidad proporciona una alta disponibilidad y solución de proxy. Está escrito en c y funciona en capas de red y aplicación del modelo TCP/IP. Lo mejor es que tiene una edición comunitaria gratuita, y es una aplicación de código abierto. Funciona en sistemas operativos Linux, FreeBSD y Solaris. La edición Enterprise también está allí, pero tiene un precio.
En esta guía, veremos Cómo instalar HaProxy y configurar el servidor de equilibrio de carga en Debian 10.
Prerrequisitos:
Instalación de HaProxy en Debian 10
Para nuestra guía, asumiremos la siguiente configuración de la dirección IP:
Paso 1. Actualizar el repositorio y los paquetes del sistema Debian
Primero, ejecute los siguientes comandos en todos los sistemas para actualizar los paquetes de software a los últimos.
$ sudo apt actualización
$ sudo apt ogradade -y
Paso: 2 Instale Nginx en los servidores de back-end
Prepare sus servidores de fondo instalando el servidor web NGINX en cada. También puede elegir instalar otros servidores web como Apache.
Para instalar NGINX, ejecute los siguientes comandos en cada servidor de back-end en su entorno:
$ sudo apt install nginx
Paso: 3 Después de que Nginx se instala en sus servidores de back-end, inicie el servicio, como se muestra a continuación:
$ sudo systemctl inicio nginx
CONSEJO: También podemos administrar el servidor web NGINX utilizando el siguiente comando:
$ sudo /etc /init.d/nginx "opción"
Opción: Iniciar Reiniciar el estado de reinicio Detener
Paso: 4 Crear páginas de índice personalizadas en la carpeta web de cada servidor web Nginx. Esto nos ayudará a distinguir qué servidor de back-end está sirviendo las solicitudes entrantes.
En cada servidor web, realice las siguientes tareas:
Suponga el archivo de índice original utilizando el siguiente comando:
$ sudo cp/usr/share/nginx/html/index.html/usr/share/nginx/html/index.html.oriente
Agregar texto personalizado al índice.archivo html. Estamos agregando la dirección IP de cada servidor web.
Para servidor web 1:
$ sudo echo "servidor web 1: 10.0.12.15 "| sudo tee/usr/share/nginx/html/index.html
Para el servidor web 2:
$ sudo echo "servidor web 2: 10.0.12.16 "| sudo tee/usr/share/nginx/html/index.html
También puede usar VI Editor si se siente más cómodo con eso. Esto se muestra a continuación:
$ sudo vi/usr/share/nginx/html/index.html
Cuando se abra el archivo, ingrese el texto y guarde el archivo.
Abra el archivo de host virtual predeterminado en el directorio "/etc/nginx/sites-disponible/".
$ sudo nano/etc/nginx/sites disponible/predeterminado
Ahora dentro del bloque del servidor, cambie la directiva raíz desde "/var/www/html" a "/usr/share/nginx/html".
Para verificar la configuración de Nginx, ejecute el siguiente comando:
$ sudo nginx -t
Paso 5: ahora reinicie el servicio usando el comando:
$ sudo systemctl reiniciar nginx
Puede verificar el estado de Nginx usando el siguiente comando:
$ sudo systemctl status nginx
Paso: 6 Para instalar HaProxy en Debian 10 (Buster), ejecute el siguiente comando en el balancer de carga.
$ sudo apt install haproxy -y
Consejo: Una vez que se instala HaProxy, puede administrar HaProxy a través de un script init. Para esto, establezca el parámetro "habilitado" en 1 en "/etc/default/haproxy" como se muestra a continuación:
$ sudo vi/etc/default/haproxy
Habilitado = 1
Ahora la siguiente opción se puede usar con un script init:
$ sudo Service HaProxy "Opción."
Opción: Iniciar Reiniciar el estado de reinicio Detener
Paso: 7 Ahora configure el balancer de carga haproxy editando el archivo de configuración predeterminado de HaProxy, I I, I.mi. "/Etc/haproxy/haproxy.CFG ". Para editar este archivo, ejecute el siguiente comando
$ sudo vi/etc/haproxy/haproxy.CFG
Consejo: Haga una copia de seguridad del archivo original para que en caso de que algo salga mal, estaremos todos seguros. Para realizar la copia de seguridad, use el siguiente comando:
$ sudo cp/etc/haproxy/haproxy.cfg/etc/haproxy/haproxy.CFG.oriente
Ahora vaya al final del archivo y edite la siguiente información:
frontend local_server
unir 10.0.12.10:80
modo http
Vautor_backend Webserver
servidor web de back -end
modo http
equilibrio Roundrobin
Opción hacia adelante para
http-request set-header x-forwardport %[dst_port]
http-request add-header x-forwardproto-propo https if ssl_fc
Opción Httpchk Head / HTTP / 1.1Rnhost: localhost
Servidor Web1 10.0.12.15:80
Servidor Web2 10.0.12.16:80
Nota: No olvide cambiar las direcciones IP en el archivo anterior a la que ha agregado a sus servidores web.
Paso: 8 Verifique la sintaxis de configuración del archivo anterior con el siguiente comando:
$ sudo haproxy -c -f/etc/haproxy/haproxy.CFG
Si todo sale bien, mostrará una salida como: "El archivo de configuración es válido."Si recibe algún error en la salida, vuelva a comprobar su archivo de configuración y verifique nuevamente.
Paso: 9 Ahora reinicie el servicio HaProxy para aplicar los cambios
$ sudo servicio haproxy reiniciar
Prueba de la configuración
Ahora es el momento de ver si nuestra configuración funciona correctamente. Ingrese la IP del sistema de equilibrio de carga en un navegador web (en nuestro caso, son 10.0.12.10) y actualice la página continuamente durante 2-4 veces para ver si el balancer de carga haproxy está funcionando correctamente. Debería ver diferentes direcciones IP o cualquier texto que haya ingresado en el índice.archivo html cuando continúa actualizando la página varias veces.
Otra forma de verificar es tomar un servidor web fuera de línea y verificar si otro servidor web está cumpliendo las solicitudes.
Eso es todo por ahora! Intente experimentar con HaProxy para obtener más información sobre cómo funciona. Delantero.gramo., puedes probar:
Haproxy tiene una amplia documentación disponible tanto para la versión Comunitaria de HaProxy como para la versión de Haproxy Enterprise. Explore esta documentación para obtener más información sobre la mejora del rendimiento y la confiabilidad del entorno de su servidor.
Esta guía se ha realizado con éxito en Debian 10 (Buster). Intente instalar HaProxy en otras distribuciones de Debian como Ubuntu, Linux Mint, etc. No olvide compartir esta guía con otros.