Kusawazisha Mzigo na AWS ELB

Salaam wote! Kozi inaanza leo "AWS kwa Wasanidi Programu", kuhusiana na ambayo tulishikilia wavuti ya mada inayolingana iliyowekwa kwa ukaguzi wa ELB. Tuliangalia aina za kusawazisha na kuunda matukio kadhaa ya EC2 na mizani. Pia tulijifunza mifano mingine ya matumizi.

Kusawazisha Mzigo na AWS ELB

Baada ya kusikiliza mtandao, Utakuwa:

  • kuelewa Usawazishaji wa Mzigo wa AWS ni nini;
  • kujua aina za Elastic Load Balancer na vipengele vyake;
  • tumia AWS ELB katika mazoezi yako.

Kwa nini unahitaji kujua hili kabisa?

  • muhimu ikiwa unapanga kufanya mitihani ya uthibitishaji wa AWS;
  • hii ni njia rahisi ya kusambaza mzigo kati ya seva;
  • Hii ni njia rahisi ya kuongeza Lambda kwenye huduma yako (ALB).

Aliendesha somo la wazi Rishat Teregulov, mhandisi wa mifumo katika kampuni ya uuzaji kwa ukuzaji na usaidizi wa tovuti.

Utangulizi

Kisawazisha cha Mzigo wa Elastic ni nini kinaweza kuonekana kwenye mchoro hapa chini, ambao unaonyesha mfano rahisi:

Kusawazisha Mzigo na AWS ELB

Load Balancer hukubali maombi na kuyasambaza katika matukio mbalimbali. Tuna mfano mmoja tofauti, kuna kazi za Lambda na kuna kikundi cha AutoScaling (kundi la seva).

Aina za AWS ELB

1. Hebu tuangalie aina kuu:

Kisawazisha cha Mzigo cha Kawaida. Kisawazisha cha kwanza kabisa cha upakiaji kutoka kwa AWS, hufanya kazi kwenye Tabaka la 4 la OSI na Tabaka la 7, kikisaidia HTTP, HTTPS, TCP na SSL. Inatoa usawazishaji wa msingi wa upakiaji katika matukio mengi ya Amazon EC2 na hufanya kazi katika viwango vya ombi na muunganisho. Wacha tuifungue (iliyoangaziwa kwa kijivu):

Kusawazisha Mzigo na AWS ELB

Mizani hii inachukuliwa kuwa ya kizamani, kwa hivyo inashauriwa kutumika tu katika hali fulani. Kwa mfano, kwa programu ambazo ziliundwa kwenye mtandao wa EC2‑Classic. Kimsingi, hakuna mtu anayetuzuia kuiunda:

Kusawazisha Mzigo na AWS ELB

2. Mizani ya Mzigo wa Mtandao. Inafaa kwa mzigo mzito, hufanya kazi katika OSI Layer 4 (inaweza kutumika katika EKS na ECS), TCP, UDP na TLS zinaauniwa.

Network Load Balancer huelekeza trafiki kwenye malengo katika Amazon VPC na ina uwezo wa kuchakata mamilioni ya maombi kwa sekunde kwa utulivu wa chini sana. Zaidi ya hayo, imeboreshwa kushughulikia mifumo ya trafiki na mizigo ya ghafla na inayobadilika.

3. Usawazishaji wa Mzigo wa Maombi. Inafanya kazi katika safu ya 7, ina usaidizi wa Lambda, inasaidia sheria za kiwango cha kichwa na njia, inasaidia HTTP na HTTPS.
Hutoa uelekezaji wa ombi la hali ya juu unaolenga kuwasilisha programu zilizojengwa kwenye usanifu wa kisasa, ikijumuisha huduma ndogo na kontena. Huelekeza trafiki kwa malengo katika Amazon VPC kulingana na maudhui ya ombi.

Kwa watumiaji wengi, Kisawazisha cha Upakiaji wa Programu kilikuwa chaguo la kwanza kuchukua nafasi ya Kisawazisha cha Kawaida cha Mzigo, kwa sababu TCP si ya kawaida kama HTTP.

Wacha tuiunda pia, kama matokeo ambayo tayari tutakuwa na mizani mbili ya mzigo:

Kusawazisha Mzigo na AWS ELB

Vipengele vya Mizani ya Mzigo

Vipengele vya Mizani ya Kawaida ya Mzigo (ya kawaida kwa wasawazishaji wote):

  • Fikia Sera ya Kuingia

- kumbukumbu zako za ufikiaji za ELB. Ili kufanya mipangilio, unaweza kwenda kwa Maelezo na uchague kitufe cha "Badilisha sifa":

Kusawazisha Mzigo na AWS ELB

