HAProksi

Kako postaviti HAProxy kao uravnoteživač opterećenja za Nginx u CentOS 8

Kako postaviti HAProxy kao uravnoteživač opterećenja za Nginx u CentOS 8
Proxy visoke dostupnosti, također skraćeno HAProxy, lagan je i brz uravnoteživač opterećenja koji se ujedno ujedno proxy poslužitelj. Kao uravnoteživač tereta, igra presudnu ulogu u raspodjeli dolaznog web prometa na više web poslužitelja koristeći određene kriterije. Pritom osigurava visoku dostupnost i toleranciju kvarova u slučaju da postoji previše istodobnih zahtjeva koji mogu preopteretiti jedan web poslužitelj.

HaProxy koriste popularne web stranice poput Tumblr, GitHub i StackOverflow. U ovom vodiču provest ćemo vas kroz instalaciju HAProxy-a u postavljanju web poslužitelja koji se napajaju pomoću Nginxa.

Postavljanje laboratorija

3 primjerka CentOS 7 poslužitelja kao što je prikazano

IP adrese hosta
load_balancer 3.17.12.132
poslužitelj_01 3.19.229.234
poslužitelj_02 3.17.9.217

Korak 1: Uredite datoteku / etc / hosts za uravnoteživač opterećenja

Da biste započeli, prijavite se u sustav uravnoteživača opterećenja i izmijenite datoteku / etc / hosts tako da uključuje imena hosta i IP adrese dvaju web poslužitelja kao što je prikazano

$ vim / etc / hosts
3.19.229.234 poslužitelj_01
3.17.9.217 poslužitelj-02

Po završetku spremite promjene i izađite iz konfiguracijske datoteke.

Sada idite na svaki od web poslužitelja i ažurirajte / etc / hosts datoteka s IP adresom i imenom hosta uravnoteživača opterećenja

3.17.12.132 uravnoteživač opterećenja

Nakon toga, potvrdite da možete ping-u uravnoteživača opterećenja pingati s poslužitelja_01

I isto tako od server_02

Također, pobrinite se da možete pingati poslužitelje s uravnoteživača opterećenja.

Savršen ! svi poslužitelji mogu komunicirati s uravnoteživačem opterećenja!

Korak 2: Instalirajte i konfigurirajte HA proxy na uravnoteživaču opterećenja

Budući da je HA Proxy lako dostupan iz službenog spremišta CentOS-a, instalirat ćemo ga pomoću upravitelja paketa yum ili dnf.

Ali kao i uvijek, najprije ažurirajte sustav

# yum ažuriranje

Zatim instalirajte HA Proxy kao što je prikazano

# yum instaliraj haproxy

Nakon uspješne instalacije, idite do haproxy direktorija.

# cd / etc / haproxy

Najbolji postupak zahtijeva da napravimo sigurnosnu kopiju bilo koje konfiguracijske datoteke prije bilo kakvih izmjena.  Zato napravite sigurnosnu kopiju haproksi.usp datoteku preimenovanjem.

# mv haproksi.cfg haproksi.usp.bak

Zatim nastavite i otvorite konfiguracijsku datoteku

vim haproksi.usp

Obavezno izvršite izmjenu kako je prikazano

#---------------------------------------------------------------------
# Globalne postavke
#---------------------------------------------------------------------
globalno
zapisnik 127.0.0.1 lokalna2 # Konfiguracija prijave
 
chroot / var / lib / haproxy
pidfile / var / run / haproxy.pid
maxconn 4000
user haproxy #Haproxy koji se izvodi pod korisnikom i grupom "haproxy"
skupni haproksi
demon
 
# uključi statistiku unix utičnice
statistika socket / var / lib / haproxy / statistika
 
#---------------------------------------------------------------------
# uobičajene zadane vrijednosti koje će imati svi odjeljci "preslušavanje" i "pozadina"
# koristiti ako nije naznačeno u njihovom bloku
#---------------------------------------------------------------------
zadane vrijednosti
način rada http
log global
opcija httplog
opcija dontlognull
opcija http-server-close
opcija naprijed za osim 127.0.0.0/8
redispatch opcije
ponovni pokušaji 3
timeout http-zahtjev 10s
red čekanja 1m
timeout spojiti 10s
timeout klijent 1m
timeout poslužitelj 1m
timeout http-keep-alive 10s
timeout checks 10s
maxconn 3000
 
#---------------------------------------------------------------------
#HAProxy Monitoring Config
#---------------------------------------------------------------------
slušajte haproxy3-monitoring *: 8080 #Haproxy Monitoring pokrenut na priključku 8080
način rada http
opcija forwardfor
opcija httpclose
statistika omogućuje
statistika show-legende
statistika osvježava 5s
statistika uri / stats #URL za nadzor HAProxy-a
statistika carstvo Haproxy \ Statistika
statistika auth Password123: Password123 # Korisnik i lozinka za prijavu na nadzornu ploču
statistika admin ako je ISTINA
default_backend app-main #Ovo je opcionalno za nadgledanje pozadine
 
