Ubuntu

Ako nainštalovať a nakonfigurovať HAproxy na Ubuntu 20.04 LTS

Ako nainštalovať a nakonfigurovať HAproxy na Ubuntu 20.04 LTS
HAproxy je open-source a ľahký balík, ktorý ponúka vysokú dostupnosť a vyvažovanie záťaže pre programy založené na TCP a HTTP. Rozdeľuje zaťaženie medzi webový a aplikačný server. HAproxy je k dispozícii pre takmer všetky distribúcie Linuxu. Jedná sa o široko používaný nástroj na vyrovnávanie zaťaženia, ktorý je obľúbený pre svoju efektívnosť, spoľahlivosť a malú pamäť a stopu procesora. V tomto príspevku vysvetlíme, ako nainštalovať a nakonfigurovať HAproxy v systéme Ubuntu.

Máme tri stroje. Nainštalujeme HAproxy na jeden server a webové servery Apache na dva servery. Náš server HAproxy bude potom slúžiť ako nástroj na vyrovnávanie zaťaženia a bude distribuovať zaťaženie medzi webové servery Apache.

Poznámka: Postup a príkazy uvedené v tomto príspevku boli testované Ubuntu 20.04 LTS (Focal Fossa). Rovnaký postup platí aj pre distribúcie Debian a Mint.

Podrobnosti o sieti

Budeme používať tri servery Ubuntu; všetky v rovnakej sieti. Podrobnosti o našich serveroch sú tieto:

Názov hostiteľa: HAproxy, IP adresa: 192.168.72.157 (frontendový server)
Názov hostiteľa: web-server1, IP adresa: 192.168.72.158 (servery typu backend)
Názov hostiteľa: web-server2, IP adresa: 192.168.72.159 (servery typu backend)

Poznámka: Na všetkých serveroch musíte mať oprávnenie sudo.

Jeden počítač nakonfigurujeme ako nástroj na vyrovnávanie zaťaženia a ďalšie dva ako webové servery. Server HAproxy bude náš front-end server, ktorý bude prijímať požiadavky od používateľov a preposielať ich na dva webové servery. Webové servery budú našimi servermi typu backend, ktoré budú prijímať tieto preposlané požiadavky.

Takto vyzerá naše nastavenie:

Nastavenie webových serverov - servery typu backend

V tejto časti nastavíme dva webové servery (web-server1 a web-server2) ako naše backendové servery.

Na webovom serveri1 (192.168.72.158)

Na svojom webovom serveri vykonajte nasledujúce kroky. Nezabudnite nahradiť názvy hostiteľov a adresy IP príslušnými adresami IP a názvami hostiteľov svojich webových serverov.

1. Nakonfigurujte súbor hostiteľov

On web-server1, upraviť / etc / hostitelia spis:

$ sudo nano / etc / hosts

Potom pridajte položku názvu hostiteľa pre HAproxy server takto:

hostname-of-HAproxy IP-address-of-HAproxy

V našom scenári by to bolo:

HAproxy 192.168.72.157

2. Nastavte webový server Apache

Teraz nainštalujte webový server Apache pomocou nižšie uvedeného príkazu v Termináli. Môžete tiež navštíviť náš príspevok na Ako nainštalovať webový server Apache na systéme Linux.

$ sudo apt nainštalovať apache2

Potom povoľte a spustite službu Apache pomocou nižšie uvedených príkazov v Termináli:

$ sudo systemctl povoliť apache2
$ sudo systemctl start apache2

Vytvorte indexový súbor pre web-server1 pomocou nižšie uvedeného príkazu v Termináli:

$ echo "

Ahoj! Toto je webový server 1: 192.168.72.158

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

Ak je vo vašom systéme spustená brána firewall, budete musieť cez ňu povoliť prenos Apache:

$ sudo ufw povoliť 80 / tcp

Potom znova načítajte konfigurácie brány firewall:

$ ufw znovu načítať

Teraz skúste prejsť na web vo svojom webovom prehliadači zadaním http: // za ktorým nasleduje buď IP adresa alebo názov hostiteľa vášho webového servera.

http: // názov hostiteľa alebo IP adresa

Alternatívne môžete webovú stránku otestovať aj pomocou príkazu curl.

$ zvlnenie

Na webovom serveri-2 192.168.72.159)

Na svojom druhom webovom serveri vykonajte kroky uvedené nižšie. Nezabudnite nahradiť názvy hostiteľov a adresy IP príslušnými adresami IP a názvami hostiteľov svojich webových serverov.

1. Nakonfigurujte súbor hostiteľov

V web-server2, upraviť / etc / hostitelia spis:

$ sudo nano / etc / hosts

Potom pridajte položku názvu hostiteľa pre HAproxy server takto:

HAproxy 192.168.72.157

2. Nainštalujte webový server Apache

Teraz nainštalujte webový server Apache pomocou nižšie uvedeného príkazu v Termináli.

