Installer HAProxy for å konfigurere lastbalanseringsserver på Debian Top 10

Installer HAProxy for å konfigurere lastbalanseringsserver på Debian Top 10

Lastbalansering er den vanligste praksisen med å distribuere innkommende netttrafikk blant flere back-end-servere. Dette gjør applikasjonen svært tilgjengelig selv om noen av serverne går ned av en eller annen grunn. Lastbalansering øker effektiviteten og påliteligheten til en webapplikasjon. HAProxy Load-Balancer brukes til samme formål. Det er den mest brukte belastningsbalanser i bransjer. I henhold til det offisielle nettstedet brukes Haproxy av ledende selskaper som AWS, Fedora, GitHub og mange flere.

HAProxy eller høy tilgjengelighet Proxy gir høy tilgjengelighet og fullmaktsløsning. Det er skrevet i C og fungerer på nettverks- og applikasjonslag i TCP/IP -modellen. Det beste er at den har en gratis samfunnsutgave, og det er en åpen kildekode-applikasjon. Det fungerer på Linux, FreeBSD og Solaris operativsystemer. Enterprise -utgaven er også der, men den har en prislapp.

I denne guiden får vi se Hvordan installere HAProxy og konfigurere lastbalanseserveren på Debian 10.

Forutsetninger:

  1. “Sudo” tilgang til alle maskiner og grunnleggende kunnskap om å kjøre kommandoer i Linux -terminalen.
  2. Private IP-adresser lagt til belastningsbalanser og backend-servere.
  3. Debian 10 operativsystem installert på alle maskiner.

Installere HAProxy på Debian 10

For vår guide vil vi anta følgende IP -adressekonfigurasjon:

  1. HAProxy Load-Balancer 10.0.12.10
  2. Webserver1: IP -adresse: 10.0.12.15
  3. Webserver2: IP -adresse: 10.0.12.16

Trinn 1. Oppdater Debian System Repository and Packages

Kjør først kommandoene nedenfor på alle systemer for å oppdatere programvarepakker til de siste.

$ sudo apt oppdatering
$ sudo apt oppgradering -y

Trinn: 2 Installer Nginx på back-end-servere

Utarbeide back-end-serverne ved å installere Nginx-webserveren på hver. Du kan også velge å installere andre webservere som Apache.

For å installere Nginx, kjør følgende kommandoer på hver back-end-server i miljøet ditt:

$ sudo apt install nginx

Trinn: 3 Etter at Nginx er installert på back-end-serverne, start tjenesten, som vist nedenfor:

$ sudo systemctl start nginx

TIPS: Vi kan også administrere Nginx -webserveren ved å bruke kommandoen nedenfor:

$ sudo /etc /init.d/nginx “Alternativ”
Alternativ: Start på nytt Restart Status Stopp

Trinn: 4 Opprett tilpassede indekssider i nettmappen til hver NGINX -webserver. Dette vil hjelpe oss å skille hvilken back-end-server som serverer de innkommende forespørslene.

Utfør følgende oppgaver på hver webserver:

Sikkerhetskopiere den opprinnelige indeksfilen ved å bruke følgende kommando:

$ sudo cp/usr/share/nginx/html/indeks.HTML/usr/aksje/nginx/html/indeks.html.Orig

Legg til tilpasset tekst i indeksen.HTML -fil. Vi legger til IP -adressen til hver webserver.

For webserver 1:

$ sudo ekko "Webserver 1: 10.0.12.15 "| sudo tee/usr/share/nginx/html/indeks.html

For webserver 2:

$ sudo ekko "Webserver 2: 10.0.12.16 "| sudo tee/usr/share/nginx/html/indeks.html

Du kan også bruke VI -redaktøren hvis du føler deg mer komfortabel med det. Dette vises nedenfor:

$ sudo vi/usr/share/nginx/html/indeks.html

Når filen åpnes, skriv inn teksten og lagre filen.

Åpne standard virtuell vertsfil i "/etc/nginx/nettsteder-tilgjengelig/" -katalogen.

$ sudo nano/etc/nginx/nettsteder-tilgjengelig/standard

Nå inne i serverblokken, endre rotdirektivet fra “/var/www/html” til “/usr/share/nginx/html”.

For å sjekke Nginx -konfigurasjonen, kjør følgende kommando:

