Ubuntu

Kako instalirati i konfigurirati HAproxy na Ubuntu 20.04 LTS

Kako instalirati i konfigurirati HAproxy na Ubuntu 20.04 LTS
HAproxy je lagani paket otvorenog koda koji nudi visoku dostupnost i uravnoteženje opterećenja za programe temeljene na TCP i HTTP-u. Distribuira opterećenje između weba i poslužitelja aplikacija. HAproxy je dostupan za gotovo sve Linux distribucije. To je široko korišten uravnoteživač opterećenja koji je popularan zbog svoje učinkovitosti, pouzdanosti i malo memorije i CPU-a. U ovom ćemo postu objasniti kako instalirati i konfigurirati HAproxy na Ubuntu sustav.

Imamo postavljena tri stroja. Instalirat ćemo HAproxy na jedan poslužitelj, a Apache web poslužitelje na dva poslužitelja. Naš HAproxy poslužitelj tada će djelovati kao uravnoteživač opterećenja i rasporedit će opterećenje između Apache web poslužitelja.

Bilješka: Postupak i naredbe spomenuti u ovom postu testirani su na Ubuntu 20.04 LTS (žarišna fosa). Isti postupak vrijedi i za distribucije Debian i Mint.

Pojedinosti o mreži

Koristit ćemo tri Ubuntu poslužitelja; svi na istoj mreži. Pojedinosti naših poslužitelja su sljedeće:

Ime hosta: HAproxy, IP adresa: 192.168.72.157 (Frontend poslužitelj)
Ime hosta: web-poslužitelj1, IP adresa: 192.168.72.158 (pozadinski poslužitelji)
Ime hosta: web-poslužitelj2, IP adresa: 192.168.72.159 (pozadinski poslužitelji)

Bilješka: Morate imati sudo privilegije na svim poslužiteljima.

Jedan ćemo stroj konfigurirati kao uravnoteživač tereta, a druga dva kao web poslužitelje. HAproxy poslužitelj bit će naš prednji poslužitelj koji će primati zahtjeve od korisnika i prosljeđivati ​​ih na dva web poslužitelja. Web poslužitelji bit će naši Backend poslužitelji koji će primati one proslijeđene zahtjeve.

Ovako izgleda naša postavka:

Postavljanje web poslužitelja-Backend poslužitelji

U ovom ćemo odjeljku postaviti dva web poslužitelja (web-poslužitelj1 i web-poslužitelj2) kao naši pozadinski poslužitelji.

Na web-poslužitelju1 (192.168.72.158)

Izvršite korake u nastavku na svom web poslužitelju. Obavezno zamijenite imena hostova i IP adrese odgovarajućim IP adresama i imenima hostova vaših web poslužitelja.

1. Konfigurirajte datoteku hostova

Na web-poslužitelj1, uredi / etc / hosts datoteka:

$ sudo nano / etc / hosts

Zatim dodajte unos imena hosta za HAproxy poslužitelj kako slijedi:

hostname-of-HAproxy IP-adresa-HAproxy

U našem scenariju to bi bilo:

HAproxy 192.168.72.157

2. Postavljanje web poslužitelja Apache

Sada instalirajte web poslužitelj Apache pomoću naredbe u nastavku u terminalu. Također možete posjetiti našu objavu na Kako instalirati web poslužitelj Apache na Linux.

$ sudo apt instalirati apache2

Zatim omogućite i pokrenite uslugu Apache pomoću naredbi u nastavku u Terminalu:

$ sudo systemctl omogući apache2
$ sudo systemctl pokreni apache2

Stvorite indeksnu datoteku za web-poslužitelj1 koristeći donju naredbu u terminalu:

$ echo "

zdravo! Ovo je web poslužitelj1: 192.168.72.158

"| sudo tee / var / www / html / index.html

Ako se vatrozid izvodi na vašem sustavu, morat ćete omogućiti Apacheov promet kroz njega:

$ sudo ufw dopušta 80 / tcp

Zatim ponovno učitajte konfiguracije vatrozida:

$ ufw ponovno učitaj

Pokušajte pristupiti web mjestu u svom web pregledniku upisivanjem http: // nakon čega slijedi ili IP adresa ili ime hosta vašeg web poslužitelja.

http: // ime hosta-ili-IP-adresa

Možete i upotrijebiti naredbu curl za testiranje web stranice.

$ uvojak

Na web poslužitelju-2 192.168.72.159)

Izvršite korake u nastavku na drugom web poslužitelju. Obavezno zamijenite imena hostova i IP adrese odgovarajućim IP adresama i imenima hostova vaših web poslužitelja.

1. Konfigurirajte datoteku hostova

U web-poslužitelj2, uredi / etc / hosts datoteka:

$ sudo nano / etc / hosts

Zatim dodajte unos imena hosta za HAproxy poslužitelj kako slijedi:

HAproxy 192.168.72.157

2. Instalirajte web poslužitelj Apache

