Hvordan installere og konfigurere HAProxy på Ubuntu Top 10.Topp 10 LTS

Hvordan installere og konfigurere HAProxy på Ubuntu Top 10.Topp 10 LTS
HAProxy er en åpen kildekode og lett pakke som tilbyr høy tilgjengelighet og belastningsbalansering for TCP- og HTTP-baserte programmer. Den distribuerer belastningen mellom nett- og applikasjonsservere. HAProxy er tilgjengelig for nesten alle Linux -distribusjoner. Det er en mye brukt belastningsbalanse som er populær for effektivitet, pålitelighet og lavt minne og CPU -fotavtrykk. I dette innlegget vil vi forklare hvordan du installerer og konfigurerer HAProxy på et Ubuntu -system.

Vi har satt opp tre maskiner. Vi vil installere HAProxy på en server og Apache -webservere på to servere. HAProxy -serveren vår vil da fungere som en belastningsbalanse og vil fordele belastningen blant Apache webservere.

Merk: Prosedyren og kommandoene som er nevnt i dette innlegget er testet på Ubuntu 20.04 LTS (Focal Fossa). Den samme prosedyren er også gyldig for Debian- og Mint -distribusjoner.

Nettverksdetaljer

Vi bruker tre Ubuntu -servere; Alt på samme nettverk. Detaljene på serverne våre er som følger:

Vertsnavn: HAProxy, IP -adresse: 192.168.72.157 (Frontend Server)
Vertsnavn: Web-Server1, IP-adresse: 192.168.72.158 (Backend -servere)
Vertsnavn: Web-Server2, IP-adresse: 192.168.72.159 (Backend -servere)

Merk: Du må ha sudo -privilegier på alle serverne.

Vi vil konfigurere en maskin som en lastbalanse og de to andre som webservere. HAProxy-serveren vil være vår front-end-server som vil motta forespørslene fra brukerne og videresende dem til de to webserverne. Webserverne vil være våre backend -servere som vil motta de videresendte forespørslene.

Slik ser oppsettet vårt ut:

Sette opp webservere-backend-servere

I denne delen vil vi sette opp to webservere (Web-server1 og Web-server2) som våre backend -servere.

På web-server1 (192.168.72.158)

Utfør trinnene nedenfor på webserveren din. Sørg for å erstatte vertsnavn og IP -adresser med relevante IP -adresser og vertsnavn på webserverne dine.

1. Konfigurer vertsfilen

Web-server1, Rediger /etc/verter fil:

$ sudo nano /etc /verter

Legg deretter til vertsnavnoppføringen for Haproxy server som følger:

Hostname-of-Haproxy IP-Adress-of-Haproxy

I vårt scenario ville det være:

HAPROXY 192.168.72.157

Oppsett Apache Webserver

Installer nå Apache Web Server ved å bruke kommandoen nedenfor i terminalen. Du kan også besøke innlegget vårt på Hvordan installere Apache -webserveren på Linux.

$ sudo apt install Apache2

Aktiver og start Apache -tjenesten ved å bruke kommandoene nedenfor i terminalen:

$ sudo SystemCTL Aktiver Apache2
$ sudo systemctl start apache2

Opprett en indeksfil for Web-server1 Bruke kommandoen nedenfor i terminalen:

$ ekko "

Hallo! Dette er webserver1: 192.168.72.158

"| sudo tee/var/www/html/indeks.html

Hvis en brannmur kjører på systemet ditt, må du tillate Apache -trafikk gjennom det:

$ sudo ufw tillater 80/tcp

Last deretter inn brannmurkonfigurasjonene:

$ UFW Reload

Prøv nå å få tilgang til nettstedet i nettleseren din ved å skrive http: // etterfulgt av enten IP -adressen eller vertsnavnet til webserveren din.

http: // hostname-or-ip-address

Alternativt kan du også bruke Curl -kommandoen til å teste websiden.

$ krøll

På webserver-2 192.168.72.159)

Utfør trinnene nedenfor i den andre webserveren. Sørg for å erstatte vertsnavn og IP -adresser med relevante IP -adresser og vertsnavn på webserverne dine.

1. Konfigurer vertsfilen

I Web-server2, Rediger /etc/verter fil:

$ sudo nano /etc /verter

Legg deretter til vertsnavnoppføringen for Haproxy server som følger:

