HAProxy stap voor stap installeren op Debian 12
HAProxy is krachtige open-source software die load balancing en proxyconfiguratie mogelijk maakt voor TCP- en HTTP-gebaseerde applicaties. Het kan in slechts enkele stappen op Debian 12 worden geïnstalleerd en wordt vaak gebruikt in systemen met hoge beschikbaarheid om verzoeken efficiënt te verdelen, waardoor de stabiliteit en prestaties van applicaties worden verbeterd.
Wat is HAProxy?
HAProxy (High Availability Proxy) is een krachtige en betrouwbare load balancer en reverse proxy die wordt gebruikt voor het verdelen van netwerk- en applicatieverkeer. De applicatie ondersteunt zowel laag 4 (transportlaag, bijv. TCP) als laag 7 (toepassingslaag, bijv. HTTP) van het OSI-model wat betreft load balancing. Dankzij de lage latentie, hoge efficiëntie en uitgebreide configuratiemogelijkheden is HAProxy geschikt voor bedrijven van elke omvang.
Bedrijven en ontwikkelaars gebruiken HAProxy om de belasting over meerdere backend-servers te verdelen, serverstoringen op te vangen en de algehele prestaties van applicaties te verbeteren. De software speelt een centrale rol in veel webinfrastructuren, met name in hoogbeschikbare en schaalbare applicaties. Tot de belangrijkste functies behoren SSL/TLS-terminatie, statuscontroles van backend-servers, rate limiting en mechanismen voor DDoS-bescherming.
HAProxy stap voor stap installeren op Debian
Stap 1: Werk het systeem bij
Voordat u HAProxy installeert, moet u uw Linux-distributie bijwerken. Zo zorgt u ervoor dat alle pakketten up-to-date zijn en dat de installatie vlekkeloos verloopt.
Met het volgende commando worden de pakketlijsten bijgewerkt en worden alle beschikbare updates voor Debian 12 geïnstalleerd:
sudo apt update && sudo apt upgrade -ybashStap 2: HAProxy installeren
Debian 12 bevat HAProxy in zijn officiële pakketbronnen, dus de installatie is eenvoudig met behulp van de ingebouwde pakketbeheerder apt.
sudo apt install haproxy -ybashMet dit commando wordt HAProxy samen met alle benodigde afhankelijkheden gedownload en geïnstalleerd.
Stap 3: Controleer de versie van HAProxy
Controleer na de installatie of HAProxy correct is geïnstalleerd. Dit kun je doen door de geïnstalleerde versie van HAProxy op te vragen:
haproxy -vbashDe uitvoer zou er ongeveer zo uit moeten zien:

Zo weet je zeker dat HAProxy correct is geïnstalleerd.
Stap 4: HAProxy als service inschakelen
Om HAProxy automatisch te laten starten bij het opstarten van het systeem en continu te laten draaien, moet de service worden ingeschakeld en gestart.
sudo systemctl enable haproxy
sudo systemctl start haproxybashTot slot kun je het volgende commando gebruiken om te controleren of de dienst correct draait:
sudo systemctl status haproxybashAls HAProxy correct werkt, zou je een actieve (lopende) uitvoer moeten zien die er ongeveer zo uitziet:

Stap 5: Basisconfiguratie van HAProxy
Het configuratiebestand van HAProxy bevindt zich in /etc/haproxy/haproxy.cfg. Voordat u wijzigingen aanbrengt, is het raadzaam een back-up te maken, zodat u hierop kunt terugvallen mochten er fouten optreden:
sudo cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bakbashNu kun je het bestand bewerken met een teksteditor naar keuze (zoals Vim of nano):
sudo nano /etc/haproxy/haproxy.cfgbashEen eenvoudige HAProxy-configuratie zou er als volgt uit kunnen zien:
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 checktxtDeze configuratie verdeelt HTTP-verzoeken volgens het round-robin-principe over twee webservers. De configuratie is onderverdeeld in verschillende secties. Allereerst is er de globale sectie, waarin de basisinstellingen voor HAProxy worden gedefinieerd. In deze sectie wordt bijvoorbeeld aangegeven onder welk gebruikersaccount HAProxy draait, hoeveel gelijktijdige verbindingen zijn toegestaan en waar de logbestanden worden opgeslagen. Er kan ook een chroot-map worden gedefinieerd om HAProxy in een beperkte omgeving te laten draaien en zo de beveiliging te verhogen.
Na de algemene instellingen volgt de sectie defaults, waarin de standaardwaarden voor alle volgende configuraties worden gedefinieerd. In deze sectie wordt bijvoorbeeld bepaald dat HAProxy in HTTP-modus werkt en dat HTTP-logging is ingeschakeld. Ook worden verschillende time-outs gedefinieerd.
De overige secties van het configuratiebestand, zoals sectie frontend en backend, regelen het daadwerkelijke dataverkeer. In de frontend-sectie wordt aangegeven op welke poorten HAProxy verzoeken ontvangt en hoe deze worden doorgestuurd. In de backend-sectie wordt vervolgens bepaald naar welke servers het verkeer wordt doorgestuurd. Hier kunnen algoritmen voor load balancing worden toegepast.
Na het bewerken moet je het bestand opslaan en HAProxy opnieuw opstarten:
sudo systemctl restart haproxybashDe installatie van HAProxy op Debian 12 is nu voltooid. De configuratie kan op elk moment worden aangepast door het configuratiebestand te wijzigen.