Sada instalirajte web poslužitelj Apache pomoću naredbe u nastavku u terminalu.

$ sudo apt instalirati apache2

Zatim omogućite i pokrenite Apache uslugu pomoću naredbi u nastavku u Terminalu:

$ sudo systemctl omogući apache2
$ sudo systemctl pokreni apache2

Stvorite indeksnu datoteku za web-poslužitelj2 pomoću naredbe u nastavku u Terminalu:

$ echo "

zdravo! Ovo je web poslužitelj2: 192.168.72.159

"| sudo tee / var / www / html / index.html

Dopustite Apacheu u vatrozidu:

$ sudo ufw dopušta 80 / tcp

a zatim ponovno učitajte konfiguracije vatrozida:

$ ufw ponovno učitaj

Sada pokušajte pristupiti web mjestu u svom web pregledniku upisivanjem http: // nakon čega slijedi ili IP adresa ili ime hosta.

http: // ime hosta-ili-IP-adresa

Možete i upotrijebiti naredbu curl za testiranje web stranice.

$ uvojak

Sada su naši web poslužitelji Apache spremni.

Postavljanje HAproxy uravnoteživača opterećenja-Frontend poslužitelj

U ovom ćemo odjeljku postaviti HAproxy uravnoteživač opterećenja za naš web poslužitelji. Ovaj HAproxy poslužitelj će djelovati kao prednji poslužitelj i prihvaća dolazne zahtjeve klijenata.

Na HAproxy poslužitelj (192.168.72.157), izvedite korake u nastavku za postavljanje uravnoteživača opterećenja.

1. Konfigurirajte datoteku hostova

Uredite / etc / hosts datoteku pomoću naredbe u nastavku u terminalu:

$ sudo nano / etc / hosts

Dodajte sljedeće unose imena hosta za oba Apači web poslužitelja, zajedno s vlastitim imenom hosta:

192.168.72.157 HAproksi
192.168.72.158 web-poslužitelj1
192.168.72.159 web-poslužitelj2

Sada spremite i zatvorite / etc / hosts datoteka.

Instaliranje HAproxy uravnoteživača opterećenja

U ovom ćemo koraku instalirati HAproxy na jedan od naših Ubuntu poslužitelja (192.168.72.157). Da biste to učinili, ažurirajte apt pomoću sljedeće naredbe u terminalu:

$ sudo apt-get ažuriranje

Zatim ažurirajte pakete pomoću naredbe u nastavku:

$ sudo apt-get nadogradnja

Sada instalirajte HAproxy pomoću sljedeće naredbe u terminalu:

$ sudo sudo apt instalirati haproxy

Kada je instalacija HAproxy poslužitelja gotova, možete je potvrditi pomoću naredbe u nastavku u Terminalu:

$ haproxy -v

Pokazat će vam instaliranu verziju HAproxyja na vašem sustavu koja potvrđuje da je HAproxy uspješno instaliran.

Konfiguriranje HAproxy-a kao uravnoteživača opterećenja

U sljedećem odjeljku konfigurirat ćemo HAproxy kao uravnoteživač opterećenja. Učiniti tako, uredite / etc / haproxy / haproxy.usp datoteka:

$ sudo nano / etc / haproxy / haproxy.usp

U haproksi dodajte sljedeće retke.cfg datoteka koja zamjenjuje IP adrese vlastitim IP adresama.

The frontend web-frontend u gornjim konfiguracijskim redovima govori HAproxyju da preslušava dolazne zahtjeve na portu 80 od 192.168.72.157 a zatim ih proslijediti na pozadinske poslužitelje konfigurirane pod pozadina web-pozadina. Tijekom konfiguriranja zamijenite IP adrese odgovarajućim IP adresama vaših web poslužitelja.

Konfiguriranje nadzora HAproxyja

Pomoću HAproxy nadzora možete pregledati puno informacija, uključujući status poslužitelja, prenesene podatke, vrijeme rada, brzinu sesije itd. Da biste konfigurirali nadzor HAproxyja, dodajte sljedeće retke u konfiguracijsku datoteku koja se nalazi na / etc / haproxy / haproxy.usp:

slušajte statistiku
vezati 192.168.72.157: 8080
način rada http
opcija forwardfor
opcija httpclose
statistika omogućuje
statistika show-legende
statistika osvježava 5s
statistika uri / statistika
statistika carstvo Haproxy \ Statistika
statistika auth kbuzdar: kbuzdar         # Prijava korisnika i lozinka za nadzor
statistika admin ako je ISTINA
default_backend web-pozadina

Gornja konfiguracija omogućuje HAproxy â € œstatistikaâ € stranicu pomoću statistika direktivom i osigurava ga s http osnovna provjera autentičnosti pomoću korisničkog imena i lozinke definirane statistika aut direktiva.

Nakon što završite s konfiguracijama, spremite i zatvorite haproksi.cfg datoteku.