Kisha tunataja S3Bucket - Hifadhi ya kitu cha Amazon:

Kusawazisha Mzigo na AWS ELB

  • Mpango

- mizani ya ndani au nje. Jambo la kuzingatia ni kama LoadBalancer yako lazima ipokee anwani za nje ili iweze kufikiwa kutoka nje, au inaweza kuwa kikisawazisha mzigo wako wa ndani;

  • Vikundi vya Usalama

- udhibiti wa ufikiaji kwa mizani. Kimsingi hii ni firewall ya kiwango cha juu.

Kusawazisha Mzigo na AWS ELB

Kusawazisha Mzigo na AWS ELB

  • Mashimo

- neti ndogo ndani ya VPC yako (na, ipasavyo, eneo la upatikanaji). Nyanda ndogo hubainishwa wakati wa kuunda. Ikiwa VPC zimedhibitiwa kulingana na eneo, basi Nyanda ndogo hudhibitiwa na maeneo ya upatikanaji. Wakati wa kuunda Mizani ya Mzigo, ni bora kuiunda kwa angalau subnets mbili (husaidia ikiwa matatizo yatatokea na Eneo moja la Upatikanaji);

  • Wasikilizaji

- itifaki zako za kusawazisha. Kama ilivyoelezwa hapo awali, kwa Kisawazisha cha Mzigo cha Kawaida inaweza kuwa HTTP, HTTPS, TCP na SSL, kwa Kisawazisha cha Upakiaji wa Mtandao - TCP, UDP na TLS, kwa Kisawazisha cha Upakiaji wa Maombi - HTTP na HTTPS.

Mfano wa Kisawazisha cha Kawaida cha Upakiaji:

Kusawazisha Mzigo na AWS ELB

Lakini katika Usawazishaji wa Mzigo wa Maombi tunaona kiolesura tofauti kidogo na mantiki tofauti kwa ujumla:

Kusawazisha Mzigo na AWS ELB

Vipengee vya Sawazisha v2 vya Pakia (ALB na NLB)

Sasa hebu tuangalie kwa karibu visawazishaji vya toleo la 2 la Mizani ya Upakiaji wa Upakiaji na Kisawazisha cha Mzigo wa Mtandao. Wasawazishaji hawa wana vipengele vyao vya vipengele. Kwa mfano, dhana kama vile Vikundi Lengwa ilionekana - matukio (na kazi). Shukrani kwa kipengele hiki, tunayo fursa ya kubainisha ni yapi kati ya Makundi Lengwa tunayotaka kuelekeza trafiki.

Kusawazisha Mzigo na AWS ELB

Kusawazisha Mzigo na AWS ELB

Kwa maneno rahisi, katika Vikundi Lengwa tunataja matukio ambapo trafiki itakuja. Iwapo katika Kisawazisha sawa cha Mzigo wa Kawaida unaunganisha mara moja kiwango cha kusawazisha, kisha kwenye Kisawazisho cha Upakiaji wa Programu wewe kwanza:

  • tengeneza Mizani ya Mzigo;
  • kuunda kikundi cha walengwa;
  • moja kwa moja kupitia bandari zinazohitajika au sheria za Mizani ya Mizigo kwa Vikundi Lengwa vinavyohitajika;
  • katika Vikundi Lengwa unapeana mifano.

Mantiki hii ya uendeshaji inaweza kuonekana kuwa ngumu zaidi, lakini kwa kweli ni rahisi zaidi.

Sehemu inayofuata ni Sheria za msikilizaji (sheria za uelekezaji). Hii inatumika kwa Kisawazisha cha Upakiaji wa Programu pekee. Ikiwa katika Kisawazisha cha Mzigo wa Mtandao unaunda tu Msikilizaji, na inatuma trafiki kwa kikundi maalum cha Lengwa, kisha katika Kisawazisha cha Upakiaji wa Maombi kila kitu. furaha zaidi na rahisi.

Kusawazisha Mzigo na AWS ELB

Sasa hebu tuseme maneno machache kuhusu sehemu inayofuata - IP ya kunyooka (anwani tuli za NLB). Ikiwa sheria za uelekezaji sheria za Msikilizaji ziliathiri Kisawazisha cha Upakiaji wa Programu pekee, basi IP Elastic iliathiri Kisawazisha cha Upakiaji wa Mtandao pekee.

Wacha tuunde Kisawazisha cha Upakiaji wa Mtandao:

Kusawazisha Mzigo na AWS ELB

Kusawazisha Mzigo na AWS ELB

Na tu wakati wa mchakato wa uundaji tutaona kwamba tunapewa fursa ya kuchagua Elastic IP:

Kusawazisha Mzigo na AWS ELB

