Weboldal keresés

Az „XR” (Crossroads) terheléselosztó beállítása webszerverekhez RHEL/CentOS rendszeren


A Crossroads egy szolgáltatásfüggetlen, nyílt forráskódú terheléselosztási és feladatátvételi segédprogram Linux- és TCP-alapú szolgáltatásokhoz. Használható HTTP-hez, HTTPS-hez, SSH-hoz, SMTP-hez és DNS-hez stb. Ez egy többszálú segédprogram is, amely csak egy memóriaterületet fogyaszt, ami növeli a teljesítményt a terhelés kiegyenlítésekor.

Nézzük meg, hogyan működik az XR. Meg tudjuk találni az XR-t a hálózati kliensek és egy szerverfészek között, amely kliens kéréseket küld a szervereknek a terhelés kiegyenlítésével.

Ha egy szerver leáll, az XR továbbítja a következő kliens kérést a sorban következő szervernek, így a kliens nem érez leállási időt. Vessen egy pillantást az alábbi diagramra, hogy megértse, milyen helyzetet fogunk kezelni az XR-rel.

Két webszerver van, egy átjárószerver, amelyet telepítünk és beállítjuk az XR-t a kliens kérések fogadására és a szerverek közötti elosztására.

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

A fenti forgatókönyvben az átjárószerverem (azaz XR Crossroads) a 172.16.1.222 IP-címet viseli, a webszerver01 pedig a 172.16.1.222, és figyel A 8888 és a webserver02 port a 192.168.1.161, és az 5555 porton keresztül figyel.

Most már csak az XR gateway által az internetről érkező kérések terhelését kell kiegyenlítenem, és el kell osztanom két, a terhelést kiegyenlítő webszerver között.

1. lépés: Telepítse az XR Crossroads Load Balancer programot a Gateway Serverre

1. Sajnos nem állnak rendelkezésre bináris RPM-csomagok a crosscroads-hoz, ez az egyetlen módja annak, hogy az XR crossroads-t a forrás tarballból telepítse.

Az XR fordításához telepítenie kell a rendszeren a C++ fordítót és a Gnu make segédprogramokat, hogy a telepítés hibamentes legyen.

yum install gcc gcc-c++ make

Ezután töltse le a forrás tarballt a hivatalos webhelyükről (https://crossroads.e-tunity.com), és szerezze meg az archivált csomagot (azaz crossroads-stable.tar.gz).

Alternatív megoldásként használhatja a következő wget segédprogramot a csomag letöltéséhez és bármely helyről történő kibontásához (pl.: /usr/src/), lépjen a kicsomagolt könyvtárba, és adja ki a „make install ” parancsot.

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

A telepítés befejezése után a bináris fájlok az /usr/sbin/ alatt jönnek létre, az XR konfiguráció pedig az /etc mappában, nevezetesen az „xrctl.xml” alatt.

2. Utolsó előfeltételként két webszerverre van szüksége. A könnyebb használat érdekében két Python SimpleHTTPServer példányt hoztam létre egy szerveren.

A Python SimpleHTTPServer beállításának megtekintéséhez olvassa el a Két webszerver létrehozása egyszerűen a SimpleHTTPServer használatával című cikkünket.

Mint mondtam, két webszervert használunk, és ezek a webserver01 a 172.16.1.222 rendszeren futnak a 8888 és porton keresztül. webserver02, amely a 192.168.1.161 címen fut az 5555-ös porton keresztül.

2. lépés: Az XR Crossroads Load Balancer konfigurálása

3. Minden feltétel adott. Most azt kell tennünk, hogy beállítjuk az xrctl.xml fájlt, hogy a terhelést a webszerverek között megosszuk, amit az XR szerver fogad az internetről.

Most nyissa meg az xrctl.xml fájlt a vi/vim szerkesztővel.

vim /etc/xrctl.xml

és hajtsa végre a módosításokat az alábbiak szerint.

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

Itt egy nagyon egyszerű XR-konfigurációt láthat az xrctl.xml fájlban. Meghatároztam, hogy mi az XR szerver, melyek a háttérkiszolgálók, és ezek portjai és webes interfész portjai az XR számára.

4. Most el kell indítania az XR démont az alábbi parancsok kibocsátásával.

xrctl start
xrctl status

5. Rendben, remek. Most itt az ideje ellenőrizni, hogy a konfigurációk megfelelően működnek-e. Nyisson meg két webböngészőt, írja be a porttal rendelkező XR szerver IP-címét, és nézze meg a kimenetet.

Fantasztikus. Jól működik. most itt az ideje játszani az XR-rel.

6. Most itt az ideje, hogy bejelentkezzen az XR Crossroads irányítópultjára, és megtekintse a webes felülethez konfigurált portot. Adja meg XR-szervere IP-címét az xrctl.xml fájlban konfigurált webes interfész portszámával együtt.

http://172.16.1.204:8010

Így néz ki. Könnyen érthető, felhasználóbarát és könnyen használható. A jobb felső sarokban mutatja, hogy az egyes háttérkiszolgálók hány kapcsolatot fogadtak, valamint a fogadott kérésekre vonatkozó további részleteket. Még azt is beállíthatja, hogy az egyes szerverek terhelési súlyát el kell viselnie, a kapcsolatok maximális számát és a terhelési átlagot stb.

A legjobb az egészben az, hogy ezt az xrctl.xml konfigurálása nélkül is megteheti. Csak annyit kell tennie, hogy kiadja a parancsot a következő szintaxissal, és az elvégzi a munkát.

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

A fenti szintaxis részletes magyarázata:

  1. A –verbose megmutatja, mi történik a parancs végrehajtása után.
  2. A –szerver azt az XR-kiszolgálót határozza meg, amelyre a csomagot telepítette.
  3. A –backend meghatározza azokat a webszervereket, amelyekhez ki kell egyensúlyoznia a forgalmat.
  4. A Tcp azt határozza meg, hogy tcp-szolgáltatásokat használ.

A CROSSROADS dokumentációjával és konfigurációjával kapcsolatos további részletekért látogassa meg hivatalos webhelyüket: https://crossroads.e-tunity.com/.

Az XR Corssroads számos módot tesz lehetővé a szerver teljesítményének növelésére, az állásidők védelmére, valamint az adminisztrátori feladatok egyszerűbbé és kényelmesebbé tételére. Reméljük, hogy tetszett az útmutató, és nyugodtan írjon alább megjegyzéseket a javaslatokért és a magyarázatokért. Tartsa a kapcsolatot a Tecmint-tel a praktikus útmutatókért.

Olvassa el még: A Pound Load Balancer telepítése a webszerver terhelésének szabályozására