HAProxy (High Availability Proxy) är en populär programvara som kan användas som en omvänd proxy och lastbalanserare. Det kan enkelt installeras på Ubuntu 22.04 med bara några få steg.

Vad är HAProxy?

HAProxy är en kraftfull programvara för öppen källkod som kan användas som lastbalanserare eller omvänd proxy. Den används ofta för att distribuera datatrafik för incidenter till flera servrar och därmed förbättra tillgängligheten och prestandan för webbapplikationer. HAProxy är en beprövad lösning, särskilt i mycket skalbara och felsäkra arkitekturer.

Tack vare sin höga effektivitet kan HAProxy bearbeta tusentals förfrågningar per sekund utan att belasta systemresurserna hårt. Programvaran stöder olika metoder för lastbalansering, t.ex. round robin, least connection och source IP hashing. Den erbjuder också funktioner som SSL-terminering, hälsokontroller och sticky sessions för att på bästa sätt styra datatrafiken. En annan styrka är möjligheten att vidarebefordra trafik baserat på specifika regler eller rubrikinformation.

HAProxy används i många stora företag och i moln miljöer. Konfigurationen sker via en enkel men flexibel konfigurationsfil som tillåter detaljerad anpassning till dina behov.

Så här installerar du HAProxy på Ubuntu 22.04 steg för steg

Steg 1: Uppdatera systemet

Innan du påbörjar installationen bör du se till att din Linux-distribution är uppdaterad. Detta kommer att säkerställa att alla paket är aktuella och att potentiella säkerhetsproblem har eliminerats. För att göra detta öppnar du en terminal och kör följande kommandon:

sudo apt update && sudo apt upgrade -y
bash

Den här kommandosekvensen uppdaterar först paketlistan för att fastställa de senaste versionerna av den installerade programvaran. Alla befintliga paket uppdateras sedan till de senaste tillgängliga versionerna. Parametern -y säkerställer att alla uppdateringar bekräftas automatiskt.

Steg 2: Installera HAProxy

Efter att systemet har uppdaterats kan du installera HAProxy med följande kommando:

sudo apt install haproxy -y
bash

Detta kommando hämtar HAProxy från de officiella Ubuntu-paketkällorna och installerar programmet. Installationen går vanligtvis snabbt eftersom HAProxy är ett lättviktigt program. När installationen är klar kan du kontrollera att HAProxy har installerats genom att köra följande kommando:

haproxy -v
bash

Utmatningen bör visa den installerade versionen av HAProxy.

Bild: Skärmdump av den aktuella HAProxy-versionen i terminalen
När du har utfört kommandot visas den aktuella installerade versionen av HAProxy.

Steg 3: Aktivera och starta HAProxy-tjänsten

Efter installationen måste du se till att HAProxy-tjänsten körs. Starta först HAProxy som administratör med följande kommando:

sudo systemctl start haproxy
bash

Använd det här kommandot för att kontrollera om tjänsten har startats korrekt:

sudo systemctl status haproxy
bash

Om HAProxy körs bör utdata se ut ungefär så här:

Bild: 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.

För att säkerställa att HAProxy också startar automatiskt efter en omstart, aktivera tjänsten med:

sudo systemctl enable haproxy
bash

Steg 4: Konfigurera HAProxy

HAProxy konfigureras via konfigurationsfilen /etc/haproxy/haproxy.cfg. Innan du gör några ändringar är det bra att skapa en säkerhetskopia av originalfilen:

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

Genom att replikera originalfilen säkerställer du att du när som helst kan återgå till ett fungerande tillstånd. På så sätt kan ändringar göras med låg risk.

Om du vill redigera originalfilen öppnar du den med en valfri textredigerare, t.ex. nano eller Vim. I vårt exempel använder vi nano:

sudo nano /etc/haproxy/haproxy.cfg
bash

En enkel konfiguration för lastbalansering kan se ut så här:

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

I exemplet med lastbalanseraren fördelas den inkommande HTTP -trafiken på port 80 till två backend -servrar (“web1” och “web2”). Belastningen fördelas i en round-robin-process så att förfrågningar vidarebefordras växelvis till servrarna.

Steg 5: Starta om och testa HAProxy

Efter konfigurationsändringen måste HAProxy startas om för att ändringarna ska träda i kraft. Detta görs med följande terminalkommando:

sudo systemctl restart haproxy
bash

Om fel uppstår kan du kontrollera om det finns syntaxfel i konfigurationsfilen för HAProxy med hjälp av kommandot nedan:

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

En korrekt konfiguration bekräftas av utdata Configuration file is valid. Du kan nu testa om HAProxy fungerar som önskat genom att ange det publika IP-adress eller domännamnet för din server i ett webbläsare.

Gå till huvudmeny