AWS Elastic Beanstalk - Applicatie-implementatie eenvoudig gemaakt



Deze AWS Elastic Beanstalk-zelfstudie helpt u te begrijpen hoe u webtoepassingen op AWS Cloud implementeert met behulp van AWS Elastic Beanstalk.

is niet langer in zijn oorspronkelijke stadia. Het is nu goed ingeburgerd enfungeert als een innovatief platform dat bedrijven in staat stelt applicaties te implementeren die onmogelijk te leveren zijn op traditionele infrastructuur.Dit succes ging gepaard met een exponentiële toename van , PaaS is daar een van. Amazon heeft zijn eigen service gelanceerd die het PaaS-model volgt, namelijk AWS Elastische bonenstaak!

Laten we eens kijken naar de onderwerpen die in dit AWS Beanstalk-artikel worden behandeld:





  1. Wat is Amazon Elastic Beanstalk?
  2. Voordelen van AWS Elastic Beanstalk
  3. AWS elastische bonenstaakcomponenten
  4. AWS Elastic Beanstalk-architectuur
  5. Demo - Implementeer een applicatie op Beanstalk

Wat is Amazon Elastic Beanstalk?

ElasticBeanstalk - Elastische bonenstaak - Edureka

Cloud Computing verandert het hele ontwikkelingsproces van applicaties. Een aantal cloudleveranciers, waaronderAmazon Web Services en Microsoft Azure bieden ontwikkelingstools om het proces eenvoudiger en veiliger te maken. AWS Elastic Beanstalk is zo'n ontwikkelingstool die is geïmplementeerd op basis van het PaaS-model.



AWS Elastic Beanstalk is een gebruiksvriendelijke service voor het implementeren en schalen van webapplicaties en services die zijn ontwikkeld met Java, .NET, PHP, Node.js, Python, Ruby, Go en Docker op bekende servers zoals Apache, Nginx, Passenger en IIS.

Met AWS Elastic Beanstalk kan een ontwikkelaar een applicatie implementeren zonder de onderliggende infrastructuur in te richten, terwijl de hoge beschikbaarheid behouden blijft. Bekijk de volgende video voor meer informatie over Elastic Beanstalk.

AWS Elastic Beanstalk-zelfstudie | Edureka

Maar waarom kiezen voor Elastic Beanstalk als we al veel andere platforms hebben? Laten we daarom de voordelen van Elastic Beanstalk bespreken.



Voordelen van AWS Elastic Beanstalk

Hieronder staan ​​enkele voordelen die AWS Elastic Beanstalk biedt ten opzichte van andere PaaS-services

chef-kok vs pop vs ansible

Snelheid - Elastische bonenstaak - EdurekaBiedt een snellere implementatie: Elastic Beanstalk biedt ontwikkelaars de snelste en eenvoudigste manier om hun applicatie te implementeren. Binnen enkele minuten is de applicatie klaar voor gebruik zonder dat gebruikers te maken hebben met de onderliggende infrastructuur of resourceconfiguratie.

Logo - Elastische bonenstaak - EdurekaOndersteunt Multi-huurderArchitectuur: AWS Elastic Beanstalk maakt het voor gebruikers mogelijk om hun applicaties op verschillende apparaten te delen met hoge schaalbaarheid en beveiliging. Het biedt een gedetailleerd rapport van het applicatiegebruik en gebruikersprofielen.

Logo - Elastische bonenstaak - EdurekaVereenvoudigt bewerkingen: Beanstalk levert en beheert de infrastructuur en beheert de applicatiestack. Ontwikkelaars hoeven zich alleen te concentreren op het ontwikkelen van code voor hun applicatie in plaats van tijd te besteden aan het beheren en configureren van servers, databases, firewalls en netwerken.

Biedt volledige controle over middelen: Beanstalk geeft developersde vrijheid om de AW te selecterenS-bronnen, zoals EC2-instantie type, die optimaal zijn voor hun toepassing. Het stelt ontwikkelaars in staat om de volledige controle over AWS-bronnen te behouden en deze op elk moment te openen.

Nu we solide redenen hebben om aan te nemen waarom ontwikkelaars de voorkeur geven aan AWS Elastic Beanstalk, laten we eens kijken naar de fundamentele concepten.

Wilt u een gecertificeerde AWS-architect worden?

AWS elastische bonenstaakcomponenten

Er zijn bepaalde sleutelconcepten die u vaak zult tegenkomen wanneer u een applicatie op Beanstalk implementeert. Laten we die concepten eens bekijken:

Toepassing:

  • Een toepassing in Elastic Beanstalk is conceptueel vergelijkbaar met een map
  • Een applicatie is een verzameling componenten, waaronder omgevingen, versies en omgevingsconfiguratie

Applicatie versie:

  • Een applicatieversie verwijst naar een specifieke, gelabelde iteratie van implementeerbare code voor een webapplicatie
  • Een applicatieversie verwijst naar een Amazon S3-object dat de implementeerbare code bevat, zoals een Java WAR-bestand

Milieu:

  • Omgevingen binnen Elastic Beanstalk Application is waar de huidige versie van de applicatie actief zal zijn
  • Elke omgeving draait slechts één applicatieversie tegelijk. Maar het is mogelijk om in veel omgevingen tegelijk dezelfde of verschillende versies van een applicatie te draaien

Omgeving Tier:

Op basis van vereiste biedt beanstalk twee verschillende omgevingslagen: webserverMilieu, Werkomgeving

  • Webserveromgeving: HandgrepenHTTP-verzoeken van klanten
  • WerknemerOmgeving: processenachtergrondtaken die veel middelen en tijd vergen

Hier is een illustratie om te laten zien hoeApplicatie, applicatieversie en omgevingenbetrekking hebben op elkaar:

En hier is hoe Beanstalk Environment met het standaard containertype eruit ziet:


Nu u de verschillende sleutelconcepten met betrekking tot Elastic Beanstalk kent, moet u de architectuur van Elastic Beanstalk begrijpen.

AWS Elastic Beanstalk-architectuur

Laten we, voordat we ingaan op de AWS Elastic Beanstalk-architectuur, eerst de meest gestelde vraag beantwoorden:

Wat is een elastische bonenstaakomgeving?

Omgeving verwijst naar de huidige versie van de applicatie. Wanneer u een omgeving voor uw toepassing start, vraagt ​​Beanstalk u om te kiezen uit twee verschillende omgevingslagen, d.w.z. Web Server Milieu of Werkomgeving . Laten we ze een voor een begrijpen.

Webserveromgeving

Applicatieversie die is geïnstalleerd op de webserveromgeving behandelt HTTP-verzoeken van de client. Het volgende diagram illustreert een voorbeeld van een AWS Elastic Beanstalk-architectuur voor een Web Server Environment-laag en laat zien hoe de componenten in dat type Environment-laag samenwerken.

Beanstalk-omgeving - De omgeving is het hart van de applicatie. Wanneer u een omgeving start, wijst Beanstalk verschillende bronnen toe die nodig zijn om de toepassing met succes uit te voeren.

Elastische Load Balancer - Wanneer de applicatie meerdere verzoeken van een klant ontvangt, stuurt Amazon Route53 deze verzoeken door naar de Elastic Load Balancer. De load balancer verdeelt de verzoeken over EC2-exemplaren van Auto Scaling Group.

Groep automatisch schalen - Auto Scaling Group start automatisch extra Amazon EC2-instances om de toenemende belasting van uw applicatie op te vangen. Als de belasting van uw applicatie afneemt, stopt Amazon EC2 Auto Scaling instanties, maar laat altijd ten minste één instantie actief.

Hostbeheerder - Het is een softwarecomponent die wordt uitgevoerd op elk EC2-exemplaar dat aan uw applicatie is toegewezen. De hostmanager is verantwoordelijk voor verschillende zaken zoals

  • Logboekbestanden van toepassingen genereren en bewaken
  • Gebeurtenissen op instantieniveau genereren
  • Monitoring van applicatieserver

Beveiligingsgroepen - Security Group is als een firewall voor uw instantie. Elastic Beanstalk heeft een standaardbeveiligingsgroep, waarmee de client toegang heeft tot de toepassing via HTTP-poort 80. Het biedt u ook een optie waarmee u ook beveiligingsgroepen voor de databaseserver kunt definiëren. De onderstaande afbeelding vat samen wat we hebben geleerd over de webserveromgeving.

Dus dat is alles over de webserveromgeving. Maar wat als de applicatieversie die op de Web Server-laag is geïnstalleerd, meerdere verzoeken blijft weigeren omdat het tijdrovende en resource-intensieve taken heeft ondergaan tijdens het afhandelen van een verzoek? Welnu, dit is waar Worker Tier in beeld komt.

Wilt u uw 'cloud'-kennis naar een hoger niveau tillen?

