HAProxy 1.7 instalēšana operētājsistēmā Debian 9.1 (Stretch)

HAProxy ir tīkla programmatūras lietojumprogramma, kas piedāvā augstu pieejamību, slodzes līdzsvarošanu un starpniekserveri TCP un HTTP tīkla lietojumprogrammām. Tas ir piemērots vietnēm ar lielu trafiku un nodrošina daudzas populāras vietnes visā tīmeklī. Šajā rakstā tiks parādīts, kā instalēt un konfigurēt HAProxy operētājsistēmā Debian 9.1.

Lai gan HAProxy ir vairākas svarīgas funkcijas, šajā rakstā galvenā uzmanība tiek pievērsta tam, kā iestatīt HAProxy tīmekļa lietojumprogrammas "starpniekserveri".

Prasības

  • Vismaz divi Vultr serveri (slodzes līdzsvarošanas funkcionalitātei) ar jūsu vietni vai tīmekļa lietojumprogrammu, kas ir izvietota abos.

HAProxy instalēšana

Debian 9 jau tiek piegādāts kopā ar HAProxy 1.7 (jaunākā stabilā versija rakstīšanas laikā), un mēs varam to vienkārši instalēt, izmantojot apt-get:

# apt-get update
# apt-get install haproxy

Ja iepriekšējās komandas bija veiksmīgas, tad esat instalējis HAProxy un varat pāriet uz nākamo darbību.

HAProxy konfigurēšana

HAProxy konfigurācijas fails ir sadalīts divās sadaļās — "globālais" un "starpniekserveri". Viens no tiem attiecas uz visa procesa konfigurāciju, savukārt pēdējā sastāv no noklusējuma konfigurācijas, priekšgala un aizmugursistēmas sadaļām.

Globālā sadaļa

Izmantojot savu iecienītāko teksta redaktoru, atveriet /etc/haproxy/haproxy.cfgun ievērojiet iepriekš definētās sadaļas: "globālā" un "noklusējuma". Pirmā lieta, ko vēlaties darīt, ir palielināt maxconnlīdz saprātīgam izmēram, jo ​��tas ietekmē savienojumus, ko pieļauj HAProxy. Pārāk daudz savienojumu var izraisīt jūsu tīmekļa pakalpojuma avāriju daudzu pieprasījumu dēļ. Jums būs jāpielāgo izmērs, lai redzētu, kas jums ir piemērots. Globālajā sadaļā esam izvēlējušies maxconnvērtību 3072.

global
    daemon
    maxconn 3072

Noklusējuma sadaļā sadaļā režīms pievienojiet šādu rindiņu http:

option forwardfor

Tādējādi X-Forwarded-Forkatram pieprasījumam tiks pievienotas galvenes, kas ļaus jūsu aizmugursistēmas serveriem uzzināt lietotāja sākotnējo IP adresi.

Pievienojiet arī šo rindiņu, lai servera pusē iespējotu HTTP savienojuma aizvēršanas režīmu, vienlaikus saglabājot iespēju klienta pusē atbalstīt HTTP saglabāšanu. Tas samazina latentumu klienta pusē un palīdz ietaupīt servera resursus:

option http-server-close

Ja vēlaties izmantot saglabāšanu dzīvajā gan klienta, gan servera pusē, varat izmantot option http-keep-alivetā vietā. Šī opcija ir īpaši noderīga, ja jauna savienojuma izveides ar serveri izmaksas ir ievērojamas salīdzinājumā ar pieprasītā resursa izgūšanas izmaksām.

Visbeidzot, iegūtais konfigurācijas fails izskatīsies apmēram šādi:

defaults
    mode http
    option forwardfor
    option http-server-close
    timeout connect 5000ms
    timeout client 50000ms
    timeout server 50000ms

Starpniekserveru sadaļa

Lai iestatītu starpniekserveri, konfigurācijas failam būs jāpievieno divas sadaļas, lai definētu divas starpniekservera daļas: priekšgalu un aizmuguri.

Priekšgala konfigurācija

Priekšgals apstrādās jūsu HTTP savienojumus. haproxy.cfgFaila beigās pievienojiet šo :

frontend http-frontend
    bind public_ip:80
    reqadd X-Forwarded-Proto:\ http
    default_backend wwwbackend

Noteikti nomainiet to public_ipar sava servera publisko IP adresi vai domēna nosaukumu.

Aizmugursistēmas konfigurācija

Iestatiet aizmugursistēmu, konfigurācijas faila beigās pievienojot šādas rindiņas:

backend wwwbackend
    server 1-www server1_ip:80 check
    server 2-www server2_ip:80 check
    server 3-www server3_ip:80 check

Šeit izmantotā aizmugursistēmas konfigurācija izveido 3 savienojumus ar nosaukumu X-www. ( Xir 1, 2 vai 3.) Katrs no tiem atbilst serverX_ip:80 adresei. (Aizstāt serverX_ipar savu Vultr gadījumu IP adresēm.) Tas ļaus slodzes līdzsvaru starp katru serveri norādītajā serveru kopā (pieņemot, ka katra IP adrese atbilst citam serverim). Šī checkopcija liek slodzes līdzsvarotājam veikt servera veselības pārbaudes.

Saglabājiet konfigurācijas failu un pēc tam restartējiet HAProxy:

service haproxy restart

Ja viss darbojas, jūs varēsiet izveidot savienojumu ar http://public_ip/(aizstāt to ar savu publisko IP vai domēna nosaukumu, kā konfigurēts priekšgala darbībā) un skatīt savu vietni.

Atkļūdošanas kļūdas

Ja jūsu HAProxy instance atsakās startēt pēc modifikācijām, iespējams, ka konfigurācijas failā ir radusies kļūda. Lai konfigurācijas failā saņemtu skaidrus ziņojumus par problēmu, varat mēģināt startēt HAProxy manuāli, izmantojot šo komandu:

# haproxy -f /etc/haproxy/haproxy.cfg

Piemēram, ja redzat šādu izvadi:

[ALERT] 234/195612 (2561) : parsing [/etc/haproxy/haproxy.cfg:48] : server 1-www has neither service port nor check port nor tcp_check rule 'connect' with port information. Check has been disabled.
[ALERT] 234/195612 (2561) : Error(s) found in configuration file : /etc/haproxy/haproxy.cfg
[ALERT] 234/195612 (2561) : Fatal errors found in configuration.

Pēc tam esat aizmirsis norādīt servera porta numuru 1-www.

Atstājiet komentāru

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.

DDOS uzbrukumi: īss pārskats

DDOS uzbrukumi: īss pārskats

Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.

Piektdiena: kas notika ar AI vadītām automašīnām?

Piektdiena: kas notika ar AI vadītām automašīnām?

Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.

Lielo datu atsauces arhitektūras slāņu funkcijas

Lielo datu atsauces arhitektūras slāņu funkcijas

Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.

Datu glabāšanas evolūcija – infografika

Datu glabāšanas evolūcija – infografika

Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk