Load Balancing mat AWS ELB

Moien alleguer! De Cours fänkt haut un "AWS fir Entwéckler", an Zesummenhang mat deem mir e korrespondéierten thematesche Webinar gewidmet fir d'ELB Bewäertung. Mir hunn d'Zorte vu Balancer gekuckt an e puer EC2 Instanzen mat engem Balancer erstallt. Mir studéiert och aner Beispiller vun benotzen.

Load Balancing mat AWS ELB

Nodeems Dir de Webinar gelauschtert huet, Dir wäert:

  • verstoen wat AWS Load Balancing ass;
  • kennen d'Typen vum Elastesche Load Balancer a seng Komponenten;
  • benotzt AWS ELB an Ärer Praxis.

Firwat musst Dir dat iwwerhaapt wëssen?

  • nëtzlech wann Dir plangt AWS Zertifizéierungsexamen ze huelen;
  • Dëst ass en einfache Wee fir d'Laascht tëscht Serveren ze verdeelen;
  • Dëst ass en einfache Wee fir Lambda op Äre Service (ALB) ze addéieren.

Eng oppe Lektioun duerchgefouert Rishat Teregulov, Systemingenieur bei enger Marketingfirma fir Websäitentwécklung an Ënnerstëtzung.

Aféierung

Wat en Elastesche Load Balancer ass kann am Diagramm hei ënnen gesi ginn, wat en einfacht Beispill weist:

Load Balancing mat AWS ELB

Load Balancer akzeptéiert Ufroen a verdeelt se iwwer Instanzen. Mir hunn eng separat Instanz, et gi Lambda Funktiounen an et gëtt eng AutoScaling Grupp (eng Grupp vu Serveren).

AWS ELB Typen

1. Loosst eis d'Haaptarten kucken:

Klassesch Load Balancer. Déi éischt Balancer vun AWS, funktionnéiert op béid OSI Schichten 4 a 7, HTTP, HTTPS, TCP an SSL ginn ënnerstëtzt. Et bitt Basis Laaschtbalancéierung iwwer verschidde Amazon EC2 Instanzen a funktionnéiert souwuel op der Ufro wéi och op Verbindungsniveauen. Loosst eis et opmaachen (a gro markéiert):

Load Balancing mat AWS ELB

Dëse Balancer gëtt als aktuell ugesinn, also ass et recommandéiert nëmmen a bestëmmte Fäll ze benotzen. Zum Beispill fir Uwendungen déi um EC2-Classic Netzwierk gebaut goufen. Prinzipiell verhënnert keen eis et ze kreéieren:

Load Balancing mat AWS ELB

2. Network Luet Balancer. Gëeegent fir schwéier Aarbechtslaascht, funktionnéiert op OSI Layer 4 (kann an EKS an ECS benotzt ginn), TCP, UDP an TLS ginn ënnerstëtzt.

Network Load Balancer router Traffic op Ziler an engem Amazon VPC an ass fäeg Millioune Ufroe pro Sekonn mat ultra-niddereg latency ze veraarbecht. Zousätzlech ass et optimiséiert fir Trafficmuster mat plötzlechen a verännerleche Lasten ze handhaben.

3. Applikatioun Luede Balancer. Schafft op Layer 7, huet Lambda Ënnerstëtzung, ënnerstëtzt Header a Wee Niveau Regelen, ënnerstëtzt HTTP an HTTPS.
Bitt fortgeschratt Ufro Routing konzentréiert sech op d'Liwwerung vun Uwendungen op modernen Architekturen gebaut, dorënner Mikroservicer a Container. Direkten Traffic op Ziler an Amazon VPC baséiert op den Inhalt vun der Ufro.

Fir vill Benotzer war Application Load Balancer déi éischt Wiel fir Classic Load Balancer ze ersetzen, well TCP net sou heefeg ass wéi HTTP.

Loosst eis et och erstellen, als Resultat vun deem mir schonn zwee Lastbalancer hunn:

Load Balancing mat AWS ELB

Lueden Gläichgewiicht Komponente

Gemeinsam Laascht Gläichgewiicht Komponente (gemeinsame fir all Balancer):

  • Zougang Logging Politik

- Är ELB Zougang Logbicher. Fir Astellungen ze maachen, kënnt Dir op d'Beschreiwung goen a wielt de "Edit Attributer" Knäppchen:

