AWS Elastic Beanstalk - Implementarea aplicației simplificată



Acest tutorial AWS Elastic Beanstalk vă va ajuta să înțelegeți cum să implementați aplicații web pe AWS Cloud utilizând AWS Elastic Beanstalk.

nu mai este în stadiile sale primare. Acum este bine stabilit șiservește ca o platformă inovatoare, permițând companiilor să implementeze aplicații care ar fi imposibil de livrat pe infrastructura tradițională.Acest succes a fost însoțit de o creștere exponențială a , PaaS fiind unul dintre ei. Amazon a lansat propriul serviciu care urmează modelul PaaS, care este AWS Elastic Beanstalk!

Să aruncăm o privire asupra subiectelor tratate în acest articol AWS Beanstalk:





  1. Ce este Amazon Elastic Beanstalk?
  2. Avantajele AWS Elastic Beanstalk
  3. Componente AWS Elastic Beanstalk
  4. AWS Elastic Beanstalk Architecture
  5. Demo - Implementați o aplicație pe Beanstalk

Ce este Amazon Elastic Beanstalk?

ElasticBeanstalk - Elastic Beanstalk - Edureka

Cloud Computing remodelează întregul proces de dezvoltare a aplicațiilor. Un număr de furnizori de cloud, inclusivAmazon Web Services și Microsoft Azure oferă instrumente de dezvoltare pentru a face procesul mai simplu și mai sigur. AWS Elastic Beanstalk este un astfel de instrument de dezvoltare implementat pe baza modelului PaaS.



AWS Elastic Beanstalk este un serviciu ușor de utilizat pentru implementarea și scalarea aplicațiilor și serviciilor web dezvoltate cu Java, .NET, PHP, Node.js, Python, Ruby, Go și Docker pe servere familiare precum Apache, Nginx, Passenger și IIS.

Cu AWS Elastic Beanstalk, un dezvoltator poate implementa o aplicație fără a furniza infrastructura de bază menținând în același timp o disponibilitate ridicată. Aruncați o privire la următorul videoclip pentru a afla mai multe despre Elastic Beanstalk.

Tutorial AWS Elastic Beanstalk | Edureka

Dar de ce să alegem Elastic Beanstalk când avem deja multe alte platforme? Așadar, să discutăm despre beneficiile Elastic Beanstalk.



Avantajele AWS Elastic Beanstalk

Mai jos sunt câteva avantaje oferite de AWS Elastic Beanstalk față de alte servicii PaaS

Speed ​​- Elastic Beanstalk - EdurekaOferă o implementare mai rapidă: Elastic Beanstalk oferă dezvoltatorilor cel mai rapid și simplu mod de a-și implementa aplicația. În câteva minute, aplicația va fi gata de utilizare, fără ca utilizatorii să aibă de-a face cu infrastructura subiacentă sau configurația resurselor.

Logo - Elastic Beanstalk - EdurekaSuportă Multi-LocatarArhitectură: AWS Elastic Beanstalk face posibil ca utilizatorii să își partajeze aplicațiile pe diferite dispozitive cu scalabilitate și securitate ridicate. Acesta oferă un raport detaliat al utilizării aplicației și al profilurilor utilizatorilor.

Logo - Elastic Beanstalk - EdurekaSimplifică operațiunile: Beanstalk aprovizionează și operează infrastructura și gestionează stiva de aplicații. Dezvoltatorii trebuie să se concentreze doar pe dezvoltarea codului pentru aplicația lor, mai degrabă decât să petreacă timp pentru gestionarea și configurarea serverelor, bazelor de date, firewall-urilor și rețelelor.

Oferă control complet al resurselor: Beanstalk dă developerilibertatea de a selecta AWS resurse, cum ar fi Instanță EC2 tip, care sunt optime pentru aplicarea lor. Permite dezvoltatorilor să păstreze controlul total asupra resurselor AWS și să le acceseze în orice moment.

Acum că avem motive solide să credem de ce AWS Elastic Beanstalk este preferat de dezvoltatori, să aruncăm o privire asupra conceptelor sale fundamentale.

Doriți să fiți un arhitect AWS certificat?

Componente AWS Elastic Beanstalk

Există anumite concepte cheie pe care le veți întâlni frecvent atunci când implementați o aplicație pe Beanstalk. Să ne uităm la aceste concepte:

