Mums ir iestatītas trīs mašīnas. Mēs instalēsim HAproxy vienā serverī un Apache tīmekļa serverus divos serveros. Pēc tam mūsu HAproxy serveris darbosies kā slodzes līdzsvarotājs un sadalīs slodzi starp Apache tīmekļa serveriem.
Piezīme: Šajā ziņojumā minētā procedūra un komandas ir pārbaudītas Ubuntu 20.04 LTS (fokusa Fossa). Šī pati procedūra attiecas arī uz Debian un Mint izplatīšanu.
Tīkla informācija
Mēs izmantosim trīs Ubuntu serverus; visi vienā tīklā. Mūsu serveru informācija ir šāda:
Resursdatora nosaukums: HAproxy, IP adrese: 192.168. lpp.72.157 (Frontend serveris)Resursdatora nosaukums: web-server1, IP adrese: 192.168. lpp.72.158 (aizmugures serveri)
Resursdatora nosaukums: web-server2, IP adrese: 192.168. lpp.72.159 (aizmugures serveri)
Piezīme: Visos serveros jābūt sudo privilēģijām.
Mēs konfigurēsim vienu mašīnu kā slodzes līdzsvarotāju, bet pārējās divas - par tīmekļa serveriem. HAproxy serveris būs mūsu priekšējais serveris, kas saņems lietotāju pieprasījumus un pārsūtīs tos abiem tīmekļa serveriem. Tīmekļa serveri būs mūsu aizmugures serveri, kas saņems pārsūtītos pieprasījumus.
Šādi izskatās mūsu iestatījums:
Tīmekļa serveru-aizmugures serveru iestatīšana
Šajā sadaļā mēs iestatīsim divus tīmekļa serverus (Web-serveris1 un tīmekļa serveris2) kā mūsu aizmugures serveri.
Web serverī1 (192.168. lpp.72.158)
Veiciet tālāk norādītās darbības savā tīmekļa serverī. Pārliecinieties, ka nomaināt resursdatora un IP adreses ar attiecīgajām tīmekļa serveru IP adresēm un resursdatoru nosaukumiem.
1. Konfigurēt resursdatora failu
Ieslēgts Web-serveris1, rediģēt / etc / hosts fails:
$ sudo nano / etc / hostsPēc tam pievienojiet resursdatora ierakstu vietnei HAproxy serveri šādi:
resursdatora-HAproxy IP-adrese-no HAproxyMūsu scenārijā tas būtu:
HAproxy 192.168. lpp.72.157. lpp2. Iestatiet Apache tīmekļa serveri
Tagad instalējiet Apache tīmekļa serveri, izmantojot šādu termināļa komandu. Jūs varat arī apmeklēt mūsu ziņu vietnē Kā instalēt Apache tīmekļa serveri Linux.
$ sudo apt instalējiet apache2Pēc tam iespējojiet un palaidiet Apache pakalpojumu, izmantojot šādas komandas Terminal:
$ sudo systemctl iespējojiet apache2$ sudo systemctl start apache2
Izveidojiet vietnes indeksu failu Web-serveris1 izmantojot šādu komandu Terminal:
$ echo "Sveiki! Tas ir tīmekļa serveris1: 192.168. lpp.72.158. lpp
"| sudo tee / var / www / html / index.htmlJa jūsu sistēmā darbojas ugunsmūris, jums būs jāļauj Apache trafiku caur to:
$ sudo ufw ļauj 80 / tcpPēc tam atkārtoti ielādējiet ugunsmūra konfigurācijas:
$ ufw pārlādētTagad mēģiniet piekļūt vietnei tīmekļa pārlūkprogrammā, ierakstot http: // kam seko vai nu jūsu tīmekļa servera IP adrese vai resursdatora nosaukums.
http: // resursdatora nosaukums vai IP adrese
Varat arī izmantot čokurošanās komandu, lai pārbaudītu vietni.
$ čokurošanāsTīmekļa serverī-2 192.168. lpp.72.159)
Veiciet tālāk norādītās darbības otrajā tīmekļa serverī. Pārliecinieties, ka nomaināt resursdatora un IP adreses ar attiecīgajām tīmekļa serveru IP adresēm un resursdatoru nosaukumiem.
1. Konfigurēt resursdatora failu
In tīmekļa serveris2, rediģēt / etc / hosts fails:
$ sudo nano / etc / hostsPēc tam pievienojiet resursdatora ierakstu vietnei HAproxy serveri šādi:
HAproxy 192.168. lpp.72.157. lpp2. Instalējiet Apache tīmekļa serveri
Tagad instalējiet Apache tīmekļa serveri, izmantojot šādu termināļa komandu.
$ sudo apt instalējiet apache2Pēc tam iespējojiet un palaidiet Apache pakalpojumu, izmantojot šādas komandas Terminal:
$ sudo systemctl iespējojiet apache2$ sudo systemctl start apache2
Izveidojiet Web-server2 indeksa failu, izmantojot šādu komandu Terminal:
$ echo "Sveiki! Tas ir tīmekļa serveris2: 192.168. lpp.72.159. lpp
"| sudo tee / var / www / html / index.htmlAtļaut Apache ugunsmūrī:
$ sudo ufw ļauj 80 / tcpun pēc tam atkārtoti ielādējiet ugunsmūra konfigurācijas:
$ ufw pārlādētTagad mēģiniet piekļūt vietnei tīmekļa pārlūkprogrammā, ierakstot http: // seko vai nu IP adrese, vai resursdatora nosaukums.
http: // resursdatora nosaukums vai IP adrese
Varat arī izmantot čokurošanās komandu, lai pārbaudītu vietni.
$ čokurošanāsTagad mūsu Apache tīmekļa serveri ir gatavi.
HAproxy slodzes līdzsvarotāja-Frontend servera iestatīšana
Šajā sadaļā mēs izveidosim HAproxy slodzes līdzsvarotāju tīmekļa serveri. Šis HAproxy serveris darbosies kā frontend serveris un pieņems ienākošos klientu pieprasījumus.
Uz HAproxy serveris (192.168. lpp.72.157. lpp), veiciet tālāk norādītās darbības, lai iestatītu slodzes līdzsvarotāju.
1. Konfigurēt resursdatora failu
Rediģēt / etc / hosts failu, izmantojot šādu komandu Terminal:
$ sudo nano / etc / hostsAbiem pievienojiet šādus resursdatora nosaukumus Apache tīmekļa serveri kopā ar savu resursdatora nosaukumu:
192.168. lpp.72.157 HAproxy192.168. lpp.72.158 tīmekļa serveris1
192.168. lpp.72.159 tīmekļa serveris2
Tagad saglabājiet un aizveriet / etc / hosts failu.
HAproxy slodzes līdzsvarotāja uzstādīšana
Šajā solī mēs instalēsim HAproxy vienā no mūsu Ubuntu serveriem (192.168. lpp.72.157). Lai to izdarītu, atjauniniet apt, izmantojot šādu komandu Terminal:
$ sudo apt-get atjauninājumsPēc tam atjauniniet paketes, izmantojot šādu komandu:
$ sudo apt-get jauninājumsTagad instalējiet HAproxy, izmantojot šādu komandu Terminal:
$ sudo sudo apt instalējiet haproksi
Kad HAproxy servera instalēšana ir pabeigta, to var apstiprināt, izmantojot šādu komandu Terminal:
$ haproksi -vTas parādīs jūsu sistēmā instalēto HAproxy versiju, kas pārbauda, vai HAproxy ir veiksmīgi instalēta.
HAproxy konfigurēšana kā slodzes balansētājs
Šajā sadaļā mēs konfigurēsim HAproxy kā slodzes līdzsvarotāju. Tā darīt, rediģēt / etc / haproxy / haproxy.cfg fails:
$ sudo nano / etc / haproksi / haproksi.cfgHidroksijā pievienojiet šādas rindas.cfg fails, aizstājot IP adreses ar savām IP adresēm.
The frontend tīmekļa frontend iepriekšminētajās konfigurācijas rindās liek HAproxy klausīties ienākošos pieprasījumus ostā 80 gada 192.168. lpp.72.157. lpp un pēc tam pārsūtiet tos uz aizmugures serveriem, kas konfigurēti zem aizmugure tīmekļa aizmugure. Konfigurēšanas laikā nomainiet IP adreses ar attiecīgajām tīmekļa serveru IP adresēm.
HAproxy Monitoring konfigurēšana
Izmantojot HAproxy uzraudzību, jūs varat apskatīt daudz informācijas, ieskaitot servera statusu, pārsūtītos datus, darbspējas laiku, sesijas ātrumu utt. Lai konfigurētu HAproxy uzraudzību, pievienojiet šīs rindas konfigurācijas failā, kas atrodas / etc / haproksi / haproksi.cfg:
klausieties statistikuiesiet 192.168. lpp.72.157: 8080
režīms http
opcija uz priekšu
opcija httpclose
statistika iespējo
statistika rāda leģendas
statistika atsvaidzina 5s
statistika uri / stats
stats realm Haproxy \ Statistics
stats auth kbuzdar: kbuzdar # Piesakieties lietotājam un parolei uzraudzībai
stats admin ja TRUE
default_backend tīmekļa aizmugure
Iepriekš norādītā konfigurācija ļauj aktivizēt HAproxystatistikalapa, izmantojot statistika un nodrošina to ar http pamata autentifikācija, izmantojot lietotāja definēto lietotājvārdu un paroli statistika autent direktīvu.
Kad esat pabeidzis konfigurācijas, saglabājiet un aizveriet haproksi.CFG fails.
Tagad pārbaudiet konfigurācijas failu, izmantojot šādu komandu Terminal:
$ haproksi -c -f / etc / haproksi / haproksi.cfgŠī izeja parāda, ka konfigurācijas ir pareizas.
Lai lietotu konfigurācijas, restartējiet pakalpojumu HAproxy:
$ sudo systemctl restartējiet haproksi.apkalpošanaTas tiks pārtraukts un pēc tam sāks pakalpojumu HAproxy.
Lai pārbaudītu HAproxy pakalpojuma statusu, komanda būs šāda:
$ sudo systemctl statusa haproksija.apkalpošanaThe aktīvs (darbojas) statuss nākamajā izvadē parāda, ka HAproxy serveris ir iespējots un darbojas labi.
Šeit ir dažas citas komandas HAproxy servera pārvaldībai:
Lai palaistu HAproxy serveri, komanda būtu šāda:
$ sudo systemctl sākt haproksi.apkalpošanaLai apturētu HAproxy serveri, komanda būtu:
$ sudo systemctl apturēt haproksi.apkalpošanaJa vēlaties īslaicīgi atspējot HAproxy serveri, komanda būs šāda:
$ sudo systemctl atspējot haproksi.apkalpošanaLai atkārtoti iespējotu HAproxy serveri, komanda būtu šāda:
$ sudo systemctl iespējo haproksi.apkalpošanaPārbaudiet HAproxy
Pirms pārbaudāt HAproxy iestatīšanu, pārliecinieties, vai jums ir savienojums ar tīmekļa serveriem. No sava HAproxy servera pingējiet abus tīmekļa serverus pēc to IP adresēm vai resursdatoru nosaukumiem.
$ ping resursdatora nosaukums vai ip adreseŠis izvads parāda, ka HAproxy serveris var sasniegt abus tīmekļa serverus.
Pārbaudiet HA starpniekserveri, izmantojot tīmekļa pārlūkprogrammu
Tagad savā HAproxy serverī atveriet jebkuru tīmekļa pārlūkprogrammu un ierakstiet http: // seko HAproxy servera IP adrese, kas mūsu gadījumā ir 192.168. lpp.72.157. lpp.
http: // 192.168. lpp.72.157. lppHAproxy serveris alternatīvi nosūtīs pieprasījumu abiem tīmekļa serveriem ar apļveida metodi. To varat pārbaudīt, pāris reizes pārlādējot vietni.
Tā ir atbilde, ko saņēmām, apmeklējot vietni http: // 192.168. lpp.72.157 pirmo reizi:
Šī ir atbilde, ko saņēmām, atkārtoti ielādējot vietni:
HAproxy servera IP adreses vietā varat izmantot arī resursdatora nosaukumu.
Pārbaudiet HA starpniekserveri, izmantojot čokurošanos
Varat arī izmantot čokurošanās komandu Linux, lai pārbaudītu HAproxy iestatīšanu. Atveriet termināli un ierakstiet čokurošanās kam seko HAproxy servera IP adrese vai resursdatora nosaukums.
$ čokurošanās 192.168. lpp.72.157. lppvai
$ čokurošanās HAproxyDažas reizes palaidiet čokurošanās komandu, un jūs redzēsiet, kā atbilde mainās starp abiem tīmekļa serveriem.
Tā vietā, lai vairākas reizes palaistu komandas, varat arī palaist šo vienas rindas skriptu, lai pārbaudītu HAproxy serveri:
$ kamēr taisnība; veiciet čokurošanos 192.168. lpp.72.157; gulēt 1; izdarīts
HAproxy Monitoring testēšana
Lai piekļūtu HAproxy uzraudzības lapai, ierakstiet http: // kam seko HAproxy servera IP adrese / resursdatora nosaukums un ports 8080 / stats:
http: // 192.168. lpp.72.157: 8080 / statsvai
http: // HAproxy: 8080 / statsParādīsies šāds autentifikācijas lodziņš. Enter lietotājvārdu un paroli konfigurācijās iepriekš konfigurējāt, un pēc tam nospiediet labi.
Šis ir mūsu HAproxy servera statistikas pārskats.
Tur jums ir HAproxy slodzes līdzsvarotāja instalēšana un konfigurēšana Linux sistēmā. Mēs tikko apspriedām HAproxy kā Apache tīmekļa serveru slodzes līdzsvarotāja pamata iestatīšanu un konfigurēšanu. Mēs arī apskatījām dažas komandas HAproxy servera pārvaldībai. Galu galā mēs pārbaudījām slodzes līdzsvarošanu, izmantojot pārlūku un čokurošanās komandu. Lai iegūtu papildinformāciju, apmeklējiet oficiālo HAproxy dokumentāciju