Meil on seadistatud kolm masinat. Paigaldame HAproxy ühte serverisse ja Apache veebiserverid kahte serverisse. Meie HAproxy server toimib seejärel koormuse tasakaalustajana ja jaotab koormuse Apache veebiserverite vahel.
Märge: Selles postituses mainitud protseduuri ja käske on testitud Ubuntu 20.04 LTS (fookuskaugus). Sama protseduur kehtib ka Debiani ja Mint distributsioonide puhul.
Võrgu üksikasjad
Kasutame kolme Ubuntu serverit; kõik ühes võrgus. Meie serverite üksikasjad on järgmised:
Hostinimi: HAproxy, IP-aadress: 192.168.72.157 (esiserver)Hostinimi: veebiserver1, IP-aadress: 192.168.72.158 (taustserverid)
Hostinimi: veebiserver2, IP-aadress: 192.168.72.159 (taustserverid)
Märge: Kõigis serverites peavad teil olema sudoõigused.
Konfigureerime ühe masina koormuse tasakaalustajaks ja teised kaks veebiserveriteks. HAproxy server on meie eesserver, mis võtab kasutajatelt päringud vastu ja edastab need kahele veebiserverile. Veebiserverid on meie taustserverid, mis saavad need edastatud taotlused vastu.
Nii näeb meie seadistus välja:
Veebiserverite-taustaprogrammide seadistamine
Selles osas seadistame kaks veebiserverit (veebiserver1 ja veebiserver2) meie taustserveritena.
Veebiserveris1 (192.168.72.158)
Tehke oma veebiserveris järgmised toimingud. Asendage hostinimed ja IP-aadressid kindlasti oma veebiserverite asjakohaste IP-aadresside ja hostinimedega.
1. Hostifaili konfigureerimine
Peal veebiserver1, redigeeri / etc / hosts fail:
$ sudo nano / etc / hostsSeejärel lisage hostinime kirje domeenile HAproksü järgmiselt:
hostinimi-HAproxy IP-aadress-HAproxyMeie stsenaariumi korral oleks see:
HAproxy 192.168.72.1572. Apache'i veebiserveri seadistamine
Nüüd installige Apache veebiserver, kasutades terminalis allolevat käsku. Võite külastada ka meie postitust Apache veebiserveri installimine Linuxi.
$ sudo apt install apache2Seejärel lubage ja käivitage teenus Apache, kasutades terminalis järgmisi käske:
$ sudo systemctl lubab apache2$ sudo systemctl start apache2
Looge domeenile indeksfail veebiserver1 kasutades terminalis järgmist käsku:
$ echo "Tere! See on veebiserver1: 192.168.72.158
"| sudo tee / var / www / html / index.HTMLKui teie süsteemis töötab tulemüür, peate selle kaudu lubama Apache'i liikluse:
$ sudo ufw lubab 80 / tcpSeejärel laadige tulemüüri konfiguratsioonid uuesti:
$ ufw laadige uuestiProovige nüüd oma veebibrauseris saidile juurde pääseda, tippides http: // millele järgneb kas teie veebiserveri IP-aadress või hostinimi.
http: // hostinimi või IP-aadress
Teise võimalusena võite veebilehe testimiseks kasutada ka käsku curl.
$ curlVeebiserveris-2 192.168.72.159)
Tehke oma teises veebiserveris järgmised toimingud. Asendage hostinimed ja IP-aadressid kindlasti oma veebiserverite asjakohaste IP-aadresside ja hostinimedega.
1. Hostifaili konfigureerimine
Sisse veebiserver2, redigeeri / etc / hosts fail:
$ sudo nano / etc / hostsSeejärel lisage hosti nimi HAproksü järgmiselt:
HAproxy 192.168.72.1572. Installige Apache veebiserver
Nüüd installige Apache veebiserver, kasutades terminalis allolevat käsku.
$ sudo apt install apache2Seejärel lubage ja käivitage teenus Apache, kasutades terminalis järgmisi käske:
$ sudo systemctl lubab apache2$ sudo systemctl start apache2
Looge veebifaili2 jaoks indeksfail, kasutades terminalis järgmist käsku:
$ echo "Tere! See on veebiserver2: 192.168.72.159
"| sudo tee / var / www / html / index.HTMLApache'i lubamine tulemüüris:
$ sudo ufw lubab 80 / tcpja seejärel laadige tulemüüri konfiguratsioonid uuesti:
$ ufw laadige uuestiProovige nüüd oma veebibrauseris saidile juurde pääseda, tippides http: // millele järgneb kas IP-aadress või hostinimi.
http: // hostinimi või IP-aadress
Teise võimalusena võite veebilehe testimiseks kasutada käsku curl.
$ curlNüüd on meie Apache veebiserverid valmis.
HAproxy koormuse tasakaalustaja-Frontendi serveri seadistamine
Selles jaotises seadistame meie jaoks HAproxy koormuse tasakaalustaja veebiserverid. See HAproxy server toimib eesserverina ja aktsepteerib klientide sissetulevaid taotlusi.
On HAproksü server (192.168.72.157), tehke koormuse tasakaalustaja seadistamiseks järgmised toimingud.
1. Hostifaili seadistamine
Redigeerige / etc / hosts faili, kasutades terminalis järgmist käsku:
$ sudo nano / etc / hostsLisage mõlema jaoks järgmised hostinime kirjed Apache veebiserverid koos oma hostinimega:
192.168.72.157 HAproksü192.168.72.158 veebiserver1
192.168.72.159 veebiserver2
Nüüd salvestage ja sulgege / etc / hosts faili.
HAproxy koormuse tasakaalustaja installimine
Selles etapis installime HAproxy ühte meie Ubuntu serverisse (192.168.72.157). Selleks värskendage apt-i, kasutades terminalis järgmist käsku:
$ sudo apt-get värskendusSeejärel värskendage pakette, kasutades järgmist käsku:
$ sudo apt-get upgradeNüüd installige HAproxy, kasutades terminalis järgmist käsku:
$ sudo sudo apt install haproxy
Kui HAproxy serveri installimine on lõpule jõudnud, saate selle kinnitada, kasutades terminalis järgmist käsku:
$ haproksü -vSee näitab teile teie süsteemi installitud HAproxy versiooni, mis kinnitab, et HAproxy on edukalt installitud.
HAproxy seadistamine koormuse tasakaalustajana
Järgmises jaotises konfigureerime HAproxy koormuse tasakaalustajana. Selleks, redigeeri faili / etc / haproxy / haproxy.vrd fail:
$ sudo nano / etc / haproksü / haproksü.vrdLisage haproksisse järgmised read.cfg-fail, mis asendab IP-aadressid teie enda IP-aadressidega.
The esiosa veebi-eesseade ülaltoodud konfiguratsiooniridadel käsib HAproxy'l kuulata sissetulevaid päringuid pordis 80 kohta 192.168.72.157 ja seejärel edastada need taustserveritele, mis on konfigureeritud all taustaprogramm veebi taustaprogramm. Seadistamise ajal asendage IP-aadressid oma veebiserverite asjakohaste IP-aadressidega.
HAproxy seire seadistamine
HAproxy seire abil saate vaadata palju teavet, sealhulgas serveri olekut, edastatud andmeid, tööaega, seansi kiirust jne. HAproxy jälgimise konfigureerimiseks lisage järgmised rida konfiguratsioonifailis, mis asub aadressil / etc / haproksü / haproksü.vrd:
kuula statistikatköita 192.168.72.157: 8080
režiim http
võimalus edasi
valik httpclose
statistika lubab
statistika näitab legende
statistika värskendab 5-d
statistika uri / statistika
stats realm Haproxy \ Statistics
stats auth kbuzdar: kbuzdar         # Logi sisse kasutaja ja parool jälgimiseks
statistika admin kui TRUE
default_backend veebi taustaprogramm
Ülaltoodud konfiguratsioon võimaldab HAproxy â € œstatistikaâ € leht, kasutades statistika ja tagab selle http põhiline autentimine, kasutades kasutaja määratud nime ja parooli statistika autor direktiiv.
Kui olete konfiguratsioonidega valmis, salvestage ja sulgege haproksü.cfg-fail.
Nüüd kontrollige konfiguratsioonifaili, kasutades terminalis järgmist käsku:
$ haproksü -c -f / etc / haproksü / haproksü.vrdJärgmine väljund näitab, et konfiguratsioonid on õiged.
Nüüd konfiguratsioonide rakendamiseks taaskäivitage teenus HAproxy:
$ sudo systemctl taaskäivitage haproksü.teenusSee peatub ja käivitab seejärel HAproxy teenuse.
HAproxy teenuse oleku kontrollimiseks oleks käsk järgmine:
$ sudo systemctl staatus haproksü.teenusThe aktiivne (töötab) olek järgmises väljundis näitab, et HAproxy server on lubatud ja töötab hästi.
Siin on mõned muud käsud HAproxy serveri haldamiseks:
HAproxy serveri käivitamiseks oleks käsk järgmine:
$ sudo systemctl algab haproksü.teenusHAproxy serveri peatamiseks oleks käsk järgmine:
$ sudo systemctl peatab haproksü.teenusKui soovite ajutiselt HAproxy serveri keelata, oleks käsk järgmine:
$ sudo systemctl keelab haproksü.teenusHAproxy serveri uuesti lubamiseks oleks käsk järgmine:
$ sudo systemctl lubab haproksü.teenusTest HAproxy
Enne HAproxy seadistamise testimist veenduge, et teil oleks ühenduvus veebiserveritega. Pingutage oma HAproxy serveris mõlemat veebiserverit kas nende IP-aadresside või hostinimede järgi.
$ ping hostinimi või ip-aadressJärgmine väljund näitab, et HAproxy server võib jõuda mõlema veebiserverini.
Testige HA-puhverserverit veebibrauseri abil
Nüüd oma HAproxy serveris avage mis tahes veebibrauser ja tippige http: // järgneb HAproxy serveri IP-aadress, mis meie puhul on 192.168.72.157.
http: // 192.168.72.157Alternatiivina saadab HAproxy server päringu mõlemale veebiserverile ring-robin meetodil. Seda saate testida, laadides veebilehe paar korda uuesti.
Selle vastuse saime, kui külastasime veebisaiti http: // 192.168.72.157 esimest korda:
Selle vastuse saime veebilehe uuesti laadimisel:
HAproxy serveri IP-aadressi asemel saate kasutada ka hostinime.
Testige HA-puhverserverit, kasutades lokki
HAproxy seadistamise testimiseks võite kasutada ka Linuxis käsku curl. Avage terminal ja tippige lokkima millele järgneb HAproxy serveri IP-aadress või hosti nimi.
$ curl 192.168.72.157või
$ curl HAproxyKäivitage paar korda käsk curl ja näete vastust vaheldumisi mõlema veebiserveri vahel.
Selle asemel, et käske mitu korda käivitada, saate HAproxy serveri testimiseks käivitada ka järgmise ühe rea skripti:
$ tõsi; tee lokke 192.168.72.157; magama 1; tehtud
HAproxy seire testimine
HAproxy jälgimislehele juurdepääsu saamiseks tippige http: // millele järgneb HAproxy serveri IP-aadress / hostinimi ja port 8080 / stats:
http: // 192.168.72.157: 8080 / statistikavõi
http: // HAproxy: 8080 / statsIlmub järgmine autentimiskast. Sisenema kasutajanimi ja parool olete konfiguratsioonides varem konfigureerinud ja vajutage seejärel Okei.
See on meie HAproxy serveri statistikaaruanne.
Seal on teil Linuxi süsteemis HAproxy koormuse tasakaalustaja installimine ja seadistamine. Oleme just arutanud HAproxy põhiseadistamist ja seadistamist Apache veebiserverite koormuse tasakaalustajana. Vaatasime ka mõnda HAproxy serveri haldamise käsklust. Lõpuks testisime koormuse tasakaalustamist brauseri ja curl-käsu kaudu. Lisateabe saamiseks külastage HAproxy ametlikku dokumentatsiooni