# Kuinka asentaa HAProxy Debianiin 12 vaiheessa

HAProxy on tehokas avoimen lähdekoodin ohjelmisto, joka mahdollistaa kuormituksen tasapainottamisen ja välityspalvelimen määrittämisen TCP- ja HTTP-pohjaisille sovelluksille. Se voidaan asentaa Debian 12:een muutamalla yksinkertaisella vaiheella, ja sitä käytetään usein korkean käytettävyyden järjestelmissä pyyntöjen tehokkaaseen jakamiseen, mikä parantaa sovellusten vakautta ja suorituskykyä.

## Mikä on HAProxy?

HAProxy (High Availability Proxy) on suorituskykyinen ja luotettava [kuormituksen tasapainottaja](https://www.ionos.com/fi-fi/digitalguide/palvelin/osaaminen/kuormituksen-tasapainottajat-palvelinten-tyoemaeaeraen-jakaminen/) ja [käänteinen välityspalvelin](https://www.ionos.com/fi-fi/digitalguide/palvelin/osaaminen/mikae-on-kaeaenteinen-vaelityspalvelin/), jota käytetään **verkko- ja sovellustiedon jakeluun**. Sovellus tukee kuormituksen tasapainottamisessa sekä OSI-mallin tasoa 4 (siirtokerros, esim. TCP) että tasoa 7 (sovelluskerros, esim. HTTP). Pienen viiveen, korkean tehokkuuden ja kattavien konfigurointivaihtoehtojen ansiosta HAProxy sopii kaiken kokoisille yrityksille.

Yritykset ja kehittäjät käyttävät HAProxya **kuormituksen jakamiseen useiden taustapalvelimien kesken**, **palvelinkatkosten torjumiseen** ja **sovellusten yleisen suorituskyvyn parantamiseen**. Ohjelmistolla on keskeinen rooli monissa verkkoympäristöissä, etenkin korkean käytettävyyden ja skaalautuvuuden vaativissa sovelluksissa. Sen tärkeimpiä ominaisuuksia ovat SSL/TLS-yhteyksien päättäminen, taustapalvelimien toimintatarkistukset, kaistanleveyden rajoittaminen sekä DDoS-hyökkäysten torjuntamekanismit.

## HAProxyn asennus Debianiin vaihe vaiheelta

### Vaihe 1: Päivitä järjestelmä

Ennen HAProxyn asentamista sinun tulisi päivittää Linux-jakelusi. Näin varmistat, että kaikki paketit ovat ajan tasalla ja että asennus sujuu ongelmitta.

Seuraava komento päivittää pakettiluettelot ja asentaa kaikki saatavilla olevat päivitykset Debian 12:lle:

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

### Vaihe 2: Asenna HAProxy

Debian 12:ssa HAProxy sisältyy virallisiin pakettilähteisiin, joten sen asentaminen on helppoa sisäänrakennetulla apt-pakettihallintaohjelmalla.

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

Tämä komento lataa ja asentaa HAProxyn sekä kaikki tarvittavat riippuvuudet.

### Vaihe 3: Tarkista HAProxy-versio

Asennuksen jälkeen sinun tulisi tarkistaa, onko HAProxy asennettu onnistuneesti. Voit tehdä tämän tarkistamalla asennetun HAProxy-version:

```bash
haproxy -v
```

Tuloksen pitäisi näyttää suunnilleen tältä:

[![Kuva: Screenshot of the current HAProxy version in the terminal](https://www.ionos.com/fi-fi/digitalguide/fileadmin/_processed_/f/e/csm_haproxy-version-debian_81e8debd71.webp "Screenshot of the current HAProxy version in the terminal")](https://www.ionos.com/fi-fi/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/haproxy-version-debian.png) After you run the command, the currently installed version of HAProxy will be displayed in your terminal. Tämä varmistaa, että HAProxy on asennettu oikein.

### Vaihe 4: Ota HAProxy käyttöön palveluna

Jotta HAProxy käynnistyisi automaattisesti järjestelmän käynnistyessä ja toimisi jatkuvasti, palvelu on otettava käyttöön ja käynnistettävä.

```bash
sudo systemctl enable haproxy
sudo systemctl start haproxy
```

Lopuksi palvelun toimivuuden tarkistamiseen voidaan käyttää seuraavaa komentoa:

```bash
sudo systemctl status haproxy
```

Jos HAProxy toimii oikein, näytöllä pitäisi näkyä aktiivinen (käynnissä oleva) tuloste, joka näyttää suunnilleen tältä:

[![Kuva: Screenshot of the current HAProxy status in the terminal](https://www.ionos.com/fi-fi/digitalguide/fileadmin/_processed_/b/5/csm_haproxy-status-debian_bd38f850b3.webp "Screenshot of the current HAProxy status in the terminal")](https://www.ionos.com/fi-fi/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/haproxy-status-debian.png) You can see in the terminal output that HAProxy is now working without problems from the status ‘active (running)’. ### Vaihe 5: HAProxyn perusasetukset

HAProxy-määritystiedosto sijaitsee kansiossa `/etc/haproxy/haproxy.cfg`. Ennen muutosten tekemistä on suositeltavaa luoda varmuuskopio, johon voi turvautua virhetilanteissa:

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

Nyt voit muokata tiedostoa haluamallasi tekstieditorilla (kuten Vim tai nano):

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

**Yksinkertainen HAProxy-määritys** voisi näyttää tältä:

```txt
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 check
```

Tämä kokoonpano jakaa HTTP-pyynnöt kahden verkkopalvelimen kesken **round-robin-periaatteella**. Se on jaettu useisiin osioihin. Ensinnäkin on globaali osio, jossa määritellään HAProxyn perusasetukset. Tässä osiossa määritetään esimerkiksi käyttäjätili, jolla HAProxy toimii, sallittujen samanaikaisten yhteyksien määrä sekä lokitiedostojen tallennuspaikka. **Lisäksi voidaan määritellä chroot-hakemisto**, jotta HAProxy **voidaan** ajaa rajoitetussa ympäristössä ja parantaa siten tietoturvaa.

Yleisten asetusten jälkeen tulee `defaults`, jossa määritellään oletusarvot kaikille seuraaville määrityksille. Tässä osiossa määritetään esimerkiksi, että HAProxy toimii HTTP-tilassa ja että HTTP-lokitus on käytössä. Lisäksi määritellään erilaisia aikakatkaisuja.

Määritystiedoston muut osat, kuten osat `frontend` ja `backend`, ohjaavat varsinaista dataliikennettä. Frontend-osassa määritetään, millä porteilla HAProxy vastaanottaa pyyntöjä ja miten ne välitetään eteenpäin. Backend-osassa puolestaan määritetään palvelimet, joille liikenne välitetään. Tässä voidaan käyttää kuormituksen tasapainottamisalgoritmeja.

Kun olet tehnyt muutokset, tallenna tiedosto ja käynnistä HAProxy uudelleen:

```bash
sudo systemctl restart haproxy
```

HAProxyn asennus Debian 12:een on nyt valmis. Asetuksia voi muokata milloin tahansa muuttamalla asetustiedostoa.


This is a markdown version of: [https://www.ionos.com/fi-fi/digitalguide/palvelin/asetukset/haproxyn-asentaminen-debian-12een/](https://www.ionos.com/fi-fi/digitalguide/palvelin/asetukset/haproxyn-asentaminen-debian-12een/) for AI/LLM consumption.