HAProxy (High Availability Proxy) er et populært program som kan brukes som omvendt proxy og lastfordeler. Det kan enkelt installeres på Ubuntu 22.04 med bare noen få trinn.

Hva er HAProxy?

HAProxy er en kraftig programvare med åpen kildekode som kan brukes som lastfordeler eller omvendt proxy. Den brukes ofte til å fordele datatrafikk på flere servere og dermed forbedre tilgjengeligheten og ytelsen til webapplikasjoner. HAProxy er en velprøvd løsning, særlig i svært skalerbare og feilsikre arkitekturer.

Takket være sin høye effektivitet kan HAProxy behandle tusenvis av forespørsler i sekundet uten å belaste systemressursene i nevneverdig grad. Programvaren støtter ulike metoder for lastfordeling, som for eksempel round robin, «least connection» og hashing av kilde-IP-adresser. Den tilbyr også funksjoner som SSL-terminering, tilstandskontroller og «sticky sessions» for å styre datatrafikken på en optimal måte. En annen styrke er muligheten til å videresende trafikk basert på spesifikke regler eller informasjon i overskriften.

HAProxy brukes i mange store bedrifter og skymiljøer. Konfigurasjonen skjer via en enkel, men fleksibel konfigurasjonsfil som gir mulighet for detaljert tilpasning etter dine behov.

Slik installerer du HAProxy på Ubuntu 22.04 trinn for trinn

Trinn 1: Oppdater systemet

Før du starter installasjonen, bør du sørge for at Linux-distribusjonen din er oppdatert. Dette sikrer at alle pakker er oppdaterte og at eventuelle sikkerhetshull er utbedret. For å gjøre dette, åpner du en terminal og kjører følgende kommandoer:

sudo apt update && sudo apt upgrade -y
bash

Denne kommandosekvensen oppdaterer først pakkelisten for å finne de nyeste versjonene av den installerte programvaren. Deretter oppdateres alle eksisterende pakker til de nyeste tilgjengelige versjonene. Parameteren -y sikrer at alle oppdateringer bekreftes automatisk.

Trinn 2: Installer HAProxy

Når systemet er oppdatert, kan du installere HAProxy med følgende kommando:

sudo apt install haproxy -y
bash

Denne kommandoen laster ned HAProxy fra de offisielle Ubuntu-pakkekildene og installerer programmet. Installasjonen går vanligvis raskt, siden HAProxy er et lettvektsprogram. Når installasjonen er fullført, kan du kontrollere at HAProxy er installert ved å kjøre følgende kommando:

haproxy -v
bash

Utdataene skal vise hvilken versjon av HAProxy som er installert.

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

Trinn 3: Aktiver og start HAProxy-tjenesten

Etter installasjonen må du forsikre deg om at HAProxy-tjenesten kjører. Start først HAProxy som administrator med følgende kommando:

sudo systemctl start haproxy
bash

Bruk denne kommandoen for å sjekke om tjenesten er startet:

sudo systemctl status haproxy
bash

Hvis HAProxy kjører, bør utdataene se omtrent slik ut:

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

For å sikre at HAProxy også starter automatisk etter en omstart, aktiverer du tjenesten med:

sudo systemctl enable haproxy
bash

Trinn 4: Konfigurer HAProxy

HAProxy konfigureres via konfigurasjonsfilen /etc/haproxy/haproxy.cfg. Før du gjør endringer, er det lurt å ta en sikkerhetskopi av den opprinnelige filen:

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

Ved å lage en kopi av den opprinnelige filen sikrer du at du når som helst kan gå tilbake til en fungerende tilstand. På denne måten kan du gjøre endringer med lav risiko.

For å redigere den opprinnelige filen, åpner du den med et tekstredigeringsprogram etter eget valg, for eksempel nano eller Vim. I vårt eksempel bruker vi nano:

sudo nano /etc/haproxy/haproxy.cfg
bash

En enkel konfigurasjon for lastfordeling kan se slik ut:

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 eksemplet på lastfordeleren fordeles den innkommende HTTP- trafikken på port 80 til to backend -servere («web1» og «web2»). Lasten fordeles etter en round-robin-metode, slik at forespørslene videresendes vekselvis til serverne.

Trinn 5: Start på nytt og test HAProxy

Etter endringen i konfigurasjonen må HAProxy startes på nytt for at endringene skal tre i kraft. Dette gjøres med følgende terminalkommando:

sudo systemctl restart haproxy
bash

Hvis det oppstår feil, kan du sjekke om det er syntaksfeil i HAProxy-konfigurasjonsfilen ved å bruke kommandoen nedenfor:

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

At konfigurasjonen er riktig, bekreftes av utdata Configuration file is valid. Du kan nå teste om HAProxy fungerer som ønsket ved å skrive inn serverens offentlige IP-adresse eller domenenavn i en nettleser.

Go to Main Menu