Sådan installeres HAProxy på Ubuntu 22.04

|
Sådan installeres HAProxy på Ubuntu 22.04

HAProxy, som står for High Availability Proxy, er en gratis, open source softwareløsning, der giver en pålidelig, højtydende load balancer og proxyserver til TCP- og HTTP-baserede applikationer. Det bruges almindeligvis til at forbedre ydeevnen og pålideligheden af ​​webapplikationer ved at distribuere indgående trafik på tværs af flere servere.

I denne vejledning viser vi dig, hvordan du installerer HAProxy på Ubuntu 22.04.

Trin 1 – Opsætning af backend-servere

Før du starter, skal du konfigurere Apache på begge backend-servere.

Log ind på begge dine servere og installer Apache-pakken ved hjælp af følgende kommando.

apt-get install apache2 -y

Når Apache-pakken er installeret, skal du oprette en index.html-fil eller redigere den nuværende på begge webservere.
Åben terminal på begge servere og skriv følgende:

cd /var/www/html/

Herefter med nedenstående kommand

sudo nano index.html

Når rettelserne er færdig, kan man f.eks. teste index.html-filen ved at skrive følgende kommando, for at se om der kommer et output.

echo "<h1>This is my first Apache Server</h1>" | tee /var/www/html/index.html
echo "<h1>This is my second Apache Server</h1>" | tee /var/www/html/index.html

Alternativt skriv nedenstående i en browser:

 <ip-adresse:80>
 <ip-adresse:80>

Trin 2 – Installer HAProxy

Som standard er HAProxy-pakken inkluderet i Ubuntus standardlager. Du kan installere det ved at bruge følgende kommando:

apt-get install haproxy -y

Next, check the installed version to verify that HAProxy is installed correctly.

haproxy -v

Du bør se et output, der viser HAProxy-versionen.

HAProxy version 2.4.24-0ubuntu0.22.04.1 2023/10/31 - https://haproxy.org/

Derefter skal du starte og aktivere HAProxy-tjenesten.

systemctl start haproxy
systemctl enable haproxy

Trin 3 – Konfigurer HAProxy

Rediger HAProxy-konfigurationsfilen for at opsætte en grundlæggende konfiguration. Standardkonfigurationsfilen er placeret i /etc/haproxy/haproxy.cfg.

nano /etc/haproxy/haproxy.cfg

Tilføj følgende linjer:

frontend haproxy-main
    bind *:80
    option forwardfor  
    default_backend apache_webservers    

backend apache_webservers
    balance roundrobin
    server websvr1	192.168.1.10:80 check
    server websvr2	192.168.1.11:80 check
  • Frontend-sektionen definerer, hvor HAProxy lytter efter indgående trafik (port 80 i dette tilfælde).
  • Backend-sektionen specificerer de servere, som trafikken skal distribueres til.

Bemærk: Erstattet 192.168.1.10 og 192.168.1.11 med IP-adressen på dine backend Apache-webservere.

Trin 4 – Konfigurer HAProxy-godkendelse

For at konfigurere godkendelse for HAProxy-statistiksiden på port 8800 og konfigurere en backend til dine Apache-webservere, kan du bruge følgende konfiguration. Dette eksempel inkluderer lyttesektionen til statistiksiden med grundlæggende godkendelse og en backend-sektion til dine Apache-servere.

Rediger filen haproxy.cfg.

nano /etc/haproxy/haproxy.cfg

Tilføj følgende linjer:

listen stats
    bind :8800
    stats enable
    stats uri /
    stats hide-version
    stats auth admin:password
    default_backend apache_webservers

Gem og luk filen, og genstart derefter HAProxy-tjenesten for at anvende ændringerne.

systemctl restart haproxy

Bekræft nu status for HAProxy ved hjælp af kommandoen nedenfor:

systemctl status haproxy

Output:

● haproxy.service - HAProxy Load Balancer
     Loaded: loaded (/lib/systemd/system/haproxy.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2024-05-25 12:32:27 IST; 9s ago
       Docs: man:haproxy(1)
             file:/usr/share/doc/haproxy/configuration.txt.gz
    Process: 44208 ExecStartPre=/usr/sbin/haproxy -Ws -f $CONFIG -c -q $EXTRAOPTS (code=exited, status=0/SUCCESS)
   Main PID: 44210 (haproxy)
      Tasks: 5 (limit: 9188)
     Memory: 70.0M
        CPU: 78ms
     CGroup: /system.slice/haproxy.service
             ├─44210 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -S /run/haproxy-master.sock
             └─44212 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -S /run/haproxy-master.sock

May 25 12:32:27 ubuntupc systemd[1]: Starting HAProxy Load Balancer...
May 25 12:32:27 ubuntupc haproxy[44210]: [NOTICE]   (44210) : New worker #1 (44212) forked
May 25 12:32:27 ubuntupc systemd[1]: Started HAProxy Load Balancer.

Trin 5 – Test HAProxy

Åbn en webbrowser, og naviger til din servers IP-adresse http://your-haproxy-ip.Du bør være i stand til at se Apache-siden, hvis dine backend-servere er konfigureret korrekt.

For at se HAProxy-statistikker skal du navigere til http://din_haproxy_ip:8080/ og logge på med de legitimationsoplysninger, der er defineret i konfigurationsfilen (admin:adgangskode i dette eksempel).

Konklusion

HAProxy er et kraftfuldt og fleksibelt værktøj til belastningsbalancering og forbedring af tilgængeligheden og ydeevnen af ​​webapplikationer og tjenester. Dens brede vifte af funktioner og konfigurationer gør den velegnet til forskellige anvendelsestilfælde, fra simpel belastningsbalancering til komplekse routing- og trafikstyringsopgaver. Du kan nu implementere HAProxy på dedikeret serverhosting fra Atlantic.Net! at load balance din webserver.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Shopping Cart0

Cart