HAProxy (High Avai­la­bi­lity Proxy) on po­pu­laarne tarkvara, mida saab kasutada pöörd­prok­sina ja koormuse jaotajana. Selle saab Ubuntu 22.04-le paari lihtsa sammuga hõlpsasti pai­gal­dada.

Mis on HAProxy?

HAProxy on võimas avatud läh­te­koo­diga tarkvara, mida saab kasutada koormuse jaotajana või pöörd­prok­sina. Seda ka­su­ta­takse sageli and­me­liik­luse jao­ta­miseks mitme serveri vahel, pa­ran­da­des seeläbi vee­bi­ra­ken­duste kät­te­saa­da­vust ja jõudlust. HAProxy on end tõestanud lahendus, eriti suure ska­lee­ri­ta­vuse ja tõrke­kind­late ar­hi­tek­tuu­ride puhul.

Tänu oma suurele tõ­hu­su­sele suudab HAProxy töödelda tuhandeid päringuid sekundis, ilma et see koormaks liigselt süsteemi ressursse. Tarkvara toetab mit­me­su­gu­seid koormuse jaotamise meetodeid, nagu ring­mee­tod (round robin), vähima ühenduste arvu meetod ja lähte-IP-aadressi räsimine. Samuti pakub see selliseid funkt­sioone nagu SSL-lõ­pe­ta­mine, töö­kor­ras­oleku kontroll ja püsivad seansid, et and­me­liik­lust op­ti­maal­selt juhtida. Veel üks tugev külg on võime suunata liiklust edasi kindlate reeglite või päiseinfo alusel.

HAProxy’t ka­su­ta­takse paljudes suurtes et­te­võ­te­tes ja pil­ve­kesk­kon­da­des. Kon­fi­gu­ree­ri­mine toimub lihtsa, kuid paindliku kon­fi­gu­rat­sioo­ni­faili abil, mis võimaldab seda oma va­ja­dus­tele vastavalt ük­sik­as­ja­li­kult kohandada.

Kuidas pai­gal­dada HAProxy Ubuntu 22.04-le samm-sammult

1. samm: Süsteemi uuen­da­mine

Enne pai­gal­da­mise alus­ta­mist veenduge, et teie Linuxi dist­ri­but­sioon on ajakohane. See tagab, et kõik paketid on uusimad ja või­ma­li­kud tur­va­au­gud on kõr­val­da­tud. Selleks avage terminal ja käivitage järgmised käsud:

sudo apt update && sudo apt upgrade -y
bash

See käskude jada uuendab esmalt pa­ke­ti­loendi, et teha kindlaks pai­gal­da­tud tarkvara uusimad ver­sioo­nid. Seejärel uuen­da­takse kõik ole­mas­ole­vad paketid uusi­ma­tele kät­te­saa­da­va­tele ver­sioo­ni­dele. Pa­ra­mee­ter -y tagab, et kõik uuendused kin­ni­ta­takse au­to­maat­selt.

2. samm: HAProxy pai­gal­da­mine

Pärast süsteemi uuen­da­mist saate HAProxy pai­gal­dada järgmise käsuga:

sudo apt install haproxy -y
bash

See käsk laadib HAProxy alla Ubuntu amet­li­kest pakettide al­li­ka­test ja installib rakenduse. Kuna HAProxy on kerge programm, kulub ins­tal­li­mine ta­va­li­selt vähe aega. Kui ins­tal­li­mine on lõppenud, saate kont­rol­lida, kas HAProxy on edukalt ins­tal­li­tud, käi­vi­ta­des järgmise käsu:

haproxy -v
bash

Väljund peaks näitama HAProxy pai­gal­da­tud versiooni.

Image: Screenshot of the current HAProxy version in the terminal
After you have executed the command, the currently installed version of HAProxy will be displayed.

3. samm: HAProxy teenuse ak­ti­vee­ri­mine ja käi­vi­ta­mine

Pärast pai­gal­da­mist tuleb veenduda, et HAProxy teenus töötab. Esmalt käivita HAProxy ad­mi­nist­raa­tori õigustega järgmise käsuga:

sudo systemctl start haproxy
bash

Kasuta seda käsku, et kont­rol­lida, kas teenus on edukalt käi­vi­ta­tud:

sudo systemctl status haproxy
bash

Kui HAProxy töötab, peaks väljund olema umbes selline:

Image: Screenshot of the current HAProxy status in the terminal
You can see from the ‘active (running)’ status in the terminal output that HAProxy is working without any problems.

Et tagada HAProxy au­to­maatne käi­vi­tu­mine ka pärast süsteemi taas­käi­vi­ta­mist, aktiveeri teenus järgmise käsuga:

sudo systemctl enable haproxy
bash

4. samm: HAProxy sea­dis­ta­mine

HAProxy sea­dis­ta­takse kon­fi­gu­rat­sioo­ni­faili /etc/haproxy/haproxy.cfg kaudu. Enne muu­da­tuste tegemist on soo­vi­ta­tav teha algfai­list va­ru­koo­pia:

sudo cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.backup
bash
Note

Algse faili koopia te­ge­mi­sega tagate, et saate igal ajal taastada töö­kõlb­liku seisundi. Sel viisil on muu­da­tuste tegemine seotud väikese riskiga.

Algse faili muut­miseks avage see mõne sobiva teks­ti­re­dak­toriga, näiteks nano või Vim. Meie näites kasutame nano’t:

sudo nano /etc/haproxy/haproxy.cfg
bash

Lihtne koormuse jaotamise kon­fi­gu­rat­sioon võiks välja näha järgmine:

frontend http_front
	bind *:80
	default_backend web_servers
backend web_servers
	balance roundrobin
	server web1 192.168.1.10:80 check
	server web2 192.168.1.11:80 check

Näite puhul jao­ta­takse porti 80 saabuv HTTP- liiklus kahe ta­ga­poolse serveri („web1” ja „web2”) vahel. Koormus jao­ta­takse ring­mee­to­dil, nii et päringud suu­na­takse ser­ve­ri­tele va­hel­du­misi.

5. samm: Käivita HAProxy uuesti ja testi seda

Pärast kon­fi­gu­rat­siooni muutmist tuleb HAProxy uuesti käivitada, et muu­da­tu­sed jõus­tuk­sid. Selleks tuleb ter­mi­na­lis sisestada järgmine käsk:

sudo systemctl restart haproxy
bash

Kui tekivad vead, saate allpool toodud käsu abil kont­rol­lida, kas HAProxy kon­fi­gu­rat­sioo­ni­fai­lis on sün­tak­si­vigu:

haproxy -c -f /etc/haproxy/haproxy.cfg
bash

Õige kon­fi­gu­rat­siooni kinnitab väljund Configuration file is valid. Nüüd saate kont­rol­lida, kas HAProxy töötab soovitud viisil, si­ses­ta­des brau­se­risse oma serveri avaliku IP-aadressi või do­mee­ninime.

Go to Main Menu