Nastavení "XR" (Crossroads) Load Balancer pro webové servery na RHEL / CentOS


Křižovatka je nezávislá služba s otevřeným zdrojovým kódem a nástrojem pro selhání pro systémy Linux a TCP. Lze jej použít pro HTTP, HTTPS, SSH, SMTP a DNS atd. Je to také vícevláknový nástroj, který spotřebovává pouze jeden paměťový prostor, což vede ke zvýšení výkonu při vyvažování zátěže.

Podívejme se, jak XR funguje. Můžeme najít XR mezi síťovými klienty a hnízdem serverů, které odesílají požadavky klientů na servery vyvažující zátěž.

Pokud je server vypnut, XR předá další požadavek klienta na další server v řadě, takže klient nemá žádný čas. Podívejte se na níže uvedený diagram, abyste pochopili, jakou situaci budeme s XR zpracovávat.

Existují dva webové servery, jeden server gateway, který instalujeme a nastavíme XR pro přijímání požadavků klientů a jejich distribuci mezi servery.

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

Ve výše uvedeném scénáři nese můj server brány (tj. XR Crossroads) IP adresu 172.16.1.222 , webserver01 je 172.16.1.222 a poslouchá prostřednictvím port 8888 a webserver02 je 192.168.1.161 a poslouchá přes port 5555 .

Nyní vše, co potřebuji, je vyvážit zatížení všech požadavků, které přijímá brána XR z internetu, a distribuovat je mezi dva webové servery, které vyvažují zátěž.

Krok 1: Nainstalujte XR Crossroads Load Balancer na Gateway Server

1. Bohužel nejsou k dispozici žádné balíčky binárních RPM pro křižovatky.

Chcete-li zkompilovat XR, musíte mít v systému nainstalovaný C ++ kompilátor a Gnu make nástroje, abyste mohli pokračovat v instalaci bez chyb.

# yum install gcc gcc-c++ make

Dále si stáhněte zdrojový tarball tím, že půjdete na jejich oficiální stránky (https://crossroads.e-tunity.com) a chytíte archivovaný balíček (tj. crossroads-stable.tar.gz ).

Můžete také použít následující nástroj wget ke stažení balíčku a jeho extrahování v libovolném místě (např .: /usr/src/), přejděte do rozbaleného adresáře a vydat „< silná> provést instalaci ”.

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

Po dokončení instalace jsou binární soubory vytvořeny v konfiguraci /usr/sbin/ a XR ve složce /etc , konkrétně „ xrctl.xml “.

2. Jako poslední podmínku potřebujete dva webové servery. Pro snadnější použití jsem vytvořil dva python SimpleHTTPServer instance na jednom serveru.

Chcete-li zjistit, jak nastavit python SimpleHTTPServer, přečtěte si náš článek na Vytvořit dva webové servery snadno pomocí SimpleHTTPServer.

Jak jsem řekl, používáme dva webové servery a jsou webserver01 spuštěné na adrese 172.16.1.222 prostřednictvím portu 8888 a webserver02 běží na adrese 192.168.1.161 prostřednictvím portu 5555 .

Krok 2: Konfigurace balanceru XR Crossroads Load Balancer

3. Všechny požadavky jsou na místě. Nyní je třeba nakonfigurovat soubor xrctl.xml tak, aby se zatížení šířilo mezi webové servery, které server XR přijímá z Internetu.

Otevřete soubor xrctl.xml pomocí editoru vi/vim.

# vim /etc/xrctl.xml

a proveďte změny podle níže uvedených pokynů.

<?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>

Zde můžete vidět velmi základní XR konfiguraci provedenou v xrctl.xml . Definoval jsem, co XR server je, co jsou servery back end a jejich porty a port webového rozhraní pro XR.

4. Nyní musíte spustit démona XR zadáním níže uvedených příkazů.

# xrctl start
# xrctl status

5. Dobře. Nyní je čas zkontrolovat, zda konfigurační programy fungují správně. Otevřete dva webové prohlížeče a zadejte adresu IP serveru XR s portem a zobrazte výstup.

Fantastický. Funguje to dobře. teď je čas hrát s XR.

6. Nyní je čas přihlásit se do řídicího panelu XR Crossroads a podívat se na port, který jsme nakonfigurovali pro webové rozhraní. Zadejte adresu IP serveru XR s číslem portu webového rozhraní, které jste nakonfigurovali v xrctl.xml .

http://172.16.1.204:8010

Takhle to vypadá. Je snadno pochopitelný, uživatelsky příjemný a snadno ovladatelný. Ukazuje, kolik spojení má každý koncový server v pravém horním rohu spolu s dalšími detaily týkajícími se přijímání požadavků. Dokonce můžete nastavit hmotnost zatížení každého serveru, který potřebujete nést, maximální počet připojení a průměr zatížení atd.

Nejlepší na tom je, můžete to udělat i bez konfigurace xrctl.xml . Jediné, co musíte udělat, je vydat příkaz s následující syntaxí a bude to dělat.

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

Podrobné vysvětlení výše uvedené syntaxe:

  1. –verbose will show what happens when the command has executed.
  2. –server defines the XR server you have installed the package in.
  3. –backend defines the webservers you need to balance the traffic to.
  4. Tcp defines it uses tcp services.

Pro více informací o dokumentaci a konfiguraci CROSSROADS navštivte jejich oficiální stránky: https://crossroads.e-tunity.com/.

XR Corssroads umožňuje mnoho způsobů, jak zvýšit výkon serveru, ochránit prostoje a usnadnit a zjednodušit administrátorské úkoly. Doufám, že se vám tento průvodce líbil a můžete se k němu vyjádřit níže. Zůstaňte v kontaktu s Tecmintem pro praktické How To's.