Búsqueda de sitios web

Configuración del equilibrador de carga 'XR' (Crossroads) para servidores web en RHEL/CentOS


Crossroads es una utilidad de conmutación por error y equilibrio de carga de código abierto e independiente del servicio para servicios basados en Linux y TCP. Se puede utilizar para HTTP, HTTPS, SSH, SMTP y DNS, etc. También es una utilidad multiproceso que consume solo un espacio de memoria, lo que aumenta el rendimiento al equilibrar la carga.

Echemos un vistazo a cómo funciona XR. Podemos ubicar XR entre los clientes de la red y un conjunto de servidores que envía las solicitudes de los clientes a los servidores que equilibran la carga.

Si un servidor no funciona, XR reenvía la siguiente solicitud del cliente al siguiente servidor en línea, por lo que el cliente no siente tiempo de inactividad. Eche un vistazo al siguiente diagrama para comprender qué tipo de situación vamos a manejar con XR.

Hay dos servidores web, un servidor de puerta de enlace que instalamos y configuramos XR para recibir solicitudes de clientes y distribuirlas entre los servidores.

XR Crossroads Gateway Server : 172.16.1.204
Web Server 01 : 172.16.1.222
Web Server 02 : 192.168.1.161

En el escenario anterior, mi servidor de puerta de enlace (es decir, XR Crossroads) tiene la dirección IP 172.16.1.222, webserver01 es 172.16.1.222 y escucha a través de El puerto 8888 y webserver02 es 192.168.1.161 y escucha a través del puerto 5555.

Ahora todo lo que necesito es equilibrar la carga de todas las solicitudes que recibe la puerta de enlace XR desde Internet y distribuirlas entre dos servidores web que equilibran la carga.

Paso 1: Instale XR Crossroads Load Balancer en el servidor Gateway

1. Desafortunadamente, no hay ningún paquete RPM binario disponible para crosscroads, la única forma de instalar XR crossroads desde el archivo tarball fuente.

Para compilar XR, debe tener el compilador C++ y las utilidades Gnu make instaladas en el sistema para poder continuar con la instalación sin errores.

yum install gcc gcc-c++ make

A continuación, descargue el paquete fuente yendo a su sitio oficial (https://crossroads.e-tunity.com) y obtenga el paquete archivado (es decir, crossroads-stable.tar.gz).

Alternativamente, puede utilizar la siguiente utilidad wget para descargar el paquete y extraerlo en cualquier ubicación (por ejemplo: /usr/src/), ir al directorio descomprimido y ejecutar “< comandomake install”.

wget https://crossroads.e-tunity.com/downloads/crossroads-stable.tar.gz
tar -xvf crossroads-stable.tar.gz
cd crossroads-2.74/
make install

Una vez finalizada la instalación, los archivos binarios se crean en /usr/sbin/ y la configuración XR dentro de /etc, es decir, “xrctl.xml”.

2. Como último requisito previo, necesita dos servidores web. Para facilitar su uso, he creado dos instancias de Python SimpleHTTPServer en un servidor.

Para ver cómo configurar un SimpleHTTPServer de Python, lea nuestro artículo en Cree dos servidores web fácilmente usando SimpleHTTPServer.

Como dije, estamos usando dos servidores web y están webserver01 ejecutándose en 172.16.1.222 a través del puerto 8888 y webserver02 ejecutándose en 192.168.1.161 a través del puerto 5555.

Paso 2: Configurar el equilibrador de carga XR Crossroads

3. Todos los requisitos están establecidos. Ahora lo que tenemos que hacer es configurar el archivo xrctl.xml para distribuir la carga entre los servidores web que recibe el servidor XR de Internet.

Ahora abra el archivo xrctl.xml con el editor vi/vim.

vim /etc/xrctl.xml

y realice los cambios como se sugiere a continuación.

<?xml version=<94>1.0<94> encoding=<94>UTF-8<94>?>
<configuration>
<system>
<uselogger>true</uselogger>
<logdir>/tmp</logdir>
</system>
<service>
<name>Tecmint</name>
<server>
<address>172.16.1.204:8080</address>
<type>tcp</type>
<webinterface>0:8010</webinterface>
<verbose>yes</verbose>
<clientreadtimeout>0</clientreadtimeout>
<clientwritetimout>0</clientwritetimeout>
<backendreadtimeout>0</backendreadtimeout>
<backendwritetimeout>0</backendwritetimeout>
</server>
<backend>
<address>172.16.1.222:8888</address>
</backend>
<backend>
<address>192.168.1.161:5555</address>
</backend>
</service>
</configuration>

Aquí puede ver una configuración XR muy básica realizada en xrctl.xml. He definido qué es el servidor XR, cuáles son los servidores back-end y sus puertos y el puerto de interfaz web para el XR.

4. Ahora necesita iniciar el demonio XR emitiendo los siguientes comandos.

xrctl start
xrctl status

5. Está bien, genial. Ahora es el momento de comprobar si las configuraciones funcionan bien. Abra dos navegadores web e ingrese la dirección IP del servidor XR con el puerto y vea el resultado.

Fantástico. Funciona bien. ahora es el momento de jugar con XR.

6. Ahora es el momento de iniciar sesión en el panel de XR Crossroads y ver el puerto que hemos configurado para la interfaz web. Ingrese la dirección IP de su servidor XR con el número de puerto para la interfaz web que ha configurado en xrctl.xml.

http://172.16.1.204:8010

Esto es lo que parece. Es fácil de entender, fácil de usar y fácil de usar. Muestra cuántas conexiones recibió cada servidor back-end en la esquina superior derecha junto con los detalles adicionales sobre las solicitudes recibidas. Incluso puede establecer el peso de carga que debe soportar cada servidor, el número máximo de conexiones y el promedio de carga, etc.

La mejor parte es que puedes hacer esto incluso sin configurar xrctl.xml. Lo único que tienes que hacer es emitir el comando con la siguiente sintaxis y hará el trabajo.

xr --verbose --server tcp:172.16.1.204:8080 --backend 172.16.1.222:8888 --backend 192.168.1.161:5555

Explicación detallada de la sintaxis anterior:

  1. –verbose mostrará lo que sucede cuando se ejecuta el comando.
  2. –server define el servidor XR en el que ha instalado el paquete.
  3. –backend define los servidores web hacia los que necesita equilibrar el tráfico.
  4. Tcp define que utiliza servicios TCP.

Para obtener más detalles sobre la documentación y la configuración de CROSSROADS, visite su sitio oficial en: https://crossroads.e-tunity.com/.

XR Corssroads permite muchas maneras de mejorar el rendimiento de su servidor, proteger los tiempos de inactividad y hacer que sus tareas administrativas sean más fáciles y prácticas. Espero que hayas disfrutado de la guía y no dudes en comentar a continuación para recibir sugerencias y aclaraciones. Manténgase en contacto con Tecmint para obtener prácticos procedimientos.

Lea también: Instalación de Pound Load Balancer para controlar la carga del servidor web