GNU/Linux >> Znalost Linux >  >> Debian

Jak nainstalovat a nakonfigurovat HAproxy na Ubuntu 20.04 LTS

HAproxy je lehký open source balíček, který poskytuje vysokou dostupnost a vyrovnávání zátěže pro programy založené na TCP a HTTP. Vyrovnává zatížení mezi webovými a aplikačními servery. HAproxy je k dispozici pro téměř všechny distribuce Linuxu. Je to široce používaný nástroj pro vyrovnávání zátěže oblíbený pro svou efektivitu, spolehlivost a malou paměť a nároky na CPU. V tomto příspěvku vysvětlujeme, jak nainstalovat a nakonfigurovat HAproxy na systému Ubuntu.

Postavili jsme tři stroje. Nainstalujeme HAproxy na jeden server a webové servery Apache na dva servery. Náš server HAproxy pak funguje jako vyvažovač zátěže a rozděluje zátěž mezi webové servery Apache.

Poznámka: Postup a příkazy uvedené v tomto příspěvku byly testovány na Ubuntu 20.04 LTS (Focal Fossa). Stejný postup platí také pro distribuce Debian a Mint.

Podrobnosti o síti

Budeme používat tři servery Ubuntu; všechny ve stejné síti. Podrobnosti o našich serverech jsou následující:

Název hostitele:HAproxy, IP adresa:192.168.72.157 (frontendový server)
Název hostitele:Webový server1, IP adresa:192.168.72.158 (backendový server)
Název hostitele:Webový server2, IP adresa:192.168. (72.159)

Poznámka: Musíte mít oprávnění sudo na všech serverech.

Jeden počítač nakonfigurujeme jako load balancer a další dva jako webové servery. Server HAproxy bude naším front-end serverem, který bude přijímat požadavky uživatelů a přeposílat je na dva webové servery. Webové servery jsou naše backendové servery, které přijímají tyto předávané požadavky.

Naše nastavení vypadá takto:

Nastavte backend servery webových serverů

V této části nastavíme dva webové servery (Webserver1 a Webový server2 ) jako naše backendové servery.

Na webovém serveru1(192.168.72.158)

Na svém webovém serveru proveďte následující kroky. Nezapomeňte nahradit názvy hostitelů a IP adresy odpovídajícími IP adresami a názvy hostitelů vašich webových serverů.

1. Konfigurace souboru hostitelů

Na webovém serveru1, Upravte /etc/hosts Soubor:

$ sudo nano /etc/hosts

Poté přidejte záznam názvu hostitele pro . přidat HAproxy Servery takto:

název-hostitele-HAproxy IP-adresa-HAproxy

V našem scénáři by to bylo:

HAproxy 192.168.72.157

2. Nastavte webový server Apache

Nyní nainstalujte webový server Apache pomocí následujícího příkazu v terminálu. Navštivte také náš příspěvek na téma Jak nainstalovat webový server Apache v systému Linux.

$ sudo vhodné Nainstalujte Apache2

Poté povolte a spusťte službu Apache pomocí následujících příkazů v terminálu:

$ sudo systemctl aktivovat apache2
$ sudo systemctl spustit apache2

Vytvořte soubor indexu pro Webový server1 V terminálu použijte následující příkaz:

$echo”

Dobrý den! Toto je webový server1:192.168.72.158

“ | sudo tee /wo/www/html/index.html

Pokud máte na svém systému spuštěnou bránu firewall, musíte přes ni povolit provoz Apache:

$ sudo ufw povolit 80/tcp

Poté znovu načtěte konfigurace brány firewall:

Znovu načíst $ufw

Nyní zkuste stránku otevřít ve webovém prohlížeči zadáním https:// následuje buď IP adresa vašeho webového serveru, nebo název hostitele.

https:// název hostitele nebo IP adresa

Případně můžete k otestování webové stránky použít příkaz curl.

$lock

Na webovém serveru-2 192.168.72.159)

Proveďte následující kroky na svém druhém webovém serveru. Nezapomeňte nahradit názvy hostitelů a IP adresy odpovídajícími IP adresami a názvy hostitelů vašich webových serverů.

1. Konfigurace souboru hostitelů

V Webový server2 , upravte soubor /etc/hosts Soubor:

$ sudo nano /etc/hosts

Poté přidejte záznam názvu hostitele pro . přidat HAproxy Servery takto:

HAproxy 192.168.72.157

2. Nainstalujte webový server Apache

Nyní nainstalujte webový server Apache pomocí následujícího příkazu v terminálu.

$ sudo vhodné Nainstalujte Apache2