HAPROXY 192.168.72.157

2. Installer Apache Webserver

Installer nå Apache Web Server ved å bruke kommandoen nedenfor i terminalen.

$ sudo apt install Apache2

Aktiver og start Apache -tjenesten ved å bruke kommandoene nedenfor i terminalen:

$ sudo SystemCTL Aktiver Apache2
$ sudo systemctl start apache2

Opprett en indeksfil for web-server2 ved å bruke kommandoen nedenfor i terminalen:

$ ekko "

Hallo! Dette er webserver2: 192.168.72.159

"| sudo tee/var/www/html/indeks.html

Tillat Apache i brannmuren:

$ sudo ufw tillater 80/tcp

og deretter laste ned brannmurkonfigurasjoner:

$ UFW Reload

Prøv nå å få tilgang til nettstedet i nettleseren din ved å skrive http: // etterfulgt av enten IP -adressen eller vertsnavnet.

http: // hostname-or-ip-address

Alternativt kan du bruke Curl -kommandoen til å teste websiden.

$ krøll

Nå er Apache -webserverne våre klare.

Sette opp HAProxy Load Balancer-Frontend Server

I dette avsnittet vil vi sette opp en haproxy -belastningsbalanse for vår webservere. Denne HAProxy -serveren vil fungere som en frontend -server og godtar innkommende forespørsler fra klienter.

Haproxy server (192.168.72.157), utfør trinnene nedenfor for å konfigurere belastningsbalanse.

Konfigurer vertsfilen

Rediger /etc/verter Fil ved å bruke kommandoen nedenfor i terminalen:

$ sudo nano /etc /verter

Legg til følgende vertsnavnoppføringer for begge Apache webservere sammen med sitt eget vertsnavn:

192.168.72.157 HAPROXY
192.168.72.158 Web-Server1
192.168.72.159 Web-Server2

Lagre og lukk nå /etc/verter fil.

Installere HAProxy Load Balancer

Nå i dette trinnet vil vi installere HAProxy på en av vår Ubuntu -server (192.168.72.157). For å gjøre det, oppdater APT ved hjelp av følgende kommando i terminalen:

$ sudo apt-get oppdatering

Oppdater deretter pakker ved å bruke kommandoen nedenfor:

$ sudo apt-get oppgradering

Installer nå HAProxy ved å bruke følgende kommando i terminalen:

$ sudo sudo apt installer haproxy

Når installasjonen av HAProxy -serveren er ferdig, kan du bekrefte den ved å bruke kommandoen nedenfor i terminalen:

$ HAPROXY -V

Det vil vise deg den installerte versjonen av HAProxy på systemet ditt som verifiserer at HAProxy er blitt installert med hell.

Konfigurere HAProxy som en belastningsbalanse

I det følgende avsnittet vil vi konfigurere HAProxy som en belastningsbalanse. Å gjøre slik, Rediger/etc/haproxy/haproxy.CFG fil:

$ sudo nano /etc/haproxy/haproxy.CFG

Legg til følgende linjer i HAProxy.CFG -fil erstatter IP -adressene med dine egne IP -adresser.

Det Frontend Web-Frontend I konfigurasjonslinjene ovenfor forteller HAProxy å lytte til innkommende forespørsler på Port 80 av 192.168.72.157 og deretter videresende dem til backend -servere konfigurert under baksiden Web-backend. Mens du konfigurerer, erstatt IP -adressene med de relevante IP -adressene til webserverne dine.

Konfigurere HAProxy -overvåking

Med HAProxy -overvåking kan du se mye informasjon inkludert serverstatus, overført data, oppetid, øktfrekvens osv. For å konfigurere HAProxy -overvåking, legger du til følgende linjer i konfigurasjonsfilen som ligger på /etc/haproxy/haproxy.CFG:

Lytt statistikk
Bind 192.168.72.157: 8080
modus http
Alternativ fremover for
Alternativ httpclose
statistikk aktiverer
Statistikk viser-legendene
Statistikk oppdaterer 5s
statistikk uri /statistikk
Stats Realm Haproxy \ Statistikk
Statistikk Auth Kbuzdar: Kbuzdar #Login -bruker og passord for overvåking
statistikk admin hvis sant
Standard_backend Web-Backend

