Wat is AutoScaling in AWS? - Hoe het werkt - Verschillende componenten

Inhoudsopgave:

Anonim

Overzicht van automatisch schalen in AWS

Autoscaling, ook gespeld als automatisch schalen of soms automatisch schalen is een techniek in cloud computing, waarbij de hoeveelheid middelen die nodig zijn voor een serverfarm om efficiënt te werken, meestal wordt gemeten als het aantal actieve servers wordt opgeschaald of verlaagd indien nodig op basis van op de belasting van de hele serverfarm. We kunnen dit nauw in verband brengen met load balancing. Meestal is automatisch schalen een soort automatisering voor een handmatig proces. Laten we een scenario nemen waarin u een e-commercewebsite heeft die actief is en klanten efficiënt bedient, geen van uw klanten klaagt over sitevertraging en u verliest geen gebruikers vanwege de prestaties van de site. Naarmate het bedrijf groeide, deed je aan marketing en werden mensen zich dag na dag bewuster van je website. Het verkeer op de website nam toe. Aan de ene kant was je blij om de toename van het bedrijfsleven te zien, maar je moet ook zien dat de website elke klant moet bedienen en niet achterblijft. Laten we zeggen dat het momenteel 100 klanten tegelijk kan bedienen, wat betekent dat als 100 gebruikers op uw site zijn ingelogd, ze allemaal soepel kunnen navigeren en aankopen kunnen doen, en dit alles draait via een vaste configuratie van veronderstel dat t2.micro bijvoorbeeld AWS. Nu een website populair wordt, verwacht je ongeveer 250 - 300 gebruikers tegelijk, je hebt duidelijk 2 servers nodig waar je het verkeer kunt verdelen en dan kan iedereen goed navigeren.

Het handmatige werk dat is om te berekenen hoeveel middelen u nodig heeft om uw klanten te bedienen en het systeem te schalen op basis van de belasting over uw serverfarm en het verkeer te verdelen, wordt handmatig gedaan voor het bovenstaande scenario. We kunnen zeggen dat dit eigenlijk een schaling is, maar niet automatisch schalen omdat het handmatig is gedaan, maar je kunt de service van AutoScaling gebruiken met een load balancer in AWS die de bovenstaande taak automatiseert en dat is wat je Autoscaling of automatisch schalen noemt in termen van cloud berekenen.

Hoe werkt Autoscaling in AWS?

In AWS zijn er meerdere entiteiten betrokken bij het proces van Autoscaling, wat is: - Load Balancer en AMI's zijn twee hoofdcomponenten die bij dit proces betrokken zijn. Eerst moet u AMI van uw huidige server maken, in eenvoudiger termen kunnen we zeggen dat een sjabloon van uw huidige configuratie bestaat uit alle systeeminstellingen en de huidige website. Dit kunt u doen in het AMI-gedeelte van AWS. Als we volgens ons bovenstaande scenario gaan en u autoscaling hebt geconfigureerd, is uw systeem voorbereid op het toekomstige verkeer.

Wanneer het verkeer zou toenemen, zou de AWS-autoscaling-service automatisch de lancering van een ander exemplaar starten met dezelfde configuratie van uw huidige server met behulp van AMI van uw server.

Dan komt het volgende deel waar we ons verkeer gelijk moeten verdelen of routeren over de nieuwe instanties die door de load balancer in AWS worden verzorgd. Load balancer verdeelt het verkeer op basis van de belasting over een bepaald systeem, ze doen een intern proces om te beslissen waar het verkeer wordt gerouteerd.

Het maken van een nieuwe instantie hangt uitsluitend af van een set regels die zijn gedefinieerd door de gebruiker die autoscaling configureert. De regels kunnen zo simpel zijn als CPU-gebruik, u kunt bijvoorbeeld automatisch schalen configureren wanneer uw CPU-gebruik 70-80% bereikt en u een nieuw exemplaar wilt starten om het verkeer af te handelen. Er kunnen ook regels zijn om te verkleinen.

Onderdelen voor automatisch schalen in AWS

Er zijn veel componenten betrokken bij het proces van autoscaling, sommige hebben we al eerder genoemd, zoals AMI, Load balancers en er zijn ook andere.

Onderdelen betrokken bij Autoscaling: -

  • AMI (Amazon Machine Image)
  • Load Balancer
  • Momentopname
  • EC2 exemplaar
  • Autoscaling groepen

Er kunnen meer componenten zijn, maar je kunt zeggen dat de meeste componenten die kunnen worden geschaald, onderdeel kunnen zijn van Autoscaling.

1. AMI

Een AMI is een uitvoerbare afbeelding van uw EC2-exemplaar dat u kunt gebruiken om nieuwe exemplaren te maken. Voor het schalen van uw bronnen heeft u uw nieuwe server nodig om alle configuratie van uw websites te hebben en klaar om te starten. In AWS kunt u dit bereiken door AMI's, dat niets anders is dan een identiek uitvoerbaar image van een systeem dat u kunt gebruiken om nieuwe images te maken en hetzelfde zou door AWS worden gebruikt in het geval van autoscaling om nieuwe instances te starten.

2. Load Balancer

