Miért használjunk fordított proxyt?
Mielőtt megvitatná a HAProxy fordított proxyként való konfigurálásának lépéseit, gyorsan kiemeljük, miért működik a fordított proxy az Ön előnyére. A HAProxy fordított proxyként való használatának előnyei a következők:
- Terhelés elosztás - A webszerver egy ponton számos ügyfélkéréssel fordulhat elő, amelyek, ha nem megfelelően kezelik, túlterhelhetik, ami váratlan leállást okoz. A fordított proxy konfigurálása azonban biztosítja, hogy a forgalom eloszlik a háttérkiszolgálók között, így biztosítva, hogy egyetlen kiszolgáló se legyen túlterhelve kérésekkel.
- Tűzfal és biztonság – A fordított proxy összeköti a kliens eszközöket a webszerverrel. Ezzel csökkenti annak kockázatát, hogy a háttérkiszolgálóink közvetlenül ki vannak téve az internetnek. Így a rosszindulatú forgalom könnyen kiszűrhető és blokkolható, mielőtt károsítaná a szervereket.
- Jobb gyorsítótárazás – Fordított proxy esetén észre fogja venni a teljesítmény általános javulását, mivel a statikus tartalom gyorsítótárazása csökkenti a betöltési időt. Emellett jobb felhasználói élményt érhet el.
- SSL/TLS megszüntetése – Fordított proxy használatával az SSL/TLS kapcsolatok titkosítása és visszafejtése zökkenőmentessé válik, és a háttérkiszolgálóknak nem kell vállalniuk ezt a feladatot, csökkentve ezzel a terhelést.
A HAProxy konfigurálása fordított proxyként
Miután elmagyarázta, miért elengedhetetlen egy fordított proxy, például a HAProxy, lássuk a követendő konfigurációs lépéseket.
1. lépés: Telepítse a HAProxyt
Valószínűleg már telepítve van a HAProxy a rendszerére. Ha igen, hagyja ki ezt a lépést. Ha azonban még nem ismeri ezt, futtassa a következő parancsot a HAProxy telepítéséhez:
$ sudo apt install haproxy
Esetünkben már telepítettük.
2. lépés: Szerkessze a HAProxy konfigurációs fájlt
A HAProxynak van egy konfigurációs fájlja, amelyet el kell érnie és szerkesztenie kell, ha fordított proxyként szeretné beállítani. Kezdje a konfigurációs fájl megnyitásával egy szövegszerkesztővel.
$ sudo nano /etc/haproxy/haproxy.cfgHa megnyílik, vegye figyelembe, hogy rendelkezik az alapértelmezett és a globális szakaszok alapvető konfigurációival. Ezután két további szakaszt kell létrehoznunk: frontendet és backendet. A frontend határozza meg azokat az interfészeket, amelyeknek fogadniuk kell a kliens kéréseket, míg a backend határozza meg a forgalmat lebonyolító szervereket.
Ebben a példában úgy konfiguráljuk a frontendet, hogy fogadja a kliens kéréseket a 80-as és 81-es portról. Ezután létrehozunk egy szabályt a forgalom elosztására úgy, hogy a 80-as portról érkező kapcsolatokat egy adott szerverre irányítjuk, míg a 81-es portról egy másikra. szerver. A frontend szakaszunk a következő:
Mivel két háttérkiszolgálót hoztunk létre, a backend2-t és a linux_backend-et, mindkét kiszolgálóhoz létre kell hoznunk a háttérszakaszt. Meghatározzuk, hogy melyik IP-címen osztjuk el a forgalmat a „szerver1” és a „szerver2” felé.
A konfigurációs fájl szerkesztése után mentse el, és lépjen ki a fájlból. Vegye figyelembe, hogy a HAProxy konfigurálásának számos módja van az Ön igényeitől függően. A mi esetünkben a webszervereket a megadott IP-cím használatával hozzuk létre a forgalom irányításához. Módosítsa az IP-címeket, hogy azok megfeleljenek a webszervereinek IP-címeinek, és hogy melyik porton kíván hallgatni.
3. lépés: Ellenőrizze az érvényességet
A HAProxy segítségével van egy parancs, amellyel ellenőrizheti, hogy a konfigurációs fájl érvényes-e. Futtassa a következő parancsot, és nézze meg, milyen kimenetet kap:
$ sudo haproxy -c -f /etc/haproxy/haproxy.cfg
Ha hasonló kimenetet kap, az megerősíti, hogy a konfigurációs fájl érvényes. Ellenkező esetben hibákat okoz.
4. lépés: Tesztelje a fordított proxyt
Egy olyan paranccsal, mint a „curl”, forgalmat küldhet a webszervernek, és megnézheti, hogyan reagál. A mi esetünkben Python3-at használunk a webszerverek létrehozásához.
A „curl” parancs futtatása megerősíti, hogy webszerverünk figyel a megadott portra, és a HAProxy a konfigurációs fájlunk alapján elosztotta a forgalmat a megadott szerver felé.
A webszerverhez böngészőből is hozzáférhet, és megerősítheti, hogy a fordított proxy működik.
Mivel két webszerverünk van, amelyek a klienseszközök által használt porttól függően használhatók, kössünk egy másik webszervert egy másik porthoz, és nézzük meg, mi történik.
A következő kimenet azt mutatja, hogy a HAProxy elküldte a forgalmunkat a második háttérkiszolgálóra, miután észlelte, hogy a klienskérést a 81-es porton keresztül küldték el, megerősítve, hogy a forgalomelosztás a várt módon működik.
Így konfigurálhatja a HAProxyt fordított proxyként.
Következtetés
A HAProxy kiváló választás a webszerver fordított proxyjához. A konfigurálása egyszerű. Csak azt adja meg, hogy melyik portot figyelje meg az ügyfél kérései, és milyen szabályokat használjon a terheléselosztáshoz. Ezután adja hozzá a használni kívánt háttérkiszolgálókat, és máris működni fog a fordított proxy. Ez a bejegyzés megosztotta a követendő lépéseket, és példát mutatott be annak biztosítására, hogy kényelmesebbé váljon a HAProxy használatában.