Własny Serwer

Własny serwer Debian/Ubuntu – cz.22: HAProxy

Ostatnia aktualizacja: 16 października 2025, 12:39



 
W kolejnym tutorialu z cyklu Własny Serwer postanowiłem zainstalować i przetestować HAProxy.

HAProxy – akronim od High Availability Proxy, to popularny open-source’owy moduł równoważenia obciążenia i serwer proxy dla aplikacji opartych na protokołach TCP i HTTP. Jest szczególnie przydatny w przypadku witryn o dużym ruchu i często jest domyślnie wdrażany na platformach chmurowych.

Do celów tej instalacji użyłem HAProxy 3.0.11, który zainstalowałem na serwerze działającym na Debianie 12.

Instalacja

apt update
apt install haproxy

Konfiguracja

Podstawowa konfiguracja jest dość prosta i zawarta jest w jednym pliku tekstowym.

W pierwszej kolejności należy utworzyć kopię zapasową oryginalnej konfiguracji:
cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bak

Następnie można zapisać własną konfigurację, np.:
nano /etc/haproxy/haproxy.cfg

global
log /dev/log local0
log /dev/log local1 notice
chroot /var/lib/haproxy
stats socket /run/haproxy/admin.sock mode 660 level admin expose-fd listeners
stats timeout 30s
user haproxy
group haproxy
daemon

defaults
log global
mode http
option httplog
option dontlognull
timeout connect 5000
timeout client 50000
timeout server 50000
errorfile 400 /etc/haproxy/errors/400.http
errorfile 403 /etc/haproxy/errors/403.http
errorfile 408 /etc/haproxy/errors/408.http
errorfile 500 /etc/haproxy/errors/500.http
errorfile 502 /etc/haproxy/errors/502.http
errorfile 503 /etc/haproxy/errors/503.http
errorfile 504 /etc/haproxy/errors/504.http

frontend http_front
bind *:80
stats uri /haproxy?stats
default_backend http_back

backend http_back
balance roundrobin
option httpchk
server server1 192.168.0.11:80 check
server server2 192.168.0.12:80 check

Gdzie:
– 192.168.1.11 : adres IP pierwszego serwera backend Apache
– 192.168.1.12 : adres IP drugiego serwera backend Apache
– balance_roundrobin : Równomiernie rozdziela żądania między serwery
– option_httpchk : Włącza sprawdzanie kondycji protokołu HTTP

Po zapisaniu nowej konfiguracji zrestartuj haproxy:
systemctl restart haproxy

i sprawdź czy działa poprawnie:
systemctl status haproxy

Więcej informacji o HAProxy uzyskasz wpisując:
man haproxy
haproxy --help

W kolejnym tutorialu skonfigurujemy Nginx jako odwrotne proxy dla Apache.

Click to rate this post!
[Total: 2 Average: 5]

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna jest chroniona przez reCAPTCHA i Google Politykę Prywatności oraz obowiązują Warunki Korzystania z Usługi.

Accessibility Toolbar