# Kako namestiti HAProxy v Ubuntu 22.04

HAProxy (High Availability Proxy) je priljubljena programska oprema, ki se lahko uporablja kot povratni proxy in porazdeljevalnik obremenitve. Na Ubuntu 22.04 jo je mogoče enostavno namestiti v le nekaj korakih.

## Kaj je HAProxy?

HAProxy je zmogljiva odprtokodna programska oprema, ki se lahko uporablja kot [porazdeljevalnik obremenitve](https://www.ionos.com/sl-si/digitalguide/streznik/znanje/porazdeljevalniki-obremenitve-porazdeljevanje-delovne-obremenitve-med-streznike/) ali [povratni proxy](https://www.ionos.com/sl-si/digitalguide/streznik/znanje/kaj-je-povratni-proxy/). Pogosto se uporablja za porazdelitev **prometa med več strežniki**, s čimer izboljša razpoložljivost in zmogljivost spletnih aplikacij. HAProxy je preizkušena rešitev, zlasti v visoko prilagodljivih in odpornostnih arhitekturah.

Zaradi visoke učinkovitosti lahko HAProxy obdeluje na tisoče zahtevkov na sekundo, ne da bi pri tem preveč obremenil sistemske vire. Programska oprema podpira **različne metode porazdelitve obremenitve**, kot so »round robin«, »least connection« in »source IP hashing«. Ponuja tudi funkcije, kot so zaključevanje SSL-povezav, preverjanje delovanja in »sticky sessions«, ki omogočajo optimalno upravljanje podatkovnega prometa. Druga prednost je zmožnost preusmerjanja prometa na podlagi določenih pravil ali podatkov v glavah sporočil.

HAProxy se uporablja v številnih velikih podjetjih in v oblačnih okoljih. Nastavitev poteka prek preproste, a prilagodljive konfiguracijske datoteke, ki omogoča podrobno prilagajanje vašim potrebam.

## Kako korak za korakom namestiti HAProxy na Ubuntu 22.04

### Korak 1: Posodobite sistem

Preden začnete z namestitvijo, se prepričajte, da je vaša distribucija Linuxa posodobljena. S tem boste zagotovili, da so vsi paketi najnovejši in da so bile odpravljene morebitne varnostne ranljivosti. Za to odprite terminal in izvedite naslednje ukaze:

```bash
sudo apt update && sudo apt upgrade -y
```

Ta zaporedje ukazov najprej posodobi seznam paketov, da ugotovi najnovejše različice nameščene programske opreme. Nato se vsi obstoječi paketi posodobijo na najnovejše razpoložljive različice. Parameter `-y` zagotavlja, da se vse posodobitve samodejno potrdijo.

### Korak 2: Namestitev HAProxyja

Ko je sistem posodobljen, lahko HAProxy namestite z naslednjim ukazom:

```bash
sudo apt install haproxy -y
```

Ta ukaz prenese HAProxy iz uradnih virov paketov Ubuntu in namesti program. Namestitev je običajno hitra, saj je HAProxy lahek program. Ko je namestitev končana, lahko **uspešnost namestitve HAProxy** preverite z izvedbo naslednjega ukaza:

```bash
haproxy -v
```

Na zaslonu naj se prikaže nameščena različica HAProxyja.

[![Image: Screenshot of the current HAProxy version in the terminal](https://www.ionos.com/sl-si/digitalguide/fileadmin/_processed_/5/a/csm_haproxy-version_ded5693290.webp "Screenshot of the current HAProxy version in the terminal")](https://www.ionos.com/sl-si/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/haproxy-version.png) After you have executed the command, the currently installed version of HAProxy will be displayed. ### Korak 3: Vklopite in zaženite storitev HAProxy

Po namestitvi morate preveriti, ali storitev HAProxy deluje. Najprej zaženite HAProxy kot skrbnik z naslednjim ukazom:

```bash
sudo systemctl start haproxy
```

Uporabite ta ukaz, da preverite, ali se je storitev uspešno zagnal:

```bash
sudo systemctl status haproxy
```

Če HAProxy deluje, naj bi izpis izgledal približno takole:

[![Image: Screenshot of the current HAProxy status in the terminal](https://www.ionos.com/sl-si/digitalguide/fileadmin/_processed_/6/0/csm_haproxy-status_292f97738a.webp "Screenshot of the current HAProxy status in the terminal")](https://www.ionos.com/sl-si/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/haproxy-status.png) You can see from the ‘active (running)’ status in the terminal output that HAProxy is working without any problems. Da se HAProxy samodejno zažene tudi po ponovnem zagonu sistema, storitev vklopite z naslednjim ukazom:

```bash
sudo systemctl enable haproxy
```

### Korak 4: Nastavite HAProxy

HAProxy se nastavi prek konfiguracijske datoteke `/etc/haproxy/haproxy.cfg`. Pred kakršnimi koli spremembami je priporočljivo narediti varnostno kopijo izvirne datoteke:

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

Note Z izdelavo kopije izvirne datoteke si zagotovite, da se lahko kadarkoli vrnete v delovno stanje. Na ta način lahko spremembe izvajate z manj tveganjem.

Če želite urediti izvirno datoteko, jo odprite v besedilnem urejevalniku po vaši izbiri, na primer v nano ali Vim. V našem primeru bomo uporabili nano:

```bash
sudo nano /etc/haproxy/haproxy.cfg
```

**Preprosta konfiguracija za porazdelitev obremenitve** bi lahko izgledala takole:

```none
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
```

V primeru porazdeljevalnika obremenitve se vhodni HTTP-promet na vratih 80 porazdeli med dva strežnika v ozadju („web1“ in „web2“). Obremenitev se porazdeli po načelu krožnega izbora, tako da se zahtevki izmenično posredujejo strežnikoma.

### Korak 5: Ponovni zagon in preizkus HAProxyja

Po spremembi nastavitev je treba HAProxy ponovno zagnati, da spremembe začnejo veljati. To storite z naslednjim ukazom v terminalu:

```bash
sudo systemctl restart haproxy
```

Če pride do napak, lahko s spodnjim ukazom preverite, ali v konfiguracijski datoteki HAProxy obstajajo sintaktične napake:

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

Pravilno nastavitev potrdi izhod `Configuration file is valid`. Zdaj lahko preverite, ali HAProxy deluje, kot je bilo predvideno, tako da v brskalnik vnesete javni IP-naslov ali domensko ime vašega strežnika.


This is a markdown version of: [https://www.ionos.com/sl-si/digitalguide/streznik/nastavitve/namestitev-haproxyja-v-ubuntu-2204/](https://www.ionos.com/sl-si/digitalguide/streznik/nastavitve/namestitev-haproxyja-v-ubuntu-2204/) for AI/LLM consumption.