Werkomgeving

Een werker is een afzonderlijk achtergrondproces dat de webserverlaag ondersteunt door resource-intensieve of tijdrovende bewerkingen af ​​te handelen. Bovendien e-mailt het ook meldingen, genereert het rapporten en ruimt het databases op. Dit maakt het mogelijk dat de applicatie responsive blijft en meerdere verzoeken afhandelt.

Dat is geweldig, maar hoe weet Worker process welke taken het moet afhandelen en wanneer? Hoe communiceren deze twee omgevingslagen? Daarvoor gebruiken we een berichtwachtrijdienst van AWS, genaamd Amazon Simple Queue Service (SQS). De onderstaande afbeelding geeft u een globaal idee van hoe het werkproces achtergrondtaken ontvangt en afhandelt.

De workflow van het werkproces is vrij eenvoudig. Wanneer u een Worker Environment-laag start, installeert Elastic Beanstalk een daemon op elk EC2-exemplaar in de groep Auto Scaling. De daemon haalt verzoeken op die zijn verzonden vanuit een Amazon SQS-wachtrij. Op basis van de prioriteit van de wachtrij verzendt SQS het bericht via eenPOSTverzoek naar het HTTP-pad van de werkomgeving. De werknemer bij ontvangst van hetmessage voert de taken uit en verzendt een HTTP-antwoord zodra de bewerking is voltooid. SQS bij het ontvangen van een antwoordbericht verwijdert het bericht in de wachtrij. Als het geen antwoord ontvangt, zal het continu proberen om de berichten te verzenden.

Nu we Elastic Beanstalk theoretisch hebben gezien, zullen we in de rest van deze blog zien hoe we een applicatie kunnen implementeren op Elastic Beanstalk.

Implementeer een applicatie op Elastic Beanstalk

Het implementeren van een applicatie op Elastic Beanstalk is een vrij eenvoudig proces. Laten we eens kijken hoe u een applicatie stapsgewijs implementeert.

Stap 1: Klik op de Elastic Beanstalk-console op Maak een nieuwe applicatie keuze. Er verschijnt een dialoogvenster waarin u een naam en een passende beschrijving voor uw toepassing kunt geven.

Stap 2: Nu de applicatiemap is aangemaakt, kunt u op het Acties tabblad en selecteer Creëer omgeving keuze. Beanstalk biedt u een optie waarmee u meerdere omgevingen voor uw toepassing kunt maken.

hoe u een reeks objecten in java kunt maken

Stap 3: Kies uit twee verschillende Environment Tier-opties. Kies Webserveromgeving als u wilt dat uw toepassing HTTP-verzoeken afhandelt of kies Werkomgeving om achtergrondtaken af ​​te handelen.

Stap 4: Er verschijnt een ander dialoogvenster waarin u een domeinnaam en een beschrijving voor uw toepassing moet opgeven.

Stap 5: Kies een platform naar keuze voor uw toepassing. Elastic Beanstalk biedt u meerdere opties. U kunt een voorbeeldtoepassing kiezen die wordt geleverd door Beanstalk, of een bestand uploaden met code voor uw toepassing.

Beanstalk heeft een paar minuten nodig om een ​​omgeving te starten. Zodra de omgeving is gestart, kunt u in het navigatievenster meerdere opties zien waarmee u de configuratie van uw toepassing kunt wijzigen, logbestanden en gebeurtenissen kunt bekijken. Aangezien u zich al op de omgevingspagina bevindt, kunt u verschillende functies proberen die Beanstalk biedt.

Stap 6: In de rechterbovenhoek vindt u de URL van uw applicatieversie. Klik op die URL. U wordt naar een pagina geleid die bevestigt dat u uw toepassing met succes op Elastic Beanstalk heeft gestart.

Gefeliciteerd! U hebt met succes een applicatie geïmplementeerd op Elastic Beanstalk Platform.

Ik hoop dat je nu een duidelijk beeld hebt van Elastic Beanstalk en hoe je Beanstalk kunt gebruiken om je applicaties te implementeren.

Dus dit is het! Ik hoop dat deze blog informatief was en een meerwaarde voor uw kennis. Als je geïnteresseerd bent om je kennis van Amazon Web Services naar een hoger niveau te tillen, schrijf je dan in voor het cursus door Edureka.

Heeft u een vraag voor ons? Vermeld het in het commentaargedeelte van 'AWS Elastic Beanstalk' en we nemen zo snel mogelijk contact met u op.