IP Elastic hutoa anwani moja ya IP inayoweza kuhusishwa na matukio tofauti ya EC2 baada ya muda. Ikiwa mfano wa EC2 una anwani ya IP ya Elastic na mfano huo umesitishwa au kusimamishwa, unaweza kuhusisha mara moja mfano mpya wa EC2 na anwani ya IP ya Elastic. Hata hivyo, programu yako ya sasa haitaacha kufanya kazi, kwa kuwa programu bado zinaona anwani sawa ya IP, hata kama EC2 halisi imebadilika.

Hapa kesi nyingine ya matumizi juu ya mada ya kwa nini Elastic IP inahitajika. Angalia, tunaona anwani 3 za IP, lakini hazitakaa hapa milele:

Kusawazisha Mzigo na AWS ELB

Amazon huwabadilisha kwa wakati, labda kila sekunde 60 (lakini kwa mazoezi, kwa kweli, mara chache). Hii ina maana kwamba anwani za IP zinaweza kubadilika. Na katika kesi ya Mizani ya Mzigo wa Mtandao, unaweza tu kufunga anwani ya IP na kuionyesha katika sheria zako, sera, nk.

Kusawazisha Mzigo na AWS ELB

Chora hitimisho

ELB hutoa usambazaji wa kiotomatiki wa trafiki inayoingia katika malengo mengi (vyombo, matukio ya Amazon EC2, anwani za IP, na utendaji wa Lambda). ELB ina uwezo wa kusambaza trafiki yenye mizigo tofauti ndani ya Eneo moja la Upatikanaji na katika Maeneo mengi ya Upatikanaji. Mtumiaji anaweza kuchagua kutoka kwa aina tatu za visawazishaji vinavyotoa upatikanaji wa juu, kupima kiotomatiki na ulinzi mzuri. Yote hii ni muhimu ili kuhakikisha uvumilivu wa makosa ya maombi yako.

Faida kuu:

  • upatikanaji wa juu. Mkataba wa huduma unachukua upatikanaji wa 99,99% kwa salio la mzigo. Kwa mfano, Kanda nyingi za Upatikanaji huhakikisha kuwa trafiki inachakatwa na vitu vyenye afya pekee. Kwa kweli, unaweza kusawazisha mzigo katika eneo zima, kuelekeza trafiki kwenye malengo ya afya katika maeneo tofauti ya upatikanaji;
  • usalama. ELB inafanya kazi na Amazon VPC, ikitoa uwezo mbalimbali wa usalama - usimamizi wa cheti jumuishi, uthibitishaji wa mtumiaji na usimbuaji wa SSL/TLS. Yote kwa pamoja hutoa usimamizi wa kati na rahisi wa mipangilio ya TLS;
  • unyumbufu. ELB inaweza kushughulikia mabadiliko ya ghafla katika trafiki ya mtandao. Na ujumuishaji wa kina na Kuongeza Kiotomatiki hupa programu rasilimali za kutosha ikiwa mzigo utabadilika, bila kuhitaji uingiliaji wa mwongozo;
  • kubadilika. Unaweza kutumia anwani za IP kuelekeza maombi kwa walengwa wa programu zako. Hii hutoa kubadilika wakati wa kuibua programu lengwa, hivyo basi kutoa uwezo wa kupangisha programu nyingi kwa mfano mmoja. Kwa kuwa programu zinaweza kutumia bandari moja ya mtandao na kuwa na vikundi tofauti vya usalama, mawasiliano kati ya programu hurahisishwa tunapokuwa na, tuseme, usanifu wa msingi wa huduma ndogo;
  • ufuatiliaji na ukaguzi. Unaweza kufuatilia programu kwa wakati halisi kwa kutumia vipengele vya Amazon CloudWatch. Tunazungumza juu ya vipimo, kumbukumbu, ufuatiliaji wa ombi. Kwa maneno rahisi, utaweza kutambua matatizo na kubainisha vikwazo vya utendaji kwa usahihi kabisa;
  • kusawazisha mzigo wa mseto. Uwezo wa kupakia salio kati ya rasilimali za ndani ya majengo na AWS kwa kutumia kisawazisha mizigo sawa hurahisisha kuhamisha au kupanua programu za tovuti hadi kwenye wingu. Kushughulikia kutofaulu pia hurahisishwa kwa kutumia wingu.

Ikiwa una nia ya maelezo, hapa kuna viungo kadhaa muhimu zaidi kutoka kwa tovuti rasmi ya Amazon:

  1. Kusawazisha Mzigo wa Elastic.
  2. Uwezo wa Kusawazisha Mzigo wa Elastic.

Chanzo: mapenzi.com

Kuongeza maoni