$ sudo apt nainštalovať apache2

Potom povoľte a spustite službu Apache pomocou nižšie uvedených príkazov v Termináli:

$ sudo systemctl povoliť apache2
$ sudo systemctl start apache2

Vytvorte indexový súbor pre web-server2 pomocou nižšie uvedeného príkazu v Termináli:

$ echo "

Ahoj! Toto je webserver2: 192.168.72.159

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

Povoliť Apache vo firewalle:

$ sudo ufw povoliť 80 / tcp

a potom znova načítajte konfigurácie brány firewall:

$ ufw znovu načítať

Teraz skúste prejsť na web vo svojom webovom prehliadači zadaním http: // za ktorým nasleduje buď IP adresa alebo názov hostiteľa.

http: // názov hostiteľa alebo IP adresa

Alternatívne môžete na otestovanie webovej stránky použiť príkaz curl.

$ zvlnenie

Teraz sú naše webové servery Apache pripravené.

Nastavenie servera rozhrania HAproxy load balancer - frontend

V tejto časti nastavíme HAproxy load balancer pre našu webové servery. Tento server HAproxy bude fungovať ako frontendový server a prijíma prichádzajúce požiadavky od klientov.

Na HAproxy server (192.168.72.157), vykonajte nasledujúce kroky na nastavenie nástroja na vyrovnávanie zaťaženia.

1. Nakonfigurujte súbor hostiteľov

Upravte / etc / hostitelia súbor pomocou nižšie uvedeného príkazu v Termináli:

$ sudo nano / etc / hosts

Pridajte pre obidva nasledujúce položky názvu hostiteľa Apache webové servery spolu s vlastným menom hostiteľa:

192.168.72.157 HAproxy
192.168.72.158 webový server1
192.168.72.159 web-server2

Teraz uložte a zatvorte / etc / hostitelia spis.

Inštalácia nástroja na vyrovnávanie zaťaženia HAproxy

Teraz v tomto kroku budeme inštalovať HAproxy na jeden z našich serverov Ubuntu (192.168.72.157). Ak to chcete urobiť, aktualizujte apt pomocou nasledujúceho príkazu v Termináli:

$ sudo apt-get aktualizácia

Potom aktualizujte balíčky pomocou nasledujúceho príkazu:

$ sudo apt-get aktualizácia

Teraz nainštalujte HAproxy pomocou nasledujúceho príkazu v Termináli:

$ sudo sudo apt nainštalovať haproxy

Po dokončení inštalácie servera HAproxy ju môžete potvrdiť pomocou nasledujúceho príkazu v Termináli:

$ haproxy -v

Ukáže vám nainštalovanú verziu HAproxy vo vašom systéme, ktorá overí, že HAproxy bol úspešne nainštalovaný.

Konfigurácia HAproxy ako nástroja na vyrovnávanie zaťaženia

V nasledujúcej časti nakonfigurujeme HAproxy ako nástroj na vyrovnávanie zaťaženia. Urobiť tak, upravte súbor / etc / haproxy / haproxy.porov spis:

$ sudo nano / etc / haproxy / haproxy.porov

Pripojte nasledujúce riadky k haproxy.cfg súbor nahradzujúci IP adresy vašimi vlastnými IP adresami.

The frontend web-frontend vo vyššie uvedených konfiguračných riadkoch hovorí HAproxy, aby počúvalo prichádzajúce požiadavky na porte 80 z 192.168.72.157 a potom ich preposlať na servery typu back-end nakonfigurované pod backend webový backend. Pri konfigurácii nahraďte adresy IP príslušnými adresami IP vašich webových serverov.

Konfigurácia monitorovania HAproxy

S monitorovaním HAproxy môžete zobraziť veľa informácií vrátane stavu servera, prenesených údajov, doby prevádzky, rýchlosti relácie atď. Ak chcete nakonfigurovať monitorovanie HAproxy, pripojte nasledujúce riadky v konfiguračnom súbore umiestnenom na / etc / haproxy / haproxy.porov:

počúvať štatistiky
viazať 192.168.72.157: 8080
režim http
možnosť forwardfor
možnosť httpclose
štatistiky povoliť
štatistiky show-legendy
obnovenie štatistík 5 s
stats uri / stats
stats realm Haproxy \ Statistics
stats auth kbuzdar: kbuzdar? Prihlásenie používateľa a heslo pre monitorovanie
štatistika admin ak je PRAVDA
default_backend web-backend

Vyššie uvedená konfigurácia umožňuje HAproxy -štatistikystránka pomocou štatistiky smernice a zabezpečuje ju pomocou http základné overenie totožnosti pomocou používateľského mena a hesla definovaného serverom stats auth smernice.

Po dokončení konfigurácií uložte a zavrite haproxy.cfg súbor.

Teraz overte konfiguračný súbor pomocou nižšie uvedeného príkazu v Termináli:

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

Nasledujúci výstup ukazuje, že konfigurácie sú správne.