Load Balancing mat AWS ELB

Da spezifizéiere mir S3Bucket - Amazon Objektlagerung:

Load Balancing mat AWS ELB

  • Schema

- intern oder extern Balancer. De Punkt ass ob Äre LoadBalancer extern Adresse muss kréien fir vu baussen zougänglech ze sinn, oder kann et Ären internen Lastbalancer sinn;

  • Sécherheetsgruppen

- Zougangskontroll zum Balancer. Weesentlechen ass dëst eng héich-Niveau Firewall.

Load Balancing mat AWS ELB

Load Balancing mat AWS ELB

  • Subnets

- Ënnernetzer an Ärem VPC (an deementspriechend Disponibilitéitszone). Subnets gi während der Schafung spezifizéiert. Wann VPCs duerch Regioun limitéiert sinn, da sinn Subnets limitéiert duerch Disponibilitéitszonen. Wann Dir e Load Balancer erstellt, ass et besser et an op d'mannst zwee Subnets ze kreéieren (hëlleft wann Probleemer mat enger Disponibilitéitszone entstinn);

  • Listener

- Är Balancerprotokoller. Wéi virdru scho gesot, fir Classic Load Balancer kann et HTTP, HTTPS, TCP an SSL sinn, fir Network Load Balancer - TCP, UDP an TLS, fir Application Load Balancer - HTTP an HTTPS.

Beispill fir Classic Load Balancer:

Load Balancing mat AWS ELB

Awer am Application Load Balancer gesi mir eng liicht aner Interface an allgemeng aner Logik:

Load Balancing mat AWS ELB

Load Balancer v2 Komponenten (ALB an NLB)

Loosst eis elo méi no kucken op Versioun 2 Balancer Application Load Balancer an Network Load Balancer. Dës Balancer hunn hir eege Komponent Features. Zum Beispill, erschéngt sou e Konzept wéi Target Groups - Instanzen (a Funktiounen). Dank dëser Komponent hu mir d'Méiglechkeet ze spezifizéieren op wéi eng vun den Zilgruppen mir de Verkéier direkt wëllen.

Load Balancing mat AWS ELB

Load Balancing mat AWS ELB

An einfache Begrëffer, an Target Groups spezifizéiere mir d'Instanzen wou de Verkéier kënnt. Wann Dir am selwechte Classic Load Balancer einfach direkt d'Intensitéit mam Balancer verbënnt, dann am Application Load Balancer Dir als éischt:

  • e Load Balancer erstellen;
  • eng Zilgrupp erstellen;
  • direkt iwwer déi erfuerderlech Häfen oder Load Balancer Regelen un déi erfuerderlech Zilgruppen;
  • an Zilgruppen gitt Dir Instanzen zou.

Dës Operatiounslogik ka méi komplizéiert schéngen, awer tatsächlech ass et méi bequem.

Déi nächst Komponent ass Lauschterer Regelen (Regele fir Routing). Dëst gëllt nëmme fir Applikatioun Load Balancer. Wann Dir am Network Load Balancer einfach e Listener erstellt, an et schéckt Traffic un eng spezifesch Zilgrupp, dann am Application Load Balancer alles méi Spaass a praktesch.

Load Balancing mat AWS ELB

Loosst eis elo e puer Wierder soen iwwer déi nächst Komponent - Elastesch IP (statesch Adressen fir NLB). Wann d'Listener Regele Routing Regelen nëmmen den Application Load Balancer beaflosst, dann huet Elastic IP nëmmen den Network Load Balancer beaflosst.

Loosst eis en Network Load Balancer erstellen:

Load Balancing mat AWS ELB

Load Balancing mat AWS ELB

A just während dem Kreatiounsprozess wäerte mir gesinn datt mir d'Méiglechkeet kréien Elastic IP ze wielen:

Load Balancing mat AWS ELB

Elastic IP bitt eng eenzeg IP Adress déi mat verschiddene EC2 Instanzen iwwer Zäit verbonne ka ginn. Wann eng EC2 Instanz eng Elastesch IP Adress huet an déi Instanz ofgeschloss oder gestoppt gëtt, kënnt Dir direkt eng nei EC2 Instanz mat enger Elastescher IP Adress associéieren. Wéi och ëmmer, Är aktuell Applikatioun wäert net ophalen ze schaffen, well d'Applikatiounen nach ëmmer déiselwecht IP Adress gesinn, och wann déi richteg EC2 geännert huet.