#---------------------------------------------------------------------
# FrontEnd Configuration
#---------------------------------------------------------------------
prednji glavni
vezati: 80
opcija http-server-close
opcija forwardfor
default_backend app-main
 
#---------------------------------------------------------------------
# BackEnd Round Robin kao algoritam ravnoteže
#---------------------------------------------------------------------
pozadinska aplikacija-glavna
ravnoteža roundrobin #Balance algoritam
opcija httpchk HEAD / HTTP / 1.1 \ r \ nHost: \ localhost
# Provjerite je li poslužiteljska aplikacija ispravna i ispravna - 200 statusni kod
poslužitelj poslužitelj_01 3.19.229.234: 80 provjera # Nginx1
poslužitelj poslužitelj_02 3.17.9.217: 80 provjeri # Nginx2

Obavezno izmijenite naziv hosta i IP adrese web poslužitelja kako je naznačeno u zadnja dva retka. Spremite promjene i izađite.

Sljedeći će korak biti konfiguriranje Rsysloga tako da može bilježiti HAProxy statistiku.

# vim / etc / rsyslog.konf

Obavezno uklonite komentar iz donjih redaka kako biste omogućili UDP veze

$ ModLoad imudp
$ UDPServerRun 514

Zatim nastavite i stvorite novu konfiguracijsku datoteku  haproksi.konf

# vim / etc / rsyslog.d / haproksi.konf

Zalijepite sljedeće retke, spremite i izađite

lokalno2.= info / var / log / haproxy-access.zapisnik #Za zapisnik pristupa
lokalno2.obavijest / var / log / haproxy-info.log #For Service Info - Backend, loadbalancer

Da bi promjene stupile na snagu, ponovo pokrenite rsyslog demon kako je prikazano:

# systemctl ponovno pokrenite rsyslog

Zatim pokrenite i omogućite HAProxy

# systemctl start rsyslog
# systemctl omogućiti rsyslog

Provjerite radi li HAProxy

# systemctl status rsyslog

Korak 3: Instalirajte i konfigurirajte Nginx

Sada je preostala samo instalacija Nginxa. Prijavite se na svaki od poslužitelja i prvo ažurirajte sistemske pakete:

# yum ažuriranje

Sljedeća instalacija EPEL-a (dodatni paketi za Enterprise Linux)

# yum instaliraj epel-release

Da biste instalirali Nginx, pokrenite naredbu:

# yum instaliraj nginx

Zatim pokrenite i omogućite Nginx

# systemctl start nginx
# systemctl omogući nginx

Zatim ćemo izmijeniti indeks.html datoteku u oba slučaja kako bi se demonstriralo ili simuliralo kako je uravnoteživač tereta u stanju distribuirati web promet na oba poslužitelja.

Za poslužitelj_01

# echo "poslužitelj_01. Hej ! Dobrodošli na prvi web> "indeks poslužitelja.html

Za poslužitelj_02

# echo "poslužitelj_02. Hej ! Dobrodošli na indeks drugog web poslužitelja ">.html

Da biste izvršili promjene, ponovo pokrenite Nginx

# systemctl ponovno pokrenite nginx

Korak 4: Ispitivanje radi li uravnoteživač tereta

Napokon smo na mjestu na kojem želimo vidjeti funkcionira li konfiguracija. Dakle, prijavite se u uravnoteživač tereta i izvršavajte naredbu curl više puta

# uvojak 3.17.12.132

Trebali biste dobiti izmjenični izlaz na terminalu koji prikazuje vrijednost indeksa.html s poslužitelja_01 i poslužitelja_02

Sada testirajmo pomoću web preglednika. Pregledajte IP adresu uravnoteživača tereta

http: // load-balancer-IP-adresa

Na prvoj stranici prikazat će se sadržaj s bilo kojeg web poslužitelja


Sada osvježite web stranicu i provjerite prikazuje li ona sadržaj s drugog web poslužitelja

Savršen ! Bilanca opterećenja distribuira IP promet podjednako između dva web poslužitelja !
Ovim se završava ovaj vodič o tome kako možete instalirati, kao i konfigurirati HAProxy na CentOS 8. Vaše će povratne informacije biti vrlo cijenjene.

Top 5 ergonomskih proizvoda za računalni miš za Linux
Uzrokuje li dugotrajno korištenje računala bolove u zapešću ili prstima? Patite li od ukočenih zglobova i stalno se morate rukovati? Osjećate li goruć...
How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...
Zamijenite svoje tipke miša različito za različiti softver pomoću X-Mouse Button Control
Možda vam treba alat koji bi mogao promijeniti kontrolu miša sa svakom aplikacijom koju koristite. Ako je to slučaj, možete isprobati aplikaciju pod n...