Pagbalanse sa Pag-load sa AWS ELB

Kumusta tanan! Magsugod ang kurso karong adlawa "AWS alang sa mga Developer", nga may kalabotan diin nagpahigayon kami usa ka katugbang nga tematik nga webinar nga gipahinungod sa pagsusi sa ELB. Gitan-aw namon ang mga tipo sa mga balanse ug nagmugna daghang mga higayon sa EC2 nga adunay usa ka balanse. Gitun-an usab namo ang ubang mga pananglitan sa paggamit.

Pagbalanse sa Pag-load sa AWS ELB

Human sa pagpaminaw sa webinar, Ikaw:

  • sabta kung unsa ang AWS Load Balancing;
  • nahibal-an ang mga klase sa Elastic Load Balancer ug ang mga sangkap niini;
  • gamita ang AWS ELB sa imong praktis.

Ngano nga kinahanglan nimo nga mahibal-an kini?

  • mapuslanon kung nagplano ka nga mokuha sa mga eksaminasyon sa sertipikasyon sa AWS;
  • kini usa ka yano nga paagi sa pag-apod-apod sa load tali sa mga server;
  • Kini usa ka yano nga paagi aron idugang ang Lambda sa imong serbisyo (ALB).

Nagpahigayon og bukas nga leksyon Rishat Teregulov, systems engineer sa usa ka kompanya sa marketing alang sa pagpalambo ug suporta sa website.

Pasiuna

Unsa ang usa ka Elastic Load Balancer makita sa diagram sa ubos, nga nagpakita sa usa ka yano nga pananglitan:

Pagbalanse sa Pag-load sa AWS ELB

Gidawat sa Load Balancer ang mga hangyo ug giapod-apod kini sa mga higayon. Adunay kami usa ka bulag nga pananglitan, adunay mga gimbuhaton sa Lambda ug adunay usa ka grupo sa AutoScaling (usa ka grupo sa mga server).

Mga Uri sa AWS ELB

1. Atong tan-awon ang mga nag-unang matang:

Classic nga Load Balancer. Ang labing una nga load balancer gikan sa AWS, nagtrabaho sa OSI Layer 4 ug Layer 7, nga nagsuporta sa HTTP, HTTPS, TCP ug SSL. Naghatag kini og sukaranan nga pagbalanse sa load sa daghang mga higayon sa Amazon EC2 ug nagtrabaho sa parehas nga lebel sa hangyo ug koneksyon. Atong ablihan kini (gi-highlight sa gray):

Pagbalanse sa Pag-load sa AWS ELB

Kini nga balancer giisip nga karaan na, mao nga kini girekomendar nga gamiton lamang sa pipila ka mga kaso. Pananglitan, alang sa mga aplikasyon nga gitukod sa EC2‑Classic nga network. Sa prinsipyo, walay nagpugong kanato sa paghimo niini:

Pagbalanse sa Pag-load sa AWS ELB

2. Network Load Balancer. Angayan alang sa bug-at nga mga karga sa trabaho, naglihok sa OSI Layer 4 (magamit sa EKS ug ECS), gisuportahan ang TCP, UDP ug TLS.

Ang Network Load Balancer nag-ruta sa trapiko ngadto sa mga target sa Amazon VPC ug makahimo sa pagproseso sa minilyon nga mga hangyo kada segundo nga adunay ultra-low latency. Dugang pa, gi-optimize kini sa pagdumala sa mga pattern sa trapiko nga adunay kalit ug nagbag-o nga mga karga.

3. Application Load Balancer. Nagtrabaho sa layer 7, adunay suporta sa Lambda, nagsuporta sa mga lagda sa lebel sa header ug agianan, nagsuporta sa HTTP ug HTTPS.
Naghatag ug advanced nga pagruta sa hangyo nga naka-focus sa paghatud sa mga aplikasyon nga gitukod sa modernong mga arkitektura, lakip ang mga microservice ug mga sudlanan. Nagdumala sa trapiko ngadto sa mga target sa Amazon VPC base sa sulod sa hangyo.

Alang sa daghang mga tiggamit, ang Application Load Balancer mao ang una nga kapilian nga ilisan ang Classic Load Balancer, tungod kay ang TCP dili kasagaran sama sa HTTP.

Himoon usab nato kini, isip resulta niini aduna na kitay duha ka load balancer:

Pagbalanse sa Pag-load sa AWS ELB

Mga Bahagi sa Balanse sa Pag-load

Komon nga Balanse sa Luwas nga mga sangkap (komon sa tanang balanse):

  • Pag-access sa Patakaran sa Pag-log

β€” imong ELB access logs. Aron makahimo og mga setting, mahimo kang moadto sa Deskripsyon ug pilia ang buton nga "I-edit ang mga hiyas":

Pagbalanse sa Pag-load sa AWS ELB

Dayon among gipiho ang S3Bucket - Amazon object storage:

Pagbalanse sa Pag-load sa AWS ELB

  • Pamaagi

- internal o eksternal nga balanse. Ang punto mao kung ang imong LoadBalancer kinahanglan nga makadawat sa mga eksternal nga adres aron ma-access gikan sa gawas, o mahimo ba kini imong internal nga balanse sa pagkarga;

  • Mga Security Group

- kontrol sa pag-access sa balancer. Sa tinuud kini usa ka taas nga lebel nga firewall.

Pagbalanse sa Pag-load sa AWS ELB

Pagbalanse sa Pag-load sa AWS ELB

  • Mga subnet

β€” mga subnet sa sulod sa imong VPC (ug, sa ingon, availability zone). Ang mga subnet gipiho sa panahon sa paghimo. Kung ang mga VPC limitado sa rehiyon, nan ang mga Subnet gilimitahan sa mga sona nga magamit. Kung maghimo usa ka Load Balancer, mas maayo nga buhaton kini sa labing menos duha ka subnet (makatabang kung adunay mga problema sa usa ka Availability Zone);

  • Mga tigpaminaw

- ang imong balanse nga mga protocol. Sama sa gihisgutan sa sayo pa, alang sa Classic Load Balancer kini mahimong HTTP, HTTPS, TCP ug SSL, alang sa Network Load Balancer - TCP, UDP ug TLS, para sa Application Load Balancer - HTTP ug HTTPS.

Pananglitan para sa Classic Load Balancer:

Pagbalanse sa Pag-load sa AWS ELB

Apan sa Application Load Balancer atong makita ang usa ka gamay nga lahi nga interface ug kasagaran lainlain nga lohika:

Pagbalanse sa Pag-load sa AWS ELB

Load Balancer v2 nga mga sangkap (ALB ug NLB)

Karon atong tan-awon pag-ayo ang bersyon 2 balancers Application Load Balancer ug Network Load Balancer. Kini nga mga balanse adunay kaugalingon nga mga bahin nga bahin. Pananglitan, ang ingon nga konsepto sama sa Target Groups nagpakita - mga higayon (ug mga gimbuhaton). Salamat sa kini nga sangkap, kami adunay higayon nga mahibal-an kung kinsa sa mga Target nga Grupo ang gusto namon nga magdirekta sa trapiko.

Pagbalanse sa Pag-load sa AWS ELB

Pagbalanse sa Pag-load sa AWS ELB

Sa yano nga mga termino, sa Target nga Mga Grupo among gitino ang mga higayon kung diin moabut ang trapiko. Kung sa parehas nga Classic Load Balancer ikonektar lang dayon ang intensity sa balancer, unya sa Application Load Balancer ikaw una:

  • paghimo og Load Balancer;
  • paghimo og Target nga grupo;
  • direkta pinaagi sa gikinahanglan nga mga pantalan o Load Balancer nga mga lagda ngadto sa gikinahanglan nga Target Groups;
  • sa Target nga mga grupo nga imong gi-assign nga mga higayon.

Kini nga lohika sa pagpadagan mahimo’g ingon labi ka komplikado, apan sa tinuud kini labi ka kombenyente.

Ang sunod nga sangkap mao ang Mga lagda sa tigpaminaw (mga lagda alang sa ruta). Kini magamit lamang sa Application Load Balancer. Kung sa Network Load Balancer maghimo ka lang usa ka Listener, ug kini nagpadala sa trapiko sa usa ka piho nga Target nga grupo, unya sa Application Load Balancer tanan. mas makalingaw ug komportable.

Pagbalanse sa Pag-load sa AWS ELB

Karon isulti nato ang pipila ka mga pulong mahitungod sa sunod nga sangkap - Elastic IP (static nga mga adres para sa NLB). Kung ang mga lagda sa Listener sa pagruta nakaapekto lamang sa Application Load Balancer, nan ang Elastic IP lamang ang nakaapekto sa Network Load Balancer.

Magbuhat ta ug Network Load Balancer:

Pagbalanse sa Pag-load sa AWS ELB

Pagbalanse sa Pag-load sa AWS ELB

Ug sa panahon lang sa proseso sa paglalang atong makita nga gihatagan kita og oportunidad sa pagpili sa Elastic IP:

Pagbalanse sa Pag-load sa AWS ELB

Ang Elastic IP naghatag ug usa ka IP address nga mahimong i-uban sa lain-laing EC2 instances sa paglabay sa panahon. Kung ang usa ka EC2 instance adunay usa ka Elastic IP address ug kana nga instance gihunong o gihunong, mahimo nimo dayon nga i-associate ang usa ka bag-ong EC2 nga instance sa usa ka Elastic IP address. Bisan pa, ang imong aplikasyon karon dili mohunong sa pagtrabaho, tungod kay ang mga aplikasyon makakita gihapon sa parehas nga IP address, bisan kung ang tinuud nga EC2 nausab.

dinhi laing kaso sa paggamit sa hilisgutan kung nganong gikinahanglan ang Elastic IP. Tan-awa, nakakita kami og 3 ka IP address, apan dili sila magpabilin dinhi hangtod sa hangtod:

Pagbalanse sa Pag-load sa AWS ELB

Gibag-o kini sa Amazon sa paglabay sa panahon, tingali matag 60 segundos (apan sa praktis, siyempre, dili kaayo kanunay). Kini nagpasabot nga ang mga IP address mahimong mausab. Ug sa kaso sa Network Load Balancer, mahimo ra nimo ibugkos ang usa ka IP address ug ipakita kini sa imong mga lagda, palisiya, ug uban pa.

Pagbalanse sa Pag-load sa AWS ELB

Paghimo mga konklusyon

Ang ELB naghatag og awtomatik nga pag-apod-apod sa umaabot nga trapiko sa daghang mga target (mga sudlanan, Amazon EC2 instances, IP address, ug Lambda functions). Ang ELB makahimo sa pag-apod-apod sa trapiko nga adunay lainlain nga mga karga sa sulod sa usa ka Availability Zone ug sa daghang mga Availability Zone. Makapili ang user gikan sa tulo ka klase sa mga balancer nga naghatag taas nga pagkaanaa, autoscaling, ug maayong proteksyon. Kining tanan importante aron maseguro ang fault tolerance sa imong mga aplikasyon.

Panguna nga mga bentaha:

  • taas nga magamit. Ang kasabotan sa serbisyo nag-angkon nga 99,99% nga magamit alang sa balanse sa pagkarga. Pananglitan, daghang Availability Zone nagsiguro nga ang trapiko maproseso lamang sa himsog nga mga butang. Sa tinuud, mahimo nimong balansehon ang karga sa tibuuk nga rehiyon, nga mag-redirect sa trapiko sa himsog nga mga target sa lainlaing mga sona nga magamit;
  • luwas. Ang ELB nagtrabaho kauban ang Amazon VPC, nga naghatag lainlain nga kapabilidad sa seguridad - integrated management management, user authentication, ug SSL/TLS decryption. Tanan nga dungan naghatag sentralisado ug flexible nga pagdumala sa mga setting sa TLS;
  • pagkamaunat-unat. Ang ELB makahimo sa pagdumala sa kalit nga mga pagbag-o sa trapiko sa network. Ug ang lawom nga panagsama sa Auto Scaling naghatag sa aplikasyon og igo nga mga kapanguhaan kung ang load mausab, nga wala magkinahanglan og manwal nga interbensyon;
  • pagka-flexible. Mahimo nimong gamiton ang mga IP address aron maruta ang mga hangyo sa mga target sa imong mga aplikasyon. Naghatag kini og kadali sa pag-virtualize sa mga target nga aplikasyon, sa ingon naghatag kaarang sa pag-host sa daghang mga aplikasyon sa usa ka higayon. Tungod kay ang mga aplikasyon makagamit sa usa ka network port ug adunay bulag nga mga grupo sa seguridad, ang komunikasyon tali sa mga aplikasyon gipasimple kung kita adunay, ingnon ta, usa ka arkitektura nga nakabase sa microservice;
  • pagmonitor ug pag-audit. Mahimo nimong bantayan ang mga aplikasyon sa tinuud nga oras gamit ang mga bahin sa Amazon CloudWatch. Naghisgot kami bahin sa mga sukatan, mga troso, pagsubay sa hangyo. Sa yano nga mga termino, mahimo nimong mailhan ang mga problema ug mahibal-an ang mga bottleneck sa pasundayag nga tukma;
  • hybrid nga pagbalanse sa load. Ang abilidad sa pag-load sa balanse tali sa naa sa lugar nga mga kapanguhaan ug AWS gamit ang parehas nga load balancer nagpasayon ​​sa paglalin o pagpalapad sa mga aplikasyon sa naa sa lugar sa panganod. Ang pagdumala sa kapakyasan gipasayon ​​usab gamit ang panganod.

Kung interesado ka sa mga detalye, aniay pipila ka labi ka mapuslanon nga mga link gikan sa opisyal nga website sa Amazon:

  1. Ang Elastic Load Balancing.
  2. Elastic Load Balancing nga kapabilidad.

Source: www.habr.com

Idugang sa usa ka comment