Cerere:

  • O aplicație în Elastic Beanstalk este similară conceptual cu un folder
  • O aplicație este o colecție de componente, inclusiv medii, versiuni și configurarea mediului

Versiunea aplicației:

  • O versiune a aplicației se referă la o iterație specifică, etichetată, a codului implementabil pentru o aplicație web
  • O versiune a aplicației indică un obiect Amazon S3 care conține codul implementabil, cum ar fi un fișier Java WAR

Mediu inconjurator:

  • Mediile din cadrul aplicației Elastic Beanstalk sunt versiunea curentă a aplicației
  • Fiecare mediu rulează o singură versiune de aplicație odată. Dar este posibil să rulați aceleași versiuni sau versiuni diferite ale unei aplicații în multe medii în același timp

Nivelul mediului:

Pe baza cerințelor, beanstalk oferă două niveluri de mediu diferite: server webMediu inconjurator, Mediul muncitoresc

  • Mediu server web: MânereleSolicitări HTTP de la clienți
  • MuncitorMediu: Procesesarcini de fundal care consumă resurse și consumă mult timp

Iată o ilustrație pentru a arăta cumAplicație, versiunea aplicației și mediirelaționează unul cu celălalt:

Iată cum arată Beanstalk Environment utilizând tipul implicit de container:


Acum, că știți despre diferite concepte cheie referitoare la Elastic Beanstalk, permiteți-i să înțelegeți arhitectura Elastic Beanstalk.

AWS Elastic Beanstalk Architecture

Înainte de a intra în arhitectura AWS Elastic Beanstalk, să răspundem la cea mai frecventă întrebare,

Ce este un mediu Elastic Beanstalk?

Mediul se referă la versiunea curentă a aplicației. Când lansați un mediu pentru aplicația dvs., Beanstalk vă cere să alegeți dintre două niveluri de mediu diferite, adică Web Server Mediu inconjurator sau Mediul muncitoresc . Să le înțelegem pe rând.

Mediu server web

Versiunea aplicației care este instalată pe mediul serverului web gestionează solicitările HTTP de la client. Următoarea diagramă ilustrează un exemplu de arhitectură AWS Elastic Beanstalk pentru un nivel de mediu de server Web și arată cum funcționează împreună componentele din acel tip de nivel de mediu.

Mediul Beanstalk - Mediul este inima aplicației. Când lansați un mediu, Beanstalk atribuie diverse resurse necesare pentru a rula aplicația cu succes.

Balansator de sarcină elastic - Când aplicația primește mai multe solicitări de la un client, Amazon Route53 transmite aceste solicitări Elastic Load Balancer. Echilibrorul de încărcare distribuie solicitările între instanțele EC2 ale Grupului de scalare automată.

Grup de scalare automată - Auto Scaling Group pornește automat instanțe suplimentare Amazon EC2 pentru a se potrivi încărcării în creștere a aplicației dvs. Dacă încărcarea aplicației dvs. scade, Amazon EC2 Auto Scaling oprește instanțele, dar lasă întotdeauna cel puțin o instanță rulată.

Manager gazdă - Este o componentă software care rulează pe fiecare instanță EC2 care a fost atribuită aplicației dvs. Managerul gazdă este responsabil pentru diverse lucruri precum

  • Generarea și monitorizarea fișierelor jurnal ale aplicației
  • Generarea evenimentelor la nivel de instanță
  • Server de aplicații de monitorizare

Grupuri de securitate - Security Group este ca un firewall pentru instanța dvs. Elastic Beanstalk are un grup de securitate implicit, care permite clientului să acceseze aplicația utilizând portul HTTP 80. De asemenea, vă oferă o opțiune în care puteți defini grupuri de securitate și pe serverul bazei de date. Imaginea de mai jos rezumă ceea ce am aflat despre mediul serverului web.

Deci, totul este legat de mediul serverului web. Dar ce se întâmplă dacă versiunea aplicației instalată pe nivelul serverului web continuă să respingă mai multe solicitări, deoarece a întâmpinat sarcini care consumă mult timp și resurse în timp ce gestionează o solicitare? Ei bine, aici intervine nivelul lucrătorului.

Doriți să vă duceți cunoștințele despre „Cloud” la nivelul următor?