Teraz, aby ste použili konfigurácie, reštartujte službu HAproxy:

$ sudo systemctl reštartujte haproxy.služby

Zastaví sa a potom sa spustí služba HAproxy.

Na kontrolu stavu služby HAproxy by mal príkaz:

$ sudo systemctl status haproxy.služby

The aktívny (beh) stav v nasledujúcom výstupe ukazuje, že server HAproxy je povolený a funguje dobre.

Tu je niekoľko ďalších príkazov na správu servera HAproxy:

Na spustenie HAproxy servera bude príkaz:

$ sudo systemctl spusti haproxy.služby

Na zastavenie servera HAproxy bude príkaz:

$ sudo systemctl stop haproxy.služby

V prípade, že chcete dočasne vypnúť server HAproxy, bude to príkaz:

$ sudo systemctl zakáže haproxy.služby

Ak chcete znova povoliť server HAproxy, bude to príkaz:

$ sudo systemctl povoliť haproxy.služby

Vyskúšajte HAproxy

Pred testovaním nastavenia HAproxy sa uistite, či máte pripojenie k webovým serverom. Z vášho servera HAproxy vykonajte test ping na oba webové servery buď podľa ich adries IP, alebo názvov hostiteľov.

$ ping názov hostiteľa alebo adresa IP

Nasledujúci výstup ukazuje, že server HAproxy sa môže dostať na oba webové servery.

Vyskúšajte HA Proxy pomocou webového prehliadača

Teraz na serveri HAproxy otvorte ľubovoľný webový prehliadač a napíšte http: // nasleduje IP adresa HAproxy servera, ktorá je v našom prípade 192.168.72.157.

http: // 192.168.72.157

Server HAproxy alternatívne odošle požiadavku na oba webové servery spôsobom „každý s každým“. Môžete to vyskúšať opakovaným načítaním webovej stránky.

Toto je odpoveď, ktorú sme dostali, keď sme navštívili stránku http: // 192.168.72.157 prvýkrát:

Toto je odpoveď, ktorú sme dostali, keď sme znovu načítali webovú stránku:

Môžete tiež použiť názov hostiteľa namiesto adresy IP servera HAproxy.

Vyskúšajte HA Proxy pomocou zvlnenia

Na otestovanie nastavenia HAproxy môžete tiež použiť príkaz curl v systéme Linux. Otvorte terminál a napíšte zvlnenie nasleduje IP adresa alebo názov hostiteľa servera HAproxy.

zvlnenie 192 dolárov.168.72.157

alebo

$ zvlnenie HAproxy

Spustite príkaz curl niekoľkokrát a uvidíte, ako sa odpoveď bude striedavo pohybovať medzi oboma webovými servermi.

Namiesto opakovaného spustenia príkazov môžete tiež spustiť nasledujúci jednoriadkový skript, ktorý otestuje server HAproxy:

$, kým je to pravda; urob zvlnenie 192.168.72.157; spať 1; hotový

Testovanie monitorovania HAproxy

Ak chcete prejsť na stránku monitorovania HAproxy, napíšte http: // nasleduje IP adresa / názov hostiteľa servera HAproxy a port 8080 / stats:

http: // 192.168.72.157: 8080 / štatistiky

alebo

http: // HAproxy: 8080 / stats

Zobrazí sa nasledujúce overovacie pole. Zadajte užívateľské meno a heslo ste nakonfigurovali skôr v konfiguráciách a potom stlačte Ok.

Toto je štatistická správa pre náš server HAproxy.

Tam máte inštaláciu a konfiguráciu nástroja HAproxy load balancer v systéme Linux. Práve sme hovorili o základnom nastavení a konfigurácii HAproxy ako nástroja na vyrovnávanie zaťaženia pre webové servery Apache. Pozreli sme sa tiež na niektoré príkazy na správu servera HAproxy. Nakoniec sme vyváženie záťaže otestovali cez prehliadač a príkaz curl. Ďalšie informácie nájdete v oficiálnej dokumentácii HAproxy

Hry Najlepšie hry Oculus App Lab
Najlepšie hry Oculus App Lab
Ak ste vlastníkom náhlavnej súpravy Oculus, musíte byť informovaní o bočnom nakladaní. Sideloading je proces inštalácie neuloženého obsahu do náhlavne...
Hry Top 10 hier, ktoré sa dajú hrať na Ubuntu
Top 10 hier, ktoré sa dajú hrať na Ubuntu
Platforma Windows je jednou z dominujúcich platforiem pre hry kvôli obrovskému percentu hier, ktoré sa dnes vyvíjajú na natívnu podporu systému Window...
Hry 5 najlepších arkádových hier pre Linux
5 najlepších arkádových hier pre Linux
V dnešnej dobe sú počítače vážne stroje používané na hranie hier. Ak nemôžete dosiahnuť nové najvyššie skóre, budete vedieť, čo tým myslím. V tomto pr...