HAProxy înseamnă proxy de înaltă disponibilitate. Este o aplicație gratuită și open source scrisă în limbaj de programare C. Aplicația HAProxy este utilizată ca TCP / HTTP Load Balancer și pentru soluții proxy. Cea mai obișnuită utilizare a aplicației HAProxy este de a distribui volumul de lucru pe mai multe servere, de exemplu, server web, server de baze de date, etc. îmbunătățind astfel performanța generală și fiabilitatea serverului mediu inconjurator.
Aplicația extrem de eficientă și rapidă este utilizată de multe dintre reputațiile organizației mondiale, care includ, dar nu se limitează la - Twitter, Reddit, GitHub și Amazon. Este disponibil pentru platformele Linux, BSD, Solaris și AIX.
În acest tutorial, vom discuta despre procesul de configurare a unui echilibrator de sarcină cu disponibilitate ridicată folosind HAProxy pentru a controla traficul aplicațiilor bazate pe HTTP (servere web) separând cererile de pe mai multe servere.
Pentru acest articol, folosim cea mai recentă versiune stabilă a versiunii HAProxy, adică
1.5.10 lansat pe 31 decembrie 2014. Și, de asemenea, îl folosim CentOS 6.5 pentru această configurare, dar instrucțiunile de mai jos funcționează și pe distribuțiile CentOS / RHEL / Fedora și Ubuntu / Debian.Aici serverul nostru HAProxy de echilibrare a încărcării având numele de gazdă ca websrv.tecmintlocal.com cu adresa IP 192.168.0.125.
Sistem de operare: CentOS 6.5. Adresa IP: 192.168.0.125. Numele gazdei: websrv.tecmintlocal.com.
Celelalte patru mașini funcționează cu servere web precum Apache.
Server web # 1: CentOS 6.5 [IP: 192.168.0.121] - [nume gazdă: web1srv.tecmintlocal.com] Server web # 2: CentOS 6.5 [IP: 192.168.0.122] - [nume gazdă: web2srv.tecmintlocal.com] Server web # 3: CentOS 6.5 [IP: 192.168.0.123] - [nume gazdă: web3srv.tecmintlocal.com] Server web # 4: CentOS 6.5 [IP: 192.168.0.124] - [nume gazdă: web4srv.tecmintlocal.com]
1. Mai întâi trebuie să instalăm Apache în toate cele patru server-uri și să partajăm oricare dintre site-uri, pentru instalarea Apache în toate cele patru server-uri de aici vom folosi următoarea comandă.
# yum install httpd [On Palarie rosiesisteme bazate pe] # apt-get install apache2 [ActivatDebian sisteme bazate pe]
2. După instalarea serverului web Apache pe toate cele patru computere client, puteți verifica oricui din server dacă Apache rulează accesându-l prin adresa IP din browser.
http://192.168.0.121.
3. În majoritatea distribuțiilor moderne Linux de astăzi, HAPRoxy poate fi instalat cu ușurință din depozitul de bază implicit utilizând managerul de pachete implicit da sau apt-get.
De exemplu, pentru a instala HAProxy pe versiunile RHEL / CentOS / Fedora și Debian / Ubuntu, rulați următoarea comandă. Aici am inclus openssl de asemenea, pentru că vom configura HAProxy cu suport SSL și NON-SSL.
# yum install haproxy openssl-devel [On Palarie rosiesisteme bazate pe] # apt-get install haproxy [ActivatDebian sisteme bazate pe]
Notă: Pe Debian Whezzy 7.0, trebuie să activăm depozitul de backports adăugând un fișier nou backports.listsub "/etc/apt/sources.list.d/”Cu următorul conținut.
# echo "deb http://cdn.debian.net/debian wheezy-backports main ">> /etc/apt/sources.list.d/backports.list.
Apoi, actualizați baza de date a depozitului și instalați HAProxy.
# apt-get update. # apt-get install haproxy -t wheezy-backports.
4. Apoi, trebuie să activăm funcția de înregistrare în HAProxy pentru depanarea viitoare. Deschideți fișierul principal de configurare HAProxy ‘/etc/haproxy/haproxy.cfg„Cu alegerea dvs. de editor.
# vim /etc/haproxy/haproxy.cfg.
Apoi, urmați instrucțiunile specifice distro pentru a configura caracteristica de înregistrare în HAProxy.
Sub #Setări globale, activați următoarea linie.
jurnal 127.0.0.1 local2.
Sub #Setări globale, înlocuiți următoarele rânduri,
log / dev / log local0. jurnal / dev / log local1 notice
Cu,
jurnal 127.0.0.1 local2.
5. Apoi, trebuie să activăm recepția syslog UDP în „/etc/rsyslog.conf‘Fișier de configurare pentru a separa fișierele jurnal pentru HAProxy sub /var/log director. Deschideți-vărsyslog.conf„Fișier cu editorul ales.
# vim /etc/rsyslog.conf.
Uncommnet ModLoad și UDPServerRun, Aici serverul nostru va asculta Portul 514 pentru a colecta jurnalele în syslog.
# Oferă recepție syslog UDP. $ ModLoad imudp. $ UDPServerRun 514.
6. Apoi, trebuie să creăm un fișier separat „haproxy.conf' sub '/etc/rsyslog.d/'Director pentru a configura fișiere jurnal separate.
# vim /etc/rsyslog.d/haproxy.conf.
Adăugați următoarea linie la fișierul nou creat.
local2. * /var/log/haproxy.log.
În cele din urmă, reporniți serviciul rsyslog pentru a actualiza noile modificări.
# service rsyslog restart