HAProxy brukes av populære nettsteder som Tumblr, GitHub og Stackoverflow. I denne guiden tar vi deg gjennom installasjonen av Haproxy i et oppsett av webserverere som er drevet med Nginx.
Laboppsett
3 forekomster av centos 7 -servere som vist
Vertsnavn IP -adresserTrinn 1: Rediger /etc /hosts -filen for lastbalansen
For å starte, logger du på Load Balancer -systemet og endrer /etc /hosts -filen for å inkludere vertsnavn og IP -adresser til de to webserverne som vist
$ vim /etc /verter
3.19.229.234 Server_01
3.17.9.217 Server-02
Når du er ferdig, lagrer du endringene og avslutter konfigurasjonsfilen.
Nå drar du ut til hver av webserverne og oppdaterer /etc/verter fil med IP -adressen og vertsnavnet til Load Balancer
3.17.12.132 Lastbalanser
Bekreft deretter at du kan pinge Load Balancer fra Server_01
Og på samme måte fra server_02
Forsikre deg også om at du kan pinge serverne fra lastbalansen.
Perfekt ! Alle servere kan kommunisere med lastbalansen!
Trinn 2: Installer og konfigurer HA -proxy på lastbalansen
Fordi HA -proxy er lett tilgjengelig fra CentOS offisielt depot, skal vi installere det ved hjelp av Yum eller DNF -pakkesjef.
Men som alltid, oppdater systemet først
# yum oppdatering
Deretter installerer du HA -proxy som vist
# yum installer haproxy
Ved vellykket installasjon, naviger til HAProxy -katalogen.
# CD /etc /haproxy
Beste praksis krever at vi sikkerhetskopierer enhver konfigurasjonsfil før vi gjør noen endringer. Så sikkerhetskopier haproxy.CFG fil ved å gi nytt navn til den.
# MV HAPROXY.CFG HAPROXY.CFG.Bak
Neste, fortsett og åpne konfigurasjonsfilen
vim haproxy.CFG
Forsikre deg om at du gjør modifiseringen som vist
#---------------------------------------------------------------------
# Globale innstillinger
#---------------------------------------------------------------------
global
Logg 127.0.0.1 Local2 #Log -konfigurasjon
chroot/var/lib/haproxy
pidfile/var/run/haproxy.PID
Maxconn 4000
Bruker HAProxy #Haproxy som kjører under bruker og gruppe "HAProxy"
Gruppe haproxy
Daemon
# Slå på statistikk UNIX -kontakten
Statistikk Socket/var/lib/haproxy/statistikk
#---------------------------------------------------------------------
# vanlige standardverdier at alle "lytt" og "backend" -seksjonene vil
# bruk hvis ikke utpekt i blokken deres
#---------------------------------------------------------------------
standardverdier
modus http
Log global
Alternativ Httplog
Alternativ Dontlognull
Alternativ HTTP-server-Close
Alternativ fremover unntatt 127.0.0.0/8
Alternativ Redispatch
Forsøk 3
Timeout HTTP-Request 10s
Timeout -kø 1M
Timeout Connect 10s
Timeout -klient 1M
Timeout Server 1M
Timeout HTTP-Keep-Alive 10s
Timeout Check 10s
Maxconn 3000
#---------------------------------------------------------------------
#Haproxy Monitoring Config
#---------------------------------------------------------------------
Lytt HAProxy3-overvåking *: 8080 #haproxy Monitoring Run på port 8080
modus http
Alternativ fremover for
Alternativ httpclose
statistikk aktiverer
Statistikk viser-legendene
Statistikk oppdaterer 5s
Statistikk URI /Statistikk #URL for HAProxy Monitoring
Stats Realm Haproxy \ Statistikk
Statistikk Auth Password123: Password123#Bruker og passord for pålogging til overvåkningsdashbordet
statistikk admin hvis sant
Default_backend App-Main #Dette er eventuelt for å overvåke backend
#---------------------------------------------------------------------
# Frontend -konfigurasjon
#---------------------------------------------------------------------
Frontend Main
bind *: 80
Alternativ HTTP-server-Close
Alternativ fremover for
standard_backend app-main
#---------------------------------------------------------------------
# Backend Round Robin som balansealgoritme
#---------------------------------------------------------------------
Backend App-Main
Balanse Roundrobin #Balance -algoritme
Alternativ httpchk head / http / 1.1 \ r \ nhost: \ localhost
#Sjekk serverapplikasjonen er oppe og helbredet - 200 statuskode
server server_01 3.19.229.234: 80 sjekk #nginx1
server server_02 3.17.9.217: 80 sjekk #nginx2
Sørg for å endre webserverenes vertsnavn og IP -adresser som angitt i de to siste linjene. Lagre endringene og avkjørselen.
Neste trinn vil være å konfigurere RsySlog for å kunne logge Haproxy Statistics.
# vim /etc /rsyslog.konf
Forsikre deg om at du ukomment linjene nedenfor for å tillate UDP -tilkoblinger
$ MODLOAD IMUDP
$ UDPSERVERRUN 514
Neste, fortsett og opprett en ny konfigurasjonsfil haproxy.konf
# vim /etc /rsyslog.D/HAProxy.konf
Lim inn følgende linjer, lagre og gå ut
Local2.= info/var/log/haproxy-tilgang.Logg #for tilgangslogg
Local2.Legg merke til/var/log/haproxy-info.Logg #For Service Info - Backend, LoadBalancer
For at endringene skal få virkning på nytt, start RSYSLOG -demonen som vist:
# SystemCTL RESTART RSYSLOG
Start og aktiver Haproxy
# systemctl start rsyslog
# SystemCTL Aktiver RSYSLOG
Kontroller at HAProxy kjører
# SystemCTL -status RSYSLOG
Trinn 3: Installer og konfigurer Nginx
Nå er den eneste delen som gjenstår installasjonen av Nginx. Logg deg på hver av serverne og oppdater først systempakkene:
# yum oppdatering
Neste installer Epel (ekstra pakker for Enterprise Linux)
# yum installer epel-release
For å installere Nginx, kjør kommandoen:
# yum install nginx
Neste, start og aktiver Nginx
# SystemCTL Start Nginx
# SystemCTL Aktiver Nginx
Vi skal da endre indeksen.HTML -fil i begge tilfeller for å demonstrere eller simulere hvordan lastbalansen er i stand til å distribuere netttrafikk på begge serverne.
For server_01
# ekko "server_01. Hei ! Velkommen til den første webserveren "> Indeks.html
For server_02
# ekko "server_02. Hei ! Velkommen til den andre webserveren "> Indeks.html
For at endringene skal utføres, start NGINX på nytt
# SystemCTL Restart Nginx
Trinn 4: Testing hvis lastbalansen fungerer
Vi er endelig på det punktet hvor vi vil se om konfigurasjonen fungerer. Så logg inn på Load Balancer og utfør Curl -kommandoen gjentatte ganger
# krøll 3.17.12.132
Du bør få vekslende utgang på terminalen som viser verdien av indeksen.html fra server_01 og server_02
La oss nå teste ved hjelp av en nettleser. Bla gjennom Load Balancer's IP -adresse
http: // Load-Balancer-iP-Adress
Den første siden vil vise innhold fra noen av webserverne
Oppdater nå websiden og sjekk om den viser innhold fra den andre webserveren
Perfekt ! Lastbalansen distribuerer IP -trafikk likt mellom de to webserverne !
Dette pakker opp denne opplæringen om hvordan du kan installere samt konfigurere Haproxy på CentOS 8. Din tilbakemelding vil bli satt stor pris på.