HAProxy (High Availability Proxy) is populaire software die kan worden gebruikt als reverse proxy en load balancer. Het kan eenvoudig in slechts een paar stappen worden geïnstalleerd op Ubuntu 22.04.

Wat is HAProxy?

HAProxy is krachtige open-source software die kan worden gebruikt als load balancer of reverse proxy. Het wordt vaak gebruikt om incidentgegevensverkeer over meerdere servers te verdelen en zo de beschikbaarheid en prestaties van webapplicaties te verbeteren. HAProxy is een beproefde oplossing, vooral in zeer schaalbare en storingsvrije architecturen.

Dankzij zijn hoge efficiëntie kan HAProxy duizenden verzoeken per seconde verwerken zonder de systeembronnen zwaar te belasten. De software ondersteunt verschillende methoden voor load balancing, zoals round robin, least connection en source IP hashing. Het biedt ook functies zoals SSL-beëindiging, gezondheidscontroles en sticky sessions om het dataverkeer optimaal te beheren. Een ander sterk punt is de mogelijkheid om verkeer door te sturen op basis van specifieke regels of headerinformatie.

HAProxy wordt gebruikt in veel grote bedrijven en cloudomgevingen. De configuratie gebeurt via een eenvoudig maar flexibel configuratiebestand dat gedetailleerde aanpassingen aan uw behoeften mogelijk maakt.

Hoe HAProxy stap voor stap op Ubuntu 22.04 te installeren

Stap 1: Werk het systeem bij

Voordat u met de installatie begint, moet u ervoor zorgen dat uw Linux-distributie up-to-date is. Zo bent u er zeker van dat alle pakketten actueel zijn en dat mogelijke beveiligingsrisico’s zijn verholpen. Open hiervoor een terminal en voer de volgende commando’s uit:

sudo apt update && sudo apt upgrade -y
bash

Deze reeks commando’s werkt eerst de pakketlijst bij om de nieuwste versies van de geïnstalleerde software te bepalen. Vervolgens worden alle bestaande pakketten bijgewerkt naar de nieuwste beschikbare versies. De parameter -y zorgt ervoor dat alle updates automatisch worden bevestigd.

Stap 2: HAProxy installeren

Nadat het systeem is bijgewerkt, kunt u HAProxy installeren met de volgende opdracht:

sudo apt install haproxy -y
bash

Met dit commando wordt HAProxy gedownload vanuit de officiële Ubuntu-pakketbronnen en wordt de applicatie geïnstalleerd. De installatie verloopt doorgaans snel, aangezien HAProxy een lichtgewicht programma is. Zodra de installatie is voltooid, kunt u controleren of HAProxy succesvol is geïnstalleerd door het volgende commando uit te voeren:

haproxy -v
bash

De uitvoer moet de geïnstalleerde versie van HAProxy weergeven.

Afbeelding: Screenshot of the current HAProxy version in the terminal
After you have executed the command, the currently installed version of HAProxy will be displayed.

Stap 3: Activeer en start de HAProxy-service

Na de installatie moet u controleren of de HAProxy-service actief is. Start HAProxy eerst als beheerder met de volgende opdracht:

sudo systemctl start haproxy
bash

Gebruik deze opdracht om te controleren of de service succesvol is gestart:

sudo systemctl status haproxy
bash

Als HAProxy actief is, zou de uitvoer er ongeveer zo uit moeten zien:

Afbeelding: Screenshot of the current HAProxy status in the terminal
You can see from the ‘active (running)’ status in the terminal output that HAProxy is working without any problems.

Om ervoor te zorgen dat HAProxy ook automatisch start na een herstart, activeer je de service met:

sudo systemctl enable haproxy
bash

Stap 4: HAProxy configureren

HAProxy wordt geconfigureerd via het configuratiebestand /etc/haproxy/haproxy.cfg. Voordat u wijzigingen aanbrengt, is het raadzaam een back-up van het originele bestand te maken:

sudo cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.backup
bash
Opmerking

Door het originele bestand te repliceren, zorgt u ervoor dat u op elk moment kunt terugkeren naar een werkende staat. Op deze manier kunnen wijzigingen met een laag risico worden aangebracht.

Om het originele bestand te bewerken, opent u het met een teksteditor naar keuze, zoals nano of Vim. In ons voorbeeld gebruiken we nano:

sudo nano /etc/haproxy/haproxy.cfg
bash

Een eenvoudige configuratie voor load balancing zou er als volgt uit kunnen zien:

frontend http_front
	bind *:80
	default_backend web_servers
backend web_servers
	balance roundrobin
	server web1 192.168.1.10:80 check
	server web2 192.168.1.11:80 check

In het voorbeeld van de load balancer wordt het inkomende HTTP-verkeer op poort 80 verdeeld over twee backend-servers (‘web1’ en ‘web2’). De belasting wordt verdeeld in een round-robin-proces, zodat verzoeken afwisselend naar de servers worden doorgestuurd.

Stap 5: Start opnieuw op en test HAProxy

Na de configuratiewijziging moet HAProxy opnieuw worden opgestart om de wijzigingen door te voeren. Dit gebeurt met de volgende terminalopdracht:

sudo systemctl restart haproxy
bash

Als er fouten optreden, kunt u het HAProxy-configuratiebestand controleren op syntaxfouten met behulp van de onderstaande opdracht:

haproxy -c -f /etc/haproxy/haproxy.cfg
bash

Een correcte configuratie wordt bevestigd door de uitvoer Configuration file is valid. U kunt nu testen of HAProxy naar behoren werkt door het openbare IP-adres of de domeinnaam van uw server in een browser in te voeren.

Ga naar hoofdmenu