hei aner Benotzungsfall iwwer d'Thema firwat Elastic IP gebraucht gëtt. Kuckt, mir gesinn 3 IP Adressen, awer si bleiwen net fir ëmmer hei:

Load Balancing mat AWS ELB

Amazon ännert se mat der Zäit, vläicht all 60 Sekonnen (awer an der Praxis, natierlech, manner dacks). Dëst bedeit datt IP Adresse kënnen änneren. An am Fall vum Network Load Balancer kënnt Dir just eng IP Adress binden an et an Äre Reegelen, Politiken, etc.

Load Balancing mat AWS ELB

Konklusiounen zéien

ELB bitt automatesch Verdeelung vum erakommen Traffic iwwer verschidde Ziler (Container, Amazon EC2 Instanzen, IP Adressen, a Lambda Funktiounen). ELB ass fäeg den Traffic mat ënnerschiddleche Lasten ze verdeelen souwuel bannent enger eenzeger Disponibilitéitszon an iwwer verschidde Disponibilitéitszonen. De Benotzer kann aus dräi Zorte vu Balancer wielen déi héich Disponibilitéit, autoscaling, a gudde Schutz bidden. All dëst ass wichteg fir d'Feeltoleranz vun Ären Uwendungen ze garantéieren.

D'Haaptvirdeeler:

  • héich Disponibilitéit. De Service Accord iwwerhëlt 99,99% Disponibilitéit fir de Lastbalancer. Zum Beispill, Multiple Disponibilitéitszonen suergen datt den Traffic nëmme vu gesonden Objeten veraarbecht gëtt. Tatsächlech kënnt Dir d'Laascht iwwer d'ganz Regioun balancéieren, de Verkéier op gesond Ziler a verschiddene Disponibilitéitszonen ëmgeleet;
  • Sécherheet. ELB schafft mat Amazon VPC, bitt verschidde Sécherheetsfäegkeeten - integréiert Zertifikatmanagement, Benotzerauthentifikatioun an SSL / TLS Entschlësselung. All zesummen stellt zentraliséiert a flexibel Gestioun vun TLS Astellungen;
  • Elastizitéit. D'ELB kann plötzlech Ännerungen am Netzverkéier handhaben. An déif Integratioun mat Auto Scaling gëtt der Applikatioun genuch Ressourcen wann d'Laascht Ännerungen, ouni manuell Interventioun verlaangen;
  • Flexibilitéit. Dir kënnt IP Adresse benotze fir Ufroen op d'Ziler vun Ären Uwendungen ze routen. Dëst bitt Flexibilitéit wann Dir Zilapplikatiounen virtualiséiert, sou datt et d'Fäegkeet gëtt fir verschidde Uwendungen op enger eenzeger Instanz ze hosten. Zanter Uwendungen kann engem eenzege Reseau port benotzen an hunn separat Sécherheet Gruppen, Kommunikatioun tëscht Uwendungen vereinfacht wann mir hunn, soen, eng microservices-baséiert Architektur;
  • Iwwerwachung an Audit. Dir kënnt Uwendungen an Echtzäit iwwerwaachen mat Amazon CloudWatch Features. Mir schwätzen iwwer Metriken, Logbicher, Ufro Tracking. An einfache Begrëffer, wäert Dir fäheg sinn Problemer z'identifizéieren an Leeschtungsfähegkeet zimmlech präziist ze identifizéieren;
  • Hybrid Belaaschtung. D'Kapazitéit fir Gläichgewiicht tëscht on-premises Ressourcen an AWS mat dem selwechte Lastbalancer ze lueden mécht et einfach ze migréieren oder lokal Uwendungen op d'Wollek auszebauen. Feelerhandhabung gëtt och vereinfacht mat der Wollek.

Wann Dir un Detailer interesséiert sidd, hei sinn e puer méi nëtzlech Linken vun der offizieller Amazon Websäit:

  1. Elastesch Load Balance.
  2. Elastesch Load Balancing Fäegkeeten.

Source: will.com

Setzt e Commentaire