$ sudo nginx -t

Trinn 5: Start tjenesten på nytt ved å bruke kommandoen:

$ sudo SystemCTL Restart Nginx

Du kan sjekke statusen til Nginx ved å bruke følgende kommando:

$ sudo systemctl status nginx

Trinn: 6 For å installere HAProxy på Debian 10 (Buster), kjør følgende kommando på Load-Balancer.

$ sudo apt installer haproxy -y

Tips: Når Haproxy er installert, kan du administrere HAProxy via et init -skript. For dette, sett "aktivert" -parameteren til 1 i "/etc/standard/Haproxy" som vist nedenfor:

$ sudo vi/etc/standard/haproxy
Aktivert = 1

Nå kan følgende alternativ brukes med et init -skript:

$ sudo service haproxy “alternativ.”
Alternativ: Start på nytt Restart Status Stopp

Trinn: 7 Konfigurer nå HAProxy Load-Balancer ved å redigere HAProxy standardkonfigurasjonsfil, i.e. “/Etc/haproxy/haproxy.CFG ”. For å redigere denne filen, kjør følgende kommando

$ sudo vi/etc/haproxy/haproxy.CFG

Tips: Vennligst sikkerhetskopier den originale filen slik at i tilfelle noe går galt, vil vi være trygge. For å utføre sikkerhetskopien, bruk følgende kommando:

$ sudo cp/etc/haproxy/haproxy.CFG/etc/haproxy/haproxy.CFG.Orig

Gå nå til slutten av filen og rediger følgende informasjon:

Frontend local_server
Bind 10.0.12.10:80
modus http
Standard_backend Webserver
Backend Webserver
modus http
Balanse Roundrobin
Alternativ fremover for
HTTP-Request Set-Header X-Forwarded-Port %[DST_PORT]
HTTP-Request Add-Header X-Forwarded-Proto https IF SSL_FC
Alternativ httpchk head / http / 1.1rnhost: localhost
Server Web1 10.0.12.15:80
Server Web2 10.0.12.16:80

Merk: Ikke glem å endre IP -adressene i filen ovenfor til den du har lagt til webserverne dine.

Trinn: 8 Bekreft konfigurasjonssyntaks for filen ovenfor med følgende kommando:

$ sudo haproxy -c -f/etc/haproxy/haproxy.CFG

Hvis alt går riktig, vil det vise en utdata som: “Konfigurasjonsfilen er gyldig.”Hvis du får noen feil i utdataene, må du kontrollere konfigurasjonsfilen og bekrefte den igjen.

Trinn: 9 Start nå HAProxy -tjenesten for å bruke endringene

$ sudo service haproxy omstart

Testing av konfigurasjonen

Nå er det på tide å se om oppsettet vårt fungerer som den skal. Skriv inn Load-Balancer System IP på en nettleser (i vårt tilfelle er det 10.0.12.10) og oppdater siden kontinuerlig i 2-4 ganger for å se om haproxy-belastningsbalanser fungerer ordentlig. Du bør se forskjellige IP -adresser eller hvilken tekst du har skrevet inn i indeksen.HTML -fil når du fortsetter å oppdatere siden flere ganger.

En annen måte å sjekke er å ta en webserver offline og sjekke om en annen webserver serverer forespørslene.

Det er alt for nå! Prøv å eksperimentere med HAProxy for å lære mer om hvordan det fungerer. For e.g., du kan prøve:

  • Integrering av forskjellige webserver ved siden av nginx.
  • Endring av belastningsbalanseringsalgoritmen til noe annet enn runde-robin.
  • Konfigurere HAProxy Health Check for å avgjøre om en back-end-server fungerer eller ikke.
  • Bruke klissete økter for å koble en bruker til samme back-end-server.
  • Bruker HAProxy -statistikk for å få innsikt om trafikken på servere.

HAProxy har omfattende dokumentasjon tilgjengelig for både Haproxy Community Edition og Haproxy Enterprise -versjonen. Utforsk denne dokumentasjonen for å få mer innsikt i å forbedre ytelsen og påliteligheten til servermiljøet ditt.

Denne guiden er vellykket utført på Debian 10 (Buster). Forsøk å installere HAProxy på andre Debian -baserte distros som Ubuntu, Linux Mint etc. Ikke glem å dele denne guiden med andre.