Három gépet állítottunk be. A HAproxy-t egy szerverre, az Apache webszervereket pedig két szerverre telepítjük. A HAproxy szerverünk ezután terheléselosztóként fog működni, és elosztja a terhelést az Apache webszerverek között.
Jegyzet: Az ebben a bejegyzésben említett eljárást és parancsokat teszteltük Ubuntu 20.04 LTS (Focal Fossa). Ugyanez az eljárás érvényes a Debian és a Mint disztribúciókra is.
Hálózati részletek
Három Ubuntu szervert fogunk használni; mind ugyanazon a hálózaton. Szervereink részletei a következők:
Gazdanév: HAproxy, IP-cím: 192.168.72.157 (Frontend szerver)Gazdanév: web-kiszolgáló1, IP-cím: 192.168.72.158 (háttérszerverek)
Gazdanév: web-kiszolgáló2, IP-cím: 192.168.72.159 (háttérszerverek)
Jegyzet: Az összes kiszolgálón rendelkeznie kell sudo jogosultságokkal.
Az egyik gépet terheléselosztóként, a másik kettőt webszerverként konfiguráljuk. A HAproxy szerver lesz az a front-end szerver, amely fogadja a kéréseket a felhasználóktól és továbbítja a két webszerverre. A webszerverek azok a Backend szervereink lesznek, amelyek fogadják az továbbított kéréseket.
Így néz ki a beállításunk:
Webkiszolgálók-háttérszerverek beállítása
Ebben a szakaszban két webszervert állítunk be (web-szerver1 és web-szerver2), mint háttérszervereink.
A webkiszolgálón1 (192.168.72.158)
Hajtsa végre az alábbi lépéseket a webkiszolgálón. Győződjön meg róla, hogy a hosztneveket és az IP-címeket cserélje le a webkiszolgálók megfelelő IP-címeire és hosztneveire.
1. Állítsa be a gazdagép fájlt
Tovább web-szerver1, szerkesztése / etc / hosts fájl:
$ sudo nano / etc / hostsEzután adja hozzá a gazdagépnév bejegyzést HAproxy szerver az alábbiak szerint:
gazdagépnév-HAproxy IP-címe-HAproxyA mi forgatókönyvünk szerint ez lenne:
HAproxy 192.168.72.1572. Az Apache webszerver beállítása
Most telepítse az Apache webszervert az alábbi paranccsal a Terminálban. Megtekintheti a következő bejegyzésünket is: Az Apache webkiszolgáló telepítése Linuxra.
$ sudo apt install apache2Ezután engedélyezze és indítsa el az Apache szolgáltatást az alábbi parancsokkal a Terminálban:
$ sudo systemctl enable apache2$ sudo systemctl start apache2
Hozzon létre egy indexfájlt a következőhöz: web-szerver1 az alábbi parancs használatával a terminálban:
$ echo "Helló! Ez a webszerver1: 192.168.72.158
"| sudo tee / var / www / html / index.htmlHa tűzfal fut a rendszerén, akkor engedélyeznie kell rajta az Apache forgalmat:
$ sudo ufw 80 / tcp engedélyezéseEzután töltse be újra a tűzfal konfigurációit:
$ ufw újratöltésMost próbáljon meg bejutni a webhelyre a böngészőjében gépeléssel http: // amelyet a webkiszolgáló IP-címe vagy gazdagépneve követ.
http: // gazdagépnév vagy IP-cím
Alternatív megoldásként a curl paranccsal is tesztelheti a weboldalt.
$ göndörA 2-es webszerveren 192.168.72.159)
Hajtsa végre az alábbi lépéseket a második webkiszolgálón. Győződjön meg róla, hogy a hosztneveket és az IP-címeket cserélje le a webkiszolgálók megfelelő IP-címeire és hosztneveire.
1. Állítsa be a gazdagép fájlt
Ban ben web-szerver2, szerkesztése / etc / hosts fájl:
$ sudo nano / etc / hostsEzután adja hozzá a gazdagépnév bejegyzést HAproxy szerver az alábbiak szerint:
HAproxy 192.168.72.1572. Telepítse az Apache webszervert
Most telepítse az Apache webszervert az alábbi paranccsal a Terminálban.
$ sudo apt install apache2Ezután engedélyezze és indítsa el az Apache szolgáltatást az alábbi parancsokkal a Terminálban:
$ sudo systemctl enable apache2$ sudo systemctl start apache2
Hozzon létre egy indexfájlt a web-server2 számára a Terminál alábbi parancsával:
$ echo "Helló! Ez a webszerver2: 192.168.72.159
"| sudo tee / var / www / html / index.htmlEngedélyezze az Apache-t a tűzfalban:
$ sudo ufw 80 / tcp engedélyezésemajd töltse be újra a tűzfal konfigurációit:
$ ufw újratöltésMost próbáljon meg bejutni a webhelyre a böngészőjében gépeléssel http: // vagy az IP-cím vagy a gazdagép neve.
http: // hostname-or-IP-address
Alternatív megoldásként használhatja a curl parancsot a weboldal tesztelésére.
$ göndörAz Apache webszervereink készen állnak.
A HAproxy terheléselosztó-Frontend szerver beállítása
Ebben a szakaszban felállítunk egy HAproxy terheléselosztót a sajátunk számára webszerverek. Ez a HAproxy szerver frontend szerverként fog működni, és elfogadja az ügyfelektől érkező kéréseket.
A HAproxy szerver (192.168.72.157), hajtsa végre az alábbi lépéseket a terheléselosztó beállításához.
1. Állítsa be a gazdagép fájlt
Szerkessze a / etc / hosts fájl az alábbi paranccsal a Terminálban:
$ sudo nano / etc / hostsAdja hozzá a következő hosztnév bejegyzéseket mindkettőhöz Apache webszerverek a saját hosztnevével együtt:
192.168.72.157 HAproxy192.168.72.158 web-szerver1
192.168.72.159 web-szerver2
Most mentse és zárja be a / etc / hosts fájl.
HAproxy terheléselosztó telepítése
Ebben a lépésben a HAproxy-t telepítjük az egyik Ubuntu szerverünkre (192.168.72.157). Ehhez frissítse az apt alkalmazást a következő paranccsal a terminálban:
$ sudo apt-get updateEzután frissítse a csomagokat az alábbi paranccsal:
$ sudo apt-get upgradeMost telepítse a HAproxy-t a következő paranccsal a Terminálban:
$ sudo sudo apt install haproxy
Miután befejeződött a HAproxy szerver telepítése, megerősítheti azt a Terminál alábbi parancsával:
$ haproxi -vEz megmutatja a HAproxy telepített verzióját a rendszeren, amely ellenőrzi, hogy a HAproxy sikeresen települt-e.
A HAproxy beállítása terheléselosztóként
A következő szakaszban a HAproxy-t terheléselosztóként konfiguráljuk. Ahhoz, szerkessze az / etc / haproxy / haproxy fájlt.vö fájl:
$ sudo nano / etc / haproxy / haproxy.vöCsatolja a következő sorokat a haproxiába.cfg fájl, amely az IP-címeket lecseréli a saját IP-címeire.
A frontend web-frontend a fenti konfigurációs sorokban azt mondja a HAproxy-nak, hogy hallgassa meg a porton érkező kéréseket 80 nak,-nek 192.168.72.157 majd továbbítja őket a háttér webes háttér. Konfigurálás közben cserélje le az IP-címeket a webkiszolgálók megfelelő IP-címeire.
A HAproxy Monitoring beállítása
A HAproxy monitorozással rengeteg információt megtekinthet, beleértve a szerver állapotát, az átvitt adatokat, az üzemidőt, a munkamenet sebességét stb. A HAproxy figyelés konfigurálásához csatolja a következő sorokat a (z) címen található konfigurációs fájlba / etc / haproxy / haproxy.vö:
hallgass statisztikákatkössön 192.168.72.157: 8080
mód http
opció előre
opció httpclose
statisztika engedélyezi
statisztika show-legendák
a statisztika frissíti az 5-öt
statisztika uri / stats
stats realm Haproxy \ Statistics
stats auth kbuzdar: kbuzdar # Bejelentkezési felhasználó és jelszó a megfigyeléshez
stats admin ha IGAZ
default_backend web-háttér
A fenti konfiguráció lehetővé teszi a HAproxy használatátstatisztikaâ € oldal a statisztika irányelvvel biztosítja és biztosítja http alapértelmezett hitelesítés a stats auth irányelv.
Miután végzett a konfigurációkkal, mentse el és zárja be a haproxi.cfg fájl.
Most ellenőrizze a konfigurációs fájlt az alábbi paranccsal a Terminálban:
$ haproxy -c -f / etc / haproxy / haproxy.vöAz alábbi kimenet azt mutatja, hogy a konfigurációk helyesek.
A konfigurációk alkalmazásához indítsa újra a HAproxy szolgáltatást:
$ sudo systemctl indítsa újra a haproxit.szolgáltatásLeáll, majd elindítja a HAproxy szolgáltatást.
A HAproxy szolgáltatás állapotának ellenőrzéséhez a következő parancs szükséges:
$ sudo systemctl állapot haproxy.szolgáltatásA aktív (fut) A következő kimenet állapota azt mutatja, hogy a HAproxy szerver engedélyezve van és jól működik.
Íme néhány más parancs a HAproxy szerver kezelésére:
A HAproxy szerver indításához a következő parancs szükséges:
$ sudo systemctl start haproxy.szolgáltatásA HAproxy szerver leállításához a következő parancs lenne:
$ sudo systemctl stop haproxi.szolgáltatásAbban az esetben, ha ideiglenesen le szeretné tiltani a HAproxy szervert, a parancs a következő lenne:
$ sudo systemctl disable haproxy.szolgáltatásA HAproxy szerver újbóli engedélyezéséhez a következő parancs szükséges:
A $ sudo systemctl engedélyezi a haproxit.szolgáltatásTesztelje a HAproxyt
A HAproxy telepítés tesztelése előtt ellenőrizze, hogy csatlakozik-e a webszerverekhez. HAproxy szerverén pingeljen mindkét webszervert IP-címeik vagy gazdagépneveik alapján.
$ ping hostname-or-ip-addressAz alábbi kimenet azt mutatja, hogy a HAproxy szerver mindkét webszervert elérheti.
Tesztelje a HA Proxyt webböngészővel
Most a HAproxy szerveren nyisson meg minden webböngészőt és gépeljen be http: // amelyet a HAproxy szerver IP címe követ, amely esetünkben 192.168.72.157.
http: // 192.168.72.157A HAproxy szerver alternatív megoldásként mindkét webkiszolgálónak elküldi a kérést körbefutó módszerrel. Ezt úgy tesztelheti, hogy néhányszor újratölti a weboldalt.
Ezt a választ kaptuk, amikor meglátogattuk a http: // 192 oldalt.168.72.157 először:
Ezt a választ kaptuk a weboldal újratöltésekor:
Használhatja a hosztnevet is a HAproxy szerver IP-címe helyett.
Tesztelje a HA Proxyt göndörítéssel
A curl parancsot Linux alatt is használhatja a HAproxy beállításának tesztelésére. Nyissa meg a terminált és írja be becsavar utána a HAproxy szerver IP címe vagy hosztneve.
$ curl 192.168.72.157vagy
$ curl HAproxyFuttassa néhányszor a curl parancsot, és látni fogja, hogy a válasz váltakozik-e mindkét webszerver között.
A parancsok többszöri futtatása helyett a következő egysoros parancsfájlt is futtathatja a HAproxy szerver teszteléséhez:
$ igaz; göndörítsd 192.168.72.157; alvás 1; Kész
A HAproxy Monitoring tesztelése
A HAproxy monitoring oldal eléréséhez írja be a következőt: http: // amelyet a HAproxy szerver IP-címe / hosztneve és a 8080-as port / stats követ:
http: // 192.168.72.157: 8080 / statisztikavagy
http: // HAproxy: 8080 / statsA következő hitelesítési mező jelenik meg. Belép a felhasználónév és Jelszó korábban konfigurált a konfigurációkban, majd nyomja meg a gombot rendben.
Ez a HAproxy szerverünk statisztikai jelentése.
Itt van a HAproxy terheléselosztó telepítése és konfigurálása a Linux rendszeren. Nemrégiben tárgyaltuk a HAproxy alapszintű beállítását és konfigurálását az Apache webszerverek terheléselosztójaként. Megnéztünk néhány parancsot is a HAproxy szerver kezeléséhez. Végül a böngészőn és a curl paranccsal teszteltük a terheléselosztást. További információért keresse fel a HAproxy hivatalos dokumentációját