Jak nainstalovat HAProxy na Debian 12 krok za krokem
HAProxy je výkonný open-source software, který umožňuje vyvažování zatížení a konfiguraci proxy pro aplikace založené na protokolech TCP a HTTP. Lze jej nainstalovat na Debian 12 v několika málo krocích a často se používá ve vysoce dostupných systémech k efektivnímu rozložení požadavků, čímž se zlepšuje stabilita a výkon aplikací.
Co je HAProxy?
HAProxy (High Availability Proxy) je vysoce výkonný a spolehlivý load balancer a reverzní proxy, který se používá k distribuci síťového a aplikačního provozu. Aplikace podporuje jak vrstvu 4 (transportní vrstva, např. TCP), tak vrstvu 7 (aplikační vrstva, např. HTTP) modelu OSI, pokud jde o vyvažování zátěže. Díky nízké latenci, vysoké účinnosti a komplexním možnostem konfigurace je HAProxy vhodný pro společnosti všech velikostí.
Společnosti a vývojáři používají HAProxy k vyvažování zátěže mezi více backendovými servery, zachycování výpadků serverů a zlepšování celkového výkonu aplikací. Tento software hraje ústřední roli v mnoha webových infrastrukturách, zejména v aplikacích s vysokou dostupností a škálovatelností. Mezi jeho hlavní funkce patří ukončování SSL/TLS, kontroly stavu backendových serverů, omezení rychlosti a mechanismy ochrany proti DDoS útokům.
Jak nainstalovat HAProxy na Debian krok za krokem
Krok 1: Aktualizujte systém
Před instalací HAProxy byste měli aktualizovat svou distribuci Linuxu. Tím zajistíte, že všechny balíčky budou aktuální a instalace proběhne hladce.
Následující příkaz aktualizuje seznamy balíčků a nainstaluje všechny dostupné aktualizace pro Debian 12:
sudo apt update && sudo apt upgrade -ybashKrok 2: Nainstalujte HAProxy
Debian 12 zahrnuje HAProxy do svých oficiálních zdrojů balíčků, takže instalace je snadná pomocí vestavěného správce balíčků apt.
sudo apt install haproxy -ybashTento příkaz stáhne a nainstaluje HAProxy se všemi požadovanými závislostmi.
Krok 3: Zkontrolujte verzi HAProxy
Po instalaci byste měli zkontrolovat, zda byl HAProxy nainstalován úspěšně. To můžete provést tak, že zjistíte nainstalovanou verzi HAProxy:
haproxy -vbashVýstup by měl vypadat přibližně takto:

Tím se zajistí, že HAProxy byl nainstalován správně.
Krok 4: Povolte HAProxy jako službu
Aby se HAProxy spouštěl automaticky při startu systému a běžel trvale, musí být služba povolena a spuštěna.
sudo systemctl enable haproxy
sudo systemctl start haproxybashNakonec lze pomocí následujícího příkazu zkontrolovat, zda služba běží úspěšně:
sudo systemctl status haproxybashPokud HAProxy běží správně, měl by se zobrazit aktivní (běžící) výstup, který vypadá přibližně takto:

Krok 5: Základní konfigurace HAProxy
Konfigurační soubor HAProxy se nachází v /etc/haproxy/haproxy.cfg. Před provedením jakýchkoli změn je vhodné vytvořit záložní kopii, na kterou se můžete spolehnout v případě chyb:
sudo cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bakbashNyní můžete soubor upravit v editoru podle svého výběru (například Vim nebo nano):
sudo nano /etc/haproxy/haproxy.cfgbashJednoduchá konfigurace HAProxy může vypadat takto:
global
log /dev/log local0
log /dev/log local1 notice
chroot /var/lib/haproxy
stats socket /run/haproxy/admin.sock mode 660 level admin
stats timeout 30s
user haproxy
group haproxy
daemon
defaults
log global
option httplog
option dontlognull
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
frontend http_front
bind *:80
default_backend web_servers
backend web_servers
balance roundrobin
server server1 192.168.1.10:80 check
server server2 192.168.1.11:80 checktxtTato konfigurace rozděluje HTTP požadavky mezi dva webové servery způsobem round-robin. Je rozdělena do několika sekcí. Nejprve je zde globální sekce, která definuje základní nastavení pro HAProxy. Tato sekce například určuje uživatelský účet, pod kterým HAProxy běží, počet povolených souběžných připojení a místo, kde jsou uloženy protokoly. Lze také definovat adresář chroot, aby HAProxy běželo v omezeném prostředí a tím se zvýšila bezpečnost.
Za globálními nastaveními následuje sekce defaults, kde jsou definovány výchozí hodnoty pro všechny následující konfigurace. Tato sekce například určuje, že HAProxy pracuje v režimu HTTP a je povoleno protokolování HTTP. Jsou zde také definovány různé časové limity.
Ostatní části konfiguračního souboru, například frontend a backend, řídí samotný datový provoz. Část frontend určuje, na kterých portech HAProxy přijímá požadavky a jak jsou tyto požadavky předávány. Část backend pak definuje servery, na které je provoz předáván. Zde lze použít algoritmy pro vyrovnávání zátěže.
Po úpravách je třeba soubor uložit a restartovat HAProxy:
sudo systemctl restart haproxybashInstalace HAProxy na Debian 12 je nyní dokončena. Konfiguraci lze kdykoli upravit změnou konfiguračního souboru.