GNU/Linux >> Znalost Linux >  >> FreeBSD

Jak nainstalovat HAProxy na FreeBSD

HAProxy, jak název napovídá, je proxy server a load balancer pro zajištění vysoké dostupnosti. V tomto článku nejprve ukážu, jak nainstalovat HAProxy ve FreeBSD. Dále se nastavíme tak, aby fungoval jako reverzní proxy.

Instalace

Ve FreeBSD rád sestavuji a instaluji svůj software ze stromu portů, takže spusťte jako root:

# cd /usr/ports/net/haproxy
# make install clean

Věnujte pozornost obrazovce, kde se zobrazí dialogové okno s možnostmi (většinou ze závislostí). Po instalaci povolte HAProxy v /etc/rc.conf a pokračujte další částí:

# /usr/local/etc/rc.d/haproxy enable
haproxy enabled in /etc/rc.conf

Konfigurace

Než budeme pokračovat v úpravách konfiguračního souboru, dovolte mi vysvětlit scénář:

Nejprve máme k dispozici pouze jednu veřejnou IP. Za druhé, máme několik služeb, které chceme vystavit na internetu, řekněme aplikaci (webapp) a naše webové stránky. Oba běží na svých vlastních serverech. Konečně máme třetí náhradní server, kam jsme již nainstalovali HAProxy v předchozí sekci a tento bude vystaven na internetu.

Uživatel nasměruje svůj prohlížeč na http://haproxy/website nebo http://haproxy/app a haproxy odešle dotaz na správný server a vrátí výsledky do prohlížeče.

                                      ________         /------- [server A]
[ client browser] ----->   | haproxy  |-----+
                                    +----------+        \--------[server B]

Každopádně, wikipedie lépe popíše, jak funguje reverzní proxy.

Přidejte následující části do /usr/local/etc/haproxy.conf. Chcete-li spustit globální výchozí hodnoty, jsou v pořádku:

frontend http-in
    bind *:80
    option forwardfor
    use_backend uno if { path_beg /app}
    use_backend dos if { path_beg /www }

backend uno
    mode http
    server nodea ipAp.or.fqdn:port

backend dos
       mode http
       server nodeb ipB.or.fqdn:port

Pokud jako já nemáte příklad haproxy.conf, přidejte tuto sekci na začátek souboru:

global
    daemon
    maxconn 4096

defaults
   log global
   mode http
   timeout connect 5s
   timeout client 10s
   timeout server 10s

S touto minimální konfigurací můžete zkontrolovat, zda je vše v pořádku, a spustit službu:

Pro testovací účely jsem udělal haproxy, abych mohl získat věci z mého vlastního počítače:


Mám Apache, kam ukládám nějaké programy, které bych mohl potřebovat, když jsem na cizím PC. Kouzelné slovo je úplná adresa URL některých z těchto programů.

A co nějaké skutečné použití HAProxy?

Toto je minimální příklad, mimochodem nepříliš užitečný. Důrazně doporučuji přečíst si alespoň dva dokumenty HAProxy:

  • Příručka pro začátečníky a
  • Konfigurační příručka

A váš haproxy.conf soubor by byl tak komplikovaný nebo jednoduchý, jak je potřeba.


FreeBSD
  1. Jak nainstalovat HAProxy na Debian 11

  2. Jak nainstalovat Gitlab na FreeBSD

  3. Jak nainstalovat Gnome na FreeBSD 13

  1. Jak nainstalovat Cinnamon ve FreeBSD 13

  2. Jak nainstalovat XFCE ve FreeBSD 13

  3. Jak nainstalovat mediawiki na FreeBSD

  1. Jak nainstalovat Webmin na FreeBSD

  2. Jak nainstalovat HAProxy na AlmaLinux 8

  3. Jak nainstalovat HAProxy na Debian 9