Het maken van een instantie is slechts een onderdeel van automatisch schalen. U moet ook uw verkeer verdelen over de nieuwe instanties en dat werk wordt afgehandeld door de Load Balancer. Een load balancer kan automatisch het verkeer over de systemen identificeren waarmee het is verbonden en kan de verzoeken op basis van regels of op klassieke wijze omleiden naar de instantie met minder load. Het proces van het verdelen van het verkeer over de instanties noemen we het load balancing. Load balancers worden gebruikt om de betrouwbaarheid van een applicatie en de efficiëntie voor gelijktijdige gebruikers te vergroten.

Een load balancer speelt een zeer belangrijke rol bij autoscaling. Doorgaans kunnen load balancers van twee soorten zijn: -

  • Klassieke load balancer.
  • Toepassing Load Balancer.

Classic Load Balancer: - Classic load balancer volgt een zeer eenvoudige aanpak, het verkeer wordt gelijkelijk over alle instanties verdeeld. Het is erg basic en tegenwoordig gebruikt niemand een klassieke load balancer. Het zou een goede keuze kunnen zijn voor een eenvoudige statische html-paginawebsite, maar in de huidige scenario's zijn er hybride apps of multicomponenten en toepassingen met een hoge berekening die talloze componenten hebben die aan een bepaald werk zijn gewijd.

Toepassing Load Balancer

  • Het meest gebruikte type load balancer waarbij het verkeer wordt omgeleid op basis van bepaalde eenvoudige of complexe regels die kunnen worden gebaseerd op "pad" of "host" of zoals door de gebruiker gedefinieerd.
  • Het zou beter zijn als we een scenario van een documentverwerkingstoepassing nemen.
  • Stel dat u een toepassing hebt die is gebaseerd op microservice-architectuur of monolithisch en het pad '/ document' is specifiek voor een documentverwerkingsservice en andere paden '/ rapporten' die alleen de rapporten weergeven van de documenten die worden verwerkt en statistieken over verwerkte gegevens. We kunnen een autoscaling-groep hebben voor één server die verantwoordelijk is voor het verwerken van de documenten en een andere alleen om de rapporten weer te geven.
  • In load load balancer kunt u regels configureren en instellen op basis van een pad dat als het pad overeenkomt met "/ document" vervolgens wordt omgeleid naar een groep voor automatisch schalen voor server 1 of als het overeenkomt met pad "/ rapporten" en vervolgens doorsturen naar een groep met automatisch schalen voor server 2. Intern kan een groep meerdere instanties hebben en wordt de belasting in klassieke vorm gelijkelijk over de instanties verdeeld.

3. Momentopname

De kopie van de gegevens op uw harde schijf is meestal een afbeelding van uw opslag. Het typische verschil tussen snapshot en AMI is een uitvoerbare afbeelding die kan worden gebruikt om een ​​nieuwe instantie te maken, maar snapshot is slechts een kopie van de gegevens die u in uw instantie hebt. Als u een incrementele momentopname van uw EC2-exemplaar hebt, is snapshot een kopie van die blokken die sinds de vorige snapshot zijn gewijzigd.

4. EC2-instantie (Elastic Compute Cloud)

Een EC2-exemplaar is een virtuele server in de Elastic Compute Cloud (EC2) van Amazon die wordt gebruikt om uw applicaties te implementeren op de Amazon Web Services (AWS) -infrastructuur. Met de EC2-service kunt u via een SSH-verbinding verbinding maken met een virtuele server met een authenticatiesleutel en kunt u verschillende componenten van uw toepassing samen met uw toepassing installeren.

5. Autoscaling groep

Het is een groep EC2-instanties en de kern van Amazon EC2 AutoScaling. Wanneer u een AutoScaling-groep maakt, moet u informatie geven over de subnetten en een initieel aantal instanties waarmee u wilt beginnen.

Conclusie

Uit de bovenstaande inhoud hebben we een goed idee van wat autoscaling is en hoe belangrijk het is in de wereld van vandaag.

  • Als we zien dat de eisen van technologie en gebruikers met de dag toenemen en ook hun verwachtingen van de snelle en efficiënte toepassing.
  • Een geweldige applicatie is snel, geeft je een goede gebruikerservaring en doet de dingen waarvoor het is gebouwd en om dit te bereiken heb je een zeer robuuste backend en technologiestack nodig.
  • Nadat u in zaken bent en het is een hit, zal uw gebruikersbestand zeer waarschijnlijk toenemen en zullen er situaties zijn om gelijktijdige gebruikers te verwerken die tijd dat u autoscaling nodig heeft om op te schalen en te schalen volgens situaties om uw gebruikers een naadloze ervaring te bieden.

Vanuit mijn oogpunt is schaalvergroting een zeer belangrijk aspect in de wereld van vandaag en vandaag of morgen moeten we dit doen, gaan met AWS-autoscaling en uw producten opschalen.

Aanbevolen artikelen

Dit is een gids voor Wat is AutoScaling in AWS? Hier hebben we de definitie, werking en verschillende componenten van autoscaling in AWS besproken. U kunt ook het volgende artikel bekijken voor meer informatie -

  1. Wat is AWS RedShift?
  2. Wat is StringBuilder in C #
  3. Volledige gids voor functionele testen
  4. Wat is Back End Developer?
  5. AWS-opslagdiensten