Mediul muncitoresc

Un lucrător este un proces de fundal separat care ajută nivelul serverului web prin gestionarea operațiunilor care necesită resurse sau timp. În plus, trimite și notificări prin e-mail, generează rapoarte și curăță bazele de date. Acest lucru face posibil ca aplicația să rămână receptivă și să gestioneze mai multe solicitări.

Este minunat, dar cum știe procesul lucrătorului ce sarcini să facă față și când? Cum comunică aceste două niveluri de mediu? Pentru aceasta, folosim un serviciu de așteptare a mesajelor prin apel AWS Amazon Simple Queue Service (SQS). Imaginea de mai jos vă oferă o idee aproximativă despre modul în care procesul lucrătorului primește și gestionează sarcinile de fundal.

cum se setează java classpath

Fluxul de lucru al procesului de lucru este destul de simplu. Când lansați un nivel Worker Environment, Elastic Beanstalk instalează un daemon pe fiecare instanță EC2 din grupul Auto Scaling. Demonul extrage cererile trimise dintr-o coadă Amazon SQS. Pe baza priorității cozii, SQS va trimite mesajul printr-unPOSTcerere către calea HTTP a mediului de lucru. Muncitorul la primireamesajul execută sarcinile și trimite un răspuns HTTP odată ce operațiunea este terminată. SQS la primirea mesajului de răspuns șterge mesajul din coadă. Dacă nu primește un răspuns, va încerca în mod continuu să trimită mesajele.

Acum, că am văzut teoretic Elastic Beanstalk, în restul acestui blog vom vedea cum să implementăm o aplicație pe Elastic Beanstalk.

Implementați o aplicație pe Elastic Beanstalk

Implementarea unei aplicații pe Elastic Beanstalk este un proces destul de simplu. Să vedem cum să implementăm o aplicație în trepte.

Pasul 1: În consola Elastic Beanstalk, faceți clic pe Creați o aplicație nouă opțiune. Apare o casetă de dialog în care puteți da un nume și o descriere adecvată aplicației dvs.

Pasul 2: Acum că folderul aplicației a fost creat, puteți face clic pe Fila Acțiuni și selectați Creați mediu opțiune. Beanstalk vă oferă o opțiune în care puteți crea mai multe medii pentru aplicația dvs.

Pasul 3: Alegeți dintre două opțiuni diferite de nivel mediu. Alegeți Web Server Environment dacă doriți ca aplicația dvs. să gestioneze solicitările HTTP sau alegeți Worker Environment pentru a gestiona sarcinile de fundal.

Pasul 4: Apare un alt dialog, în care trebuie să furnizați un nume de domeniu și o descriere pentru aplicația dvs.

Pasul 5: Alegeți o platformă la alegere pentru aplicația dvs. Elastic Beanstalk vă va oferi mai multe opțiuni. Puteți alege un exemplu de aplicație furnizat de Beanstalk sau puteți încărca un fișier cu cod pentru aplicația dvs.

Beanstalk va dura câteva minute pentru a lansa un mediu. Odată ce mediul este lansat, în panoul de navigare puteți vedea mai multe opțiuni în care puteți modifica configurația aplicației dvs., vizualiza fișierele jurnal și evenimentele. Deoarece sunteți deja pe pagina Mediu, încercați să explorați diferite funcții pe care le oferă Beanstalk.

Pasul 6: În colțul din dreapta sus, veți găsi adresa URL a versiunii aplicației dvs. Faceți clic pe acea adresă URL. Veți fi direcționat către o pagină care vă va confirma că v-ați lansat cu succes aplicația pe Elastic Beanstalk.

Felicitări! Ați implementat cu succes o aplicație pe platforma Elastic Beanstalk.

Sper că acum aveți o imagine clară despre Elastic Beanstalk și despre modul în care puteți utiliza Beanstalk pentru a vă implementa aplicațiile.

Deci asta este! Sper că acest blog a fost informativ și a adăugat valoare la cunoștințele dvs. Dacă sunteți interesat să vă duceți cunoștințele despre serviciile web Amazon la nivelul următor, înscrieți-vă la curs de Edureka.

Ai o întrebare pentru noi? Vă rugăm să o menționați în secțiunea de comentarii din „AWS Elastic Beanstalk” și vă vom contacta cât mai curând posibil.