Sada provjerite konfiguracijsku datoteku pomoću naredbe u nastavku u Terminalu:

$ haproxy -c -f / etc / haproxy / haproxy.usp

Sljedeći izlaz pokazuje da su konfiguracije ispravne.

Sada da biste primijenili konfiguracije, ponovo pokrenite uslugu HAproxy:

$ sudo systemctl ponovno pokrenite haproxy.servis

Zaustavit će se, a zatim pokrenuti uslugu HAproxy.

Da biste provjerili status HAproxy usluge, naredba bi bila:

$ sudo systemctl status haproxy.servis

The aktivan (trčanje) status u sljedećem izlazu pokazuje da je HAproxy poslužitelj omogućen i radi u redu.

Evo još nekih naredbi za upravljanje HAproxy poslužiteljem:

Da bi se pokrenuo HAproxy poslužitelj, naredba bi bila:

$ sudo systemctl start haproxy.servis

Da bi se zaustavio HAproxy poslužitelj, naredba bi bila:

$ sudo systemctl zaustavi haproksi.servis

U slučaju da želite privremeno onemogućiti HAproxy poslužitelj, naredba bi bila:

$ sudo systemctl onemogući haproxy.servis

Da biste ponovno omogućili HAproxy poslužitelj, naredba bi bila:

$ sudo systemctl omogući haproxy.servis

Ispitajte HAproxy

Prije testiranja postavke HAproxy, provjerite jeste li povezani s web poslužiteljima. S vašeg HAproxy poslužitelja pingirajte oba web poslužitelja bilo prema njihovim IP adresama ili imenima hosta.

$ ping ime-hosta-ili-ip-adresa

Sljedeći izlaz pokazuje da HAproxy poslužitelj može doći do oba web poslužitelja.

Testirajte HA proxy pomoću web preglednika

Sada na svom HAproxy poslužitelju otvorite bilo koji web preglednik i upišite http: // nakon čega slijedi IP adresa HAproxy poslužitelja koja je u našem slučaju 192.168.72.157.

http: // 192.168.72.157

HAproxy poslužitelj će alternativno poslati zahtjev na oba web poslužitelja metodom zaokruživanja. To možete testirati ponovnim učitavanjem web stranice nekoliko puta.

Ovo je odgovor koji smo dobili kada smo posjetili http: // 192.168.72.157 prvi put:

Ovo je odgovor koji smo dobili kada smo ponovno učitali web stranicu:

Možete koristiti i ime hosta umjesto IP adrese HAproxy poslužitelja.

Testirajte HA proxy pomoću uvijanja

Također možete upotrijebiti naredbu curl u Linuxu za testiranje postavke HAproxyja. Otvorite terminal i upišite kovrča nakon čega slijedi IP adresa ili ime hosta HAproxy poslužitelja.

$ curl 192.168.72.157

ili

$ curl HAproxy

Pokrenite naredbu curl nekoliko puta i vidjet ćete da se odgovor izmjenjuje između oba web poslužitelja.

Umjesto da naredbe izvodite nekoliko puta, možete pokrenuti i sljedeću skriptu od jednog retka za testiranje HAproxy poslužitelja:

$ dok je istinito; uvijati 192.168.72.157; spavati 1; gotovo

Testiranje praćenja HAproxyja

Za pristup stranici praćenja HAproxy upišite http: // nakon čega slijedi IP adresa / ime hosta HAproxy poslužitelja i porta 8080 / statistika:

http: // 192.168.72.157: 8080 / statistika

ili

http: // HAproxy: 8080 / stats

Pojavit će se sljedeći okvir za provjeru autentičnosti. Unesi korisničko ime i zaporka konfigurirali ste ranije u konfiguracijama, a zatim pritisnite u redu.

Ovo je statističko izvješće za naš HAproxy poslužitelj.

Tu imate instalaciju i konfiguraciju HAproxy uravnoteživača opterećenja na Linux sustavu. Upravo smo razgovarali o osnovnom postavljanju i konfiguraciji HAproxy-a kao uravnoteživača opterećenja za web poslužitelje Apache. Također smo pogledali neke naredbe za upravljanje HAproxy poslužiteljem. Na kraju smo testirali uravnoteženje opterećenja putem preglednika i naredbe curl. Za više informacija posjetite službenu dokumentaciju HAproxy

Kako instalirati i igrati Doom na Linuxu
Uvod u Doom Serija Doom nastala je 90-ih nakon izlaska originalnog Dooma. To je bio trenutni hit i od tog vremena nadalje igraća serija dobila je broj...
Vulkan za korisnike Linuxa
Sa svakom novom generacijom grafičkih kartica vidimo da programeri igara pomiču granice grafičke vjernosti i dolaze na korak od fotorealizma. No, bez ...
OpenTTD vs Simutrans
Stvaranje vlastite simulacije prijevoza može biti zabavno, opuštajuće i izuzetno primamljivo. Zbog toga morate isprobati što više igara kako biste pro...