Poté povolte a spusťte službu Apache pomocí následujících příkazů v terminálu:

$ sudo systemctl aktivovat apache2
$ sudo systemctl spustit apache2

Vytvořte soubor indexu pro Webserver2 pomocí následujícího příkazu v Terminálu:

$echo”

Dobrý den! Toto je webový server2:192.168.72.159

“ | sudo tee /wo/www/html/index.html

Povolit Apache ve firewallu:

$ sudo ufw povolit 80/tcp

a poté znovu načtěte konfigurace brány firewall:

Znovu načíst $ufw

Nyní zkuste stránku otevřít ve webovém prohlížeči zadáním https:// následuje buď IP adresa, nebo název hostitele.

https:// název hostitele nebo IP adresa

Případně můžete k otestování webové stránky použít příkaz curl.

$lock

Nyní jsou naše webové servery Apache připraveny.

Nastavení frontend serveru HAproxy Load Balancer

V této sekci jsme nastavili HAproxy load balancer pro naše webové servery . Tento HAproxy server funguje jako frontend server a přijímá příchozí požadavky od klientů.

Na HAproxy Server (192.168.72.157 ), postupujte podle kroků níže a nastavte nástroj pro vyrovnávání zatížení.

1. Konfigurace souboru hostitelů

Upravte soubor /etc/hosts soubor s následujícím příkazem v terminálu:

$ sudo nano /etc/hosts

Přidejte následující položky názvu hostitele pro oba Apache Webový server spolu s vlastním názvem hostitele:

192.168.72.157 HAproxy
192.168.72.158 webový server1
192.168.72.159 webový server2

Nyní uložte a zavřete /etc/hosts soubor.

Nainstalujte HAproxy Load Balancer

V tomto kroku nyní nainstalujeme HAproxy na jeden z našich serverů Ubuntu (192.168.72.157). Chcete-li to provést, aktualizujte apt pomocí následujícího příkazu v terminálu:

$ sudo apt-get aktualizace

Pak aktualizujte balíčky pomocí následujícího příkazu:

$ sudo apt-get upgrade

Nyní nainstalujte HAproxy pomocí následujícího příkazu v terminálu:

$ sudo sudo vhodné nainstalovat happy

Jakmile je instalace HAproxy serveru dokončena, můžete ji potvrdit následujícím příkazem v terminálu:

$ šťastný -v

Zobrazí se vám nainstalovaná verze HAproxy ve vašem systému, což potvrzuje, že HAproxy byla úspěšně nainstalována.

Nakonfigurujte HAproxy jako nástroj pro vyrovnávání zatížení

V následující části nakonfigurujeme HAproxy jako load balancer. Chcete-li to provést, Upravte soubor /etc/haproxy/haproxy.cfg Soubor:

$ sudo Nano >etc/happy/haproxy.cfg

Přidejte do souboru haproxy.cfg následující řádky a nahraďte IP adresy svými vlastními IP adresami.

Frontend Web Frontend ve výše uvedených konfiguračních řádcích má HAproxy naslouchat příchozím požadavkům na portu 80 z 192.168.72.157 a poté je přeposlat na servery typu back-end běžící pod . jsou nakonfigurovány backend Webový backend . Během konfigurace nahraďte IP adresy odpovídajícími IP adresami vašich webových serverů.

Konfigurace monitorování HAproxy

S monitorováním HAproxy můžete zobrazit mnoho informací včetně stavu serveru, přenesených dat, doby provozuschopnosti, rychlosti relace atd. Chcete-li nakonfigurovat monitorování HAproxy, přidejte následující řádky do konfiguračního souboru na adrese /etc/haproxy/haproxy. cfg :

poslouchat statistiky
bind 192.168.72.157:8080
režim http
možnost vpřed
možnost httpzavřít
povolit statistiky
statistiky zobrazit legendy
aktualizace statistik 5s
statistiky /stats
stats realm haproxy stats
statistiky auth kbuzdar:kbuzdar #login uživatel a heslo pro monitorování
admin statistik, pokud je PRAVDA
default_backend webový backend

Výše uvedená konfigurace umožňuje HAproxy "Statistiky Stránka Statistiky a zabezpečte jej pomocí http Základní ověření pomocí uživatelského jména a hesla získaného z ověření statistik Zásady.

Až budete s konfiguracemi hotovi, uložte a zavřete soubor haproxy.cfg.

Nyní zkontrolujte konfigurační soubor pomocí následujícího příkazu v terminálu:

$ happy -C -F /etc/happy/haproxy.cfg

Následující výstup ukazuje, že konfigurace jsou správné.

Nyní, abyste použili konfigurace, restartujte službu HAproxy:

$ sudo systemctl restart haproxy.service

Zastaví a poté spustí službu HAproxy.

Chcete-li zkontrolovat stav služby HAproxy, použijte příkaz:

$ sudo systemctl-status haproxy.service

aktivní (probíhající) stav v následujícím výstupu indikuje, že HAproxy server je povolen a běží správně.

Zde jsou některé další příkazy pro správu serveru HAproxy:

Chcete-li spustit server HAproxy, příkaz je:

$ sudo systemctl spusťte haproxy.service

Chcete-li zastavit server HAproxy, příkaz je:

$ sudo systemctl stop haproxy.service

Pokud chcete dočasně deaktivovat server HAproxy, příkaz je:

$ sudo systemctl zakázat haproxy.service

Chcete-li znovu povolit server HAproxy, použijte příkaz:

$ sudo systemctl povolit haproxy.service

Otestujte HAproxy

Před testováním nastavení HAproxy se ujistěte, že máte připojení k webovým serverům. Ze serveru HAproxy odešlete příkaz ping na oba webové servery pomocí jejich IP adres nebo názvů hostitelů.

$ ring název hostitele nebo IP adresa

Následující výstup ukazuje, že server HAproxy může dosáhnout obou webových serverů.

Otestujte HA proxy pomocí webového prohlížeče

Nyní otevřete libovolný webový prohlížeč na serveru HAproxy a zadejte https:// následovaná IP adresou HAproxy serveru, což je v našem případě 192.168.72.157.

https://192.168.72.157

Server HAproxy alternativně odešle požadavek oběma webovým serverům v kruhové proceduře. Můžete to vyzkoušet tak, že webovou stránku několikrát znovu načtete.

Toto je odpověď, kterou jsme obdrželi, když jsme poprvé viděli https://192.168.72.157:

Toto je odpověď, kterou jsme dostali při opětovném načítání webové stránky:

Místo IP adresy serveru HAproxy můžete také použít název hostitele.

Otestujte proxy server HA pomocí curl

K otestování nastavení HAproxy můžete také použít příkaz curl v systému Linux. Otevřete terminál a zadejte curl následuje IP adresa nebo název hostitele serveru HAproxy.

$ kudrlinky 192.168.72.157

nebo

$ curl HAproxy

Několikrát spusťte příkaz curl a uvidíte, jak se odpověď mezi oběma webovými servery střídá.

Namísto spouštění příkazů vícekrát můžete také spustit následující jednořádkový skript pro testování serveru HAproxy:

$ zatímco pravda; do curl 192.168.72.157; spánek 1; dělal

Testování monitorování HAproxy

Pro přístup na stránku monitorování HAproxy zadejte https:// následuje IP adresa/název hostitele HAproxy serveru a port 8080/statistiky:

https://192.168.72.157:8080/Statistiky

nebo

https://HA-Proxy:8080/Statistics

Zobrazí se následující ověřovací pole. Zadejte uživatelské jméno a heslo dříve nakonfigurované v konfiguracích a poté stiskněte OK .

Toto je statistická zpráva pro náš server HAproxy.

Zde máte instalaci a konfiguraci HAproxy Load Balancer v systému Linux. Právě jsme diskutovali o základním nastavení a konfiguraci HAproxy jako load balanceru pro webové servery Apache. Podívali jsme se také na některé příkazy pro správu serveru HAproxy. Na závěr jsme vyzkoušeli vyvažování zátěže přes prohlížeč a příkaz curl. Další informace naleznete v oficiální dokumentaci HAproxy


Debian

Jak nainstalovat i3 Window Manager na Ubuntu 20.04 nebo Debian 11

  1. Jak používat příkaz jobs v Linuxu

  2. Jak nainstalovat vnStat na Debian 11

  3. Jak nainstalovat Joomla na Debian 10

Jak nainstalovat a používat Mono na Debian 11

  1. Jak nainstalovat doplňky pro hosta VirtualBox do virtuálního počítače Debian 9

  2. Nainstalovat Asterisk na Debian 11 – průvodce krok za krokem?

  3. Nainstalujte prostředí Budgie Desktop Environment na Debian 11 Bullseye

Aby Debian 8 vypadal jako Ubuntu MATE

  1. Jak nainstalovat Apache Guacamole na Debian 11

  2. Jak změnit výchozí správce zobrazení (přepnout na GDM, LightDM, SDDM nebo LXDM) v Debianu, Ubuntu nebo Linux Mintu

  3. Jak nainstalovat Oracle Java 15 na Ubuntu, Debian nebo Linux Mint pomocí úložiště APT PPA