Ovennevnte konfigurasjon muliggjør HAProxy “statistikk”Side ved hjelp av statistikk direktiv og sikrer det med http Grunnleggende godkjenning ved hjelp av brukernavnet og passordet definert av Statistikk Auth direktiv.

Når du er ferdig med konfigurasjonene, må du lagre og lukke haproxy.CFG -fil.

Kontroller nå konfigurasjonsfilen ved å bruke kommandoen nedenfor i terminalen:

$ HAPROXY -C -F/ETC/HAPROXY/HAPROXY.CFG

Følgende utgang viser at konfigurasjonene er riktige.

Nå for å bruke konfigurasjonene, start HAProxy -tjenesten på nytt:

$ sudo SystemCTL Restart HAProxy.service

Det vil stoppe og deretter starte HAProxy -tjenesten.

For å sjekke statusen til HAProxy -tjenesten, ville kommandoen være:

$ sudo systemctl status haproxy.service

De aktiv (løping) Status i følgende utgang viser at HAProxy -serveren er aktivert og kjører fint.

Her er noen andre kommandoer for å administrere HAProxy -serveren:

For å starte HAProxy -serveren, ville kommandoen være:

$ sudo systemctl start haproxy.service

For å stoppe HAProxy -serveren, ville kommandoen være:

$ sudo systemctl stopp haproxy.service

I tilfelle du midlertidig vil deaktivere HAProxy -serveren, vil kommandoen være:

$ sudo SystemCTL deaktiverer haproxy.service

For å aktivere HAProxy-serveren, ville kommandoen være:

$ sudo SystemCTL Aktiver haproxy.service

Test haproxy

Før du tester HAProxy -oppsettet, må du sørge for at du har tilkobling til webservere. Fra HAProxy -serveren din, ping begge webservere enten med IP -adresser eller vertsnavn.

$ ping hostname-or-ip-adresse

Følgende utdata viser at HAProxy -serveren kan nå begge webserverne.

Test HA Proxy ved hjelp av en nettleser

Nå i HAProxy -serveren din, åpne hvilken som helst nettleser og type http: // etterfulgt av HAProxy Server IP -adresse som i vårt tilfelle er 192.168.72.157.

http: // 192.168.72.157

HAProxy-serveren vil alternativt sende forespørselen til begge webservere i en runde-robin-metode. Du kan teste dette ved å laste inn nettsiden på nytt noen ganger.

Dette er responsen vi fikk da vi besøkte http: // 192.168.72.157 for første gang:

Dette er responsen vi fikk da vi lastet inn nettsiden:

Du kan også bruke vertsnavnet i stedet for HAProxy Server IP -adresse.

Test ha proxy ved hjelp av krøll

Du kan også bruke Curl -kommandoen i Linux for å teste HAProxy -oppsettet. Åpne terminalen og typen krøll etterfulgt av IP -adressen eller vertsnavnet til HAProxy -serveren.

$ Curl 192.168.72.157

eller

$ krøll haproxy

Kjør Curl -kommandoen noen ganger, og du vil se responsen vekslende mellom begge webserverne.

I stedet for å kjøre kommandoene flere ganger, kan du også kjøre følgende en-linjeskript for å teste HAProxy-serveren:

$ mens sant; Do Curl 192.168.72.157; søvn 1; Ferdig

Testing HAProxy Monitoring

For å få tilgang til HAProxy Monitoring -siden, skriv inn http: // etterfulgt av IP -adressen/vertsnavnet til HAProxy Server og Port 8080/Statistikk:

http: // 192.168.72.157: 8080/statistikk

eller

http: // haproxy: 8080/statistikk

Følgende godkjenningsboks vises. Tast inn Brukernavnet og passord Du har konfigurert tidligere i konfigurasjonene og deretter trykk Ok.

Dette er statistikkrapporten for HAProxy -serveren vår.

Der har du installasjon og konfigurasjon av HAProxy Load Balancer på Linux -systemet. Vi har nettopp diskutert det grunnleggende oppsettet og konfigurasjonen av HAProxy som en lastbalanse for Apache Web -servere. Vi så også på noen kommandoer for å administrere HAProxy -serveren. Til slutt testet vi lastbalansering gjennom nettleseren og Curl -kommandoen. For mer informasjon, besøk HAProxy Official Documentation