HAProxy (High Availability Proxy) je populárny softvér, ktorý možno použiť ako reverzný proxy server a vyrovnávač zaťaženia. Dá sa ľahko nainštalovať na Ubuntu 22.04 len v niekoľkých krokoch.

Čo je HAProxy?

HAProxy je výkonný open-source softvér, ktorý možno použiť ako vyrovnávač zaťaženia alebo reverzný proxy server. Často sa používa na distribúciu incidentov dátového prevádzky na viaceré servery, čím sa zlepšuje dostupnosť a výkon webových aplikácií. HAProxy je osvedčené riešenie, najmä v vysoko škálovateľných a odolných architektúrach.

Vďaka svojej vysokej efektivite dokáže HAProxy spracovať tisíce požiadaviek za sekundu bez toho, aby výrazne zaťažoval systémové zdroje. Tento softvér podporuje rôzne metódy vyrovnávania zaťaženia, ako napríklad round robin, least connection a source IP hashing. Ponúka tiež funkcie ako SSL terminácia, kontroly stavu a sticky sessions, ktoré slúžia na optimálnu kontrolu dátového toku. Ďalšou silnou stránkou je schopnosť presmerovať prevádzku na základe špecifických pravidiel alebo informácií v hlavičke.

HAProxy sa používa v mnohých veľkých spoločnostiach a cloudových prostrediach. Konfigurácia sa vykonáva prostredníctvom jednoduchého, ale flexibilného konfiguračného súboru, ktorý umožňuje podrobné prispôsobenie vašim potrebám.

Ako nainštalovať HAProxy na Ubuntu 22.04 krok za krokom

Krok 1: Aktualizujte systém

Pred začatím inštalácie by ste sa mali uistiť, že vaša distribúcia Linuxu je aktuálna. Tým sa zabezpečí, že všetky balíky sú aktuálne a že potenciálne bezpečnostné chyby boli odstránené. Na to otvorte terminál a vykonajte nasledujúce príkazy:

sudo apt update && sudo apt upgrade -y
bash

Táto sekvencia príkazov najskôr aktualizuje zoznam balíkov, aby určila najnovšie verzie nainštalovaného softvéru. Všetky existujúce balíky sa potom aktualizujú na najnovšie dostupné verzie. Parameter -y zabezpečuje, že všetky aktualizácie sa automaticky potvrdia.

Krok 2: Inštalácia HAProxy

Po aktualizácii systému môžete nainštalovať HAProxy pomocou nasledujúceho príkazu:

sudo apt install haproxy -y
bash

Tento príkaz stiahne HAProxy z oficiálnych zdrojov balíkov Ubuntu a nainštaluje aplikáciu. Inštalácia je zvyčajne rýchla, pretože HAProxy je ľahký program. Po dokončení inštalácie môžete overiť, či bol HAProxy úspešne nainštalovaný, spustením nasledujúceho príkazu:

haproxy -v
bash

Výstup by mal zobrazovať nainštalovanú verziu HAProxy.

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

Krok 3: Aktivujte a spustite službu HAProxy

Po inštalácii sa musíte uistiť, že služba HAProxy beží. Najskôr spustite HAProxy ako správca pomocou nasledujúceho príkazu:

sudo systemctl start haproxy
bash

Tento príkaz použite na kontrolu, či bola služba úspešne spustená:

sudo systemctl status haproxy
bash

Ak je HAProxy spustený, výstup by mal vyzerať približne takto:

Obrázok: 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.

Aby ste zaistili, že HAProxy sa po reštarte spustí automaticky, aktivujte službu pomocou:

sudo systemctl enable haproxy
bash

Krok 4: Konfigurácia HAProxy

HAProxy sa konfiguruje prostredníctvom konfiguračného súboru /etc/haproxy/haproxy.cfg. Pred vykonaním akýchkoľvek zmien je dobré vytvoriť zálohu pôvodného súboru:

sudo cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.backup
bash
Poznámka

Kopírovaním pôvodného súboru si zabezpečíte, že sa kedykoľvek môžete vrátiť do funkčného stavu. Takýmto spôsobom je možné vykonávať zmeny s nízkym rizikom.

Ak chcete upraviť pôvodný súbor, otvorte ho v textovom editore podľa vlastného výberu, napríklad nano alebo Vim. V našom príklade použijeme nano:

sudo nano /etc/haproxy/haproxy.cfg
bash

Jednoduchá konfigurácia vyvažovania zaťaženia by mohla vyzerať takto:

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

V príklade vyrovnávača zaťaženia je prichádzajúci HTTP prevádzka na porte 80 distribuovaná na dva backendové servery („web1“ a „web2“). Zaťaženie je distribuované v procese round-robin, takže požiadavky sú striedavo smerované na servery.

Krok 5: Reštartujte a otestujte HAProxy

Po zmene konfigurácie je potrebné reštartovať HAProxy, aby sa zmeny uplatnili. To sa vykoná pomocou nasledujúceho príkazu v termináli:

sudo systemctl restart haproxy
bash

Ak sa vyskytnú chyby, môžete skontrolovať konfiguračný súbor HAProxy na syntaktické chyby pomocou nasledujúceho príkazu:

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

Správna konfigurácia je potvrdená výstupom Configuration file is valid. Teraz môžete otestovať, či HAProxy funguje podľa očakávaní, zadávaním verejnej IP adresy alebo doménového mena vášho servera do prehliadača.

Prejsť na hlavné menu