Hoe HAProxy stap voor stap op Debian 12 te installeren
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 Layer 4 (Transport Layer, bijv. TCP) als Layer 7 (Application Layer, bijv. HTTP) van het OSI-model met betrekking tot 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 zeer beschikbare en schaalbare applicaties. De belangrijkste functies zijn onder meer SSL/TLS-beëindiging, gezondheidscontroles van backend-servers, snelheidsbeperking en DDoS-beveiligingsmechanismen.
Hoe HAProxy stap voor stap op Debian te installeren
Stap 1: Werk het systeem bij
Voordat u HAProxy installeert, moet u uw Linux-distributie bijwerken. Dit zorgt ervoor dat alle pakketten up-to-date zijn en dat de installatie soepel verloopt.
Het volgende commando werkt de pakketlijsten bij en installeert alle beschikbare updates voor Debian 12:
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 met alle benodigde afhankelijkheden gedownload en geïnstalleerd.
Stap 3: Controleer de HAProxy-versie
Na de installatie moet u controleren of HAProxy succesvol is geïnstalleerd. U kunt dit doen door de geïnstalleerde versie van HAProxy op te halen:
haproxy -vbashDe uitvoer zou er ongeveer zo uit moeten zien:

Dit zorgt ervoor 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 permanent te laten draaien, moet de service worden ingeschakeld en gestart.
sudo systemctl enable haproxy
sudo systemctl start haproxybashTen slotte kan het volgende commando worden gebruikt om te controleren of de service correct werkt:
sudo systemctl status haproxybashAls HAProxy correct werkt, zou u een actieve (lopende) uitvoer moeten zien die er ongeveer zo uitziet:

Stap 5: Basisconfiguratie van HAProxy
Het HAProxy-configuratiebestand bevindt zich op /etc/haproxy/haproxy.cfg. Voordat u wijzigingen aanbrengt, is het raadzaam een back-up te maken waarop u kunt terugvallen in geval van fouten:
sudo cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bakbashNu kunt u het bestand bewerken met een editor 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 op een round-robin-manier over twee webservers. Ze is onderverdeeld in verschillende secties. Ten eerste is er de algemene sectie, die de basisinstellingen voor HAProxy definieert. Deze sectie specificeert bijvoorbeeld het gebruikersaccount waaronder HAProxy draait, het aantal toegestane gelijktijdige verbindingen en waar de logbestanden worden opgeslagen. Er kan ook een chroot-directory worden gedefinieerd om HAProxy in een beperkte omgeving te draaien en zo de veiligheid te verhogen.
Na de algemene instellingen volgt sectie defaults, waarin de standaardwaarden voor alle volgende configuraties worden gedefinieerd. In deze sectie wordt bijvoorbeeld gespecificeerd dat HAProxy in HTTP-modus werkt en dat HTTP-logging is ingeschakeld. Ook worden verschillende time-outs gedefinieerd.
De andere secties van het configuratiebestand, zoals frontend en backend, regelen het daadwerkelijke dataverkeer. De frontend-sectie specificeert op welke poorten HAProxy verzoeken accepteert en hoe deze worden doorgestuurd. De backend-sectie definieert vervolgens de servers waarnaar het verkeer wordt doorgestuurd. Hier kunnen algoritmen voor load balancing worden gebruikt.
Na het bewerken moet u 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.