GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo configurar un equilibrador de carga en un servidor BMC s0.d1.small

Introducción

La instancia de CPU única preconfigurada de phoenixNAP Bare Metal Cloud es una solución ideal para el equilibrio de carga. Un balanceador de carga de software no requiere un hardware exigente y la instancia de BMC más barata es más que suficiente para comenzar.

Este tutorial explica una configuración de ejemplo para un equilibrador de carga en la instancia del servidor s0.d1.small BMC de phoenixNAP.

Requisitos previos

  • Una cuenta Bare Metal Cloud (BMC).
  • Acceso a la línea de comandos/terminal con privilegios sudo.
  • Acceso al navegador con una conexión a Internet estable.

¿Qué es el equilibrio de carga?

El equilibrio de carga distribuye grandes volúmenes de tráfico entre varios servidores, lo que garantiza que no se sobrecargue ninguna instancia. El objetivo final del equilibrio de carga es la eficiencia general del procesamiento y una mejor experiencia de usuario.

El equilibrador de carga supervisa el estado del servidor back-end y garantiza un manejo óptimo de las solicitudes y los recursos del servidor. Por ejemplo, los balanceadores de carga ayudan a redirigir el tráfico cuando un servidor no puede recibir una solicitud.

Instancia S.0 BMC como balanceador de carga

Los balanceadores de carga basados ​​en software son fáciles de configurar en un servidor BMC como un proceso de Linux. Por ejemplo, la utilidad del servidor HAproxy es fácil de instalar y configurar como equilibrador de carga en una instancia de BMC.

La configuración tiene la siguiente estructura:

  • La pequeña instancia de BMC actúa como un equilibrador de carga.
  • Los tres servidores de prueba actúan como una granja de servidores.

Siga las instrucciones para configurar una aplicación web local de ejemplo con un balanceador de carga.

Paso 1:generar claves SSH

Genere un par de claves en la máquina que usará para conectarse a BMC a través de SSH. Omita este paso si hay una clave guardada en el portal de BMC que le gustaría usar.

1. Abra la terminal (CTRL +ALT +T ).

2. Genere una nueva clave SSH:

ssh-keygen

El comando inicia el proceso de generación de claves.

3. Siga los pasos para crear el par de claves. Si hay claves existentes que desea mantener guardadas en id_rsa , cambie el nombre de la clave. De lo contrario, presione Entrar para elegir la ubicación predeterminada y sobrescribir las claves existentes.

Agregue una frase de contraseña para mayor seguridad.

Cuando se completa el proceso, la salida imprime la ubicación del par de claves y la imagen aleatoria.

4. Abra el id_rsa.pub archivo usando Vi:

sudo vi ~/.ssh/id_rsa.pub

5. Copie el contenido del archivo y salga del editor:

:q

El siguiente paso utiliza el id_rsa.pub contenidos.

Paso 2:implemente una instancia de BMC s0.d1.small y conéctese a través de SSH

1. Inicie sesión en el portal de BMC con sus credenciales del portal de clientes de phoenixNAP.

2. Haga clic en Implementar nuevo servidor en los Servidores página.

3. Seleccione la Ubicación para el servidor en la primera sección. Elija un modelo de facturación inmediatamente después.

4. Seleccione el s0.d1.small Instancia de BMC del Servidor sección.

5. Elija un sistema operativo en la siguiente sección. Estamos usando Ubuntu Bionic . Presiona Siguiente para pasar a la página Detalles de la instancia.

6. Ingrese el nombre de host y una descripción opcional para el servidor.

7. Si generó una nueva clave en la sección anterior, haga clic en Agregar una nueva clave pública SSH y pega el id_rsa.pub contenidos para agregar una nueva clave. Si tiene una clave guardada en el portal, escriba el nombre de la clave guardada y selecciónela de la lista.

8. Compre una asignación de IP o asigne una asignación existente. Para probar esta guía, es necesaria una IP pública, lo que hace /31 Asignación de IP el requisito mínimo.

9. Revise los detalles una vez más y haga clic en Implementar nuevo servidor botón para completar el proceso cuando esté listo.

10. Escriba el nombre de host para ubicar su instancia de BMC y haga clic en el nombre para ver los detalles del servidor. El servidor está listo cuando el estado se muestra como Encendido .

La IP asignada está en las IP públicas en la sección Detalles del servidor página.

Utilice las direcciones para el siguiente paso.

10. SSH en la máquina ejecutando el siguiente comando en la terminal:

ssh [email protected]<your public IP>

Si el resultado le pide que confirme la autenticidad, escriba para agregar la ubicación a hosts conocidos y conectarse al servidor BMC.

Paso 3:Instalar HAProxy

1. Agregue el repositorio HAProxy:

sudo add-apt-repository ppa:vbernat/haproxy-1.8

2. Presione Intro cuando se le pida que agregue el repositorio.

3. Una vez que se complete el proceso, actualice los paquetes:

sudo apt-get update

4. Por último, instale HAProxy con:

sudo apt-get install haproxy

Paso 4:Crear servidores web de prueba

1. Cree tres directorios que actuarán como servidores:

mkdir server{1..3}

2. Cree una página de destino para cada servidor:

touch server{1..3}/index.html

3. Edite cada index.html archivo:

sudo vi server1/index.html

4. Agregue los siguientes contenidos:

<!DOCTYPE html>
<html>
        <title>Server 1</title>
        <body>Connected!</body>
</html>

5. Agregue los mismos contenidos a server2/index.html y servidor3/index.html . Cambie el contenido de las etiquetas de título a Server 2 y Server 3 respetuosamente.

Paso 5:configurar el balanceador de carga HAProxy

1. Edite la configuración predeterminada para HAProxy:

sudo vi /etc/haproxy/haproxy.cfg

2. Elimine todo del archivo y agregue los siguientes contenidos:

defaults
  mode http
  timeout client 10s
  timeout connect 5s
  timeout server 10s
  timeout http-request 10s

frontend myfrontend
  bind 127.0.0.1:80
  default_backend myservers

backend myservers
  balance roundrobin
  server server1 127.0.0.1:8000
  server server2 127.0.0.1:8001
  server server3 127.0.0.1:8002

El archivo de configuración tiene tres secciones:

  • defaults son los ajustes compartidos definidos en todas las secciones siguientes. La sección establece los tiempos de espera para ayudar a evitar problemas de conexión comunes.
  • frontend define la dirección y el puerto donde HAProxy recibe solicitudes. El default_backend la línea apunta a donde el balanceador de carga debe retransmitir las conexiones.
  • backend almacena las direcciones de servidor y los puertos para múltiples servidores, definidos en el siguiente paso. El algoritmo de equilibrio de carga está configurado para round robin .

3. Guarde el archivo y cierre:

:wq

4. Reinicie HAProxy para aplicar la configuración:

sudo systemctl restart haproxy

La salida no imprime nada en la consola.

Paso 6:ejecutar servidores y probar el balanceador de carga

1. Abra tres pestañas de terminal más e inicie sesión en el servidor:

ssh [email protected]<your public IP>

Ahora hay cuatro pestañas de terminales abiertas.

2. En cada pestaña, navegue a las carpetas del servidor:

cd server1
cd server2
cd server3

3. Ejecute el servidor de prueba en cada pestaña de terminal en un puerto diferente:

python3 -m http.server 8000 --bind 127.0.0.1
python3 -m http.server 8001 --bind 127.0.0.1
python3 -m http.server 8002 --bind 127.0.0.1

4. En la cuarta pestaña, prueba la conexión usando curl :

curl 127.0.0.1:80

Ejecute el comando dos veces más para confirmar que el balanceador de carga funciona correctamente.

El algoritmo de equilibrio de carga por turnos garantiza que las solicitudes se dirijan a cada servidor una vez para equilibrar la carga.

¿Por qué utilizar S.0 como equilibrador de carga?

Configurar un servidor BMC S.0 como equilibrador de carga es una forma económica de maximizar la velocidad y la capacidad de recursos de un clúster de servidores.

Algunos beneficios de usar el servidor BMC s0.d1.small como balanceador de carga incluyen:

  • Bajo costo . La instancia es la oferta más pequeña y económica, y la configuración maneja fácilmente la carga de trabajo del equilibrador de carga. Pague por hora, por mes o haga una reserva extendida según su caso de uso.
  • Gestión eficaz de la sobrecarga de la red . La instancia de propósito general se usa comúnmente para sitios web de alto tráfico y utiliza todos los recursos de manera equilibrada.
  • Mayor seguridad y alta disponibilidad . La red es robusta, rápida, de baja latencia y confiable. Además, cada servidor viene con protección DDoS de 20 Gbps para garantizar la máxima disponibilidad y seguridad cuando está bajo ataque.

Ubuntu
  1. Cómo configurar WireGuard en Ubuntu 22.04

  2. Cómo instalar y configurar el balanceador de carga HAProxy en Debian 11

  3. Cómo instalar y configurar el balanceador de carga HAProxy en Ubuntu 20.04

  4. Cómo configurar un servidor TeamSpeak en Ubuntu 16.04

  5. Cómo configurar un servidor Wekan Kanban en Linux

Cómo configurar un servidor OpenVPN en CentOS 7

Cómo configurar un servidor de Minecraft en Debian 10

Cómo configurar el servidor de impresión CUPS en Ubuntu 20.04

Cómo configurar el servidor DHCP en CentOS 8

Cómo configurar HAProxy como Load Balancer para Nginx en CentOS 8

¿Cómo configurar un servidor Apt-cacher?