AWS Elastic Beanstalk - Anwendungsbereitstellung leicht gemacht



In diesem Tutorial zu AWS Elastic Beanstalk erfahren Sie, wie Sie Webanwendungen in AWS Cloud mithilfe von AWS Elastic Beanstalk bereitstellen.

ist nicht mehr in seinen ursprünglichen Stadien. Es ist jetzt gut etabliert unddient als innovative Plattform, die es Unternehmen ermöglicht, Anwendungen zu implementieren, die auf einer herkömmlichen Infrastruktur nicht zu liefern wären.Dieser Erfolg ging mit einem exponentiellen Anstieg von einher PaaS ist einer von ihnen. Amazon hat einen eigenen Dienst gestartet, der dem PaaS-Modell folgt AWS Elastische Bohnenstange!

Werfen wir einen Blick auf die Themen, die in diesem AWS Beanstalk-Artikel behandelt werden:





  1. Was ist Amazon Elastic Beanstalk?
  2. Vorteile von AWS Elastic Beanstalk
  3. AWS Elastic Beanstalk Components
  4. AWS Elastic Beanstalk Architecture
  5. Demo - Stellen Sie eine Anwendung auf Beanstalk bereit

Was ist Amazon Elastic Beanstalk?

ElasticBeanstalk - Elastic Beanstalk - Edureka

Cloud Computing gestaltet den gesamten Anwendungsentwicklungsprozess neu. Eine Reihe von Cloud-Anbietern, darunterAmazon Web Services und Microsoft Azure bieten Entwicklungstools an, um den Prozess einfacher und sicherer zu gestalten. AWS Elastic Beanstalk ist ein solches Entwicklungswerkzeug, das auf dem PaaS-Modell basiert.



AWS Elastic Beanstalk ist Ein benutzerfreundlicher Dienst zum Bereitstellen und Skalieren von Webanwendungen und -diensten, die mit Java, .NET, PHP, Node.js, Python, Ruby, Go und Docker auf bekannten Servern wie Apache, Nginx, Passenger und IIS entwickelt wurden.

Mit AWS Elastic Beanstalk kann ein Entwickler eine Anwendung bereitstellen, ohne die zugrunde liegende Infrastruktur bereitzustellen, während die Hochverfügbarkeit erhalten bleibt. Schauen Sie sich das folgende Video an, um mehr über Elastic Beanstalk zu erfahren.

AWS Elastic Beanstalk Tutorial | Edureka

Aber warum sollten wir uns für Elastic Beanstalk entscheiden, wenn wir bereits viele andere Plattformen haben? Lassen Sie uns also die Vorteile von Elastic Beanstalk diskutieren.



Vorteile von AWS Elastic Beanstalk

Im Folgenden sind einige Vorteile aufgeführt, die AWS Elastic Beanstalk gegenüber anderen PaaS-Diensten bietet

Geschwindigkeit - Elastische Bohnenstange - EdurekaBietet eine schnellere Bereitstellung: Elastic Beanstalk bietet Entwicklern die schnellste und einfachste Möglichkeit, ihre Anwendung bereitzustellen. Innerhalb weniger Minuten ist die Anwendung einsatzbereit, ohne dass Benutzer sich mit der zugrunde liegenden Infrastruktur oder Ressourcenkonfiguration befassen müssen.

Logo - Elastische Bohnenstange - EdurekaUnterstützt M.UltimieterDie Architektur: Mit AWS Elastic Beanstalk können Benutzer ihre Anwendungen auf verschiedenen Geräten mit hoher Skalierbarkeit und Sicherheit gemeinsam nutzen. Es bietet einen detaillierten Bericht über die Anwendungsnutzung und Benutzerprofile.

Logo - Elastische Bohnenstange - EdurekaVereinfacht den Betrieb: Beanstalk stellt die Infrastruktur bereit und betreibt sie und verwaltet den Anwendungsstapel. Entwickler müssen sich nur auf die Entwicklung von Code für ihre Anwendung konzentrieren, anstatt Zeit mit der Verwaltung und Konfiguration von Servern, Datenbanken, Firewalls und Netzwerken zu verbringen.

Bietet vollständige Ressourcenkontrolle: Bohnenstange gibt deVelopersdie Freiheit, die AW zu wählenS Ressourcen, wie EC2-Instanz Art, die für ihre Anwendung optimal sind. Entwickler können damit die vollständige Kontrolle über AWS-Ressourcen behalten und jederzeit darauf zugreifen.

Was ist Serialisierung in Java?

Nachdem wir nun gute Gründe haben zu glauben, warum AWS Elastic Beanstalk von Entwicklern bevorzugt wird, werfen wir einen Blick auf die grundlegenden Konzepte.

Möchten Sie zertifizierter AWS-Architekt werden?

AWS Elastic Beanstalk Components

Es gibt bestimmte Schlüsselkonzepte, auf die Sie häufig stoßen, wenn Sie eine Anwendung auf Beanstalk bereitstellen. Schauen wir uns diese Konzepte an:

Anwendung:

  • Eine Anwendung in Elastic Beanstalk ähnelt konzeptionell einem Ordner
  • Eine Anwendung ist eine Sammlung von Komponenten, einschließlich Umgebungen, Versionen und Umgebungskonfiguration

Anwendungsversion:

  • Eine Anwendungsversion bezieht sich auf eine bestimmte, gekennzeichnete Iteration von bereitstellbarem Code für eine Webanwendung
  • Eine Anwendungsversion verweist auf ein Amazon S3-Objekt, das den bereitstellbaren Code enthält, z. B. eine Java WAR-Datei

Umgebung:

  • In Umgebungen innerhalb der Elastic Beanstalk-Anwendung ist die aktuelle Version der Anwendung aktiv
  • In jeder Umgebung wird jeweils nur eine Anwendungsversion ausgeführt. Es ist jedoch möglich, in vielen Umgebungen gleichzeitig dieselbe oder unterschiedliche Versionen einer Anwendung auszuführen

Umweltstufe:

Je nach Anforderung bietet Beanstalk zwei verschiedene Umgebungsebenen: WebserverUmgebung, Arbeitsumgebung

  • Webserver-Umgebung:: GriffeHTTP-Anfragen von Clients
  • ArbeiterUmwelt: ProzesseHintergrundaufgaben, die ressourcenintensiv und zeitintensiv sind

Hier ist eine Illustration, um zu zeigen, wieAnwendung, Anwendungsversion und UmgebungenSich aufeinander beziehen:

Und so sieht die Beanstalk-Umgebung mit dem Standardcontainertyp aus:


Nachdem Sie nun verschiedene Schlüsselkonzepte für Elastic Beanstalk kennen, sollten Sie die Architektur von Elastic Beanstalk verstehen.

AWS Elastic Beanstalk Architecture

Bevor wir uns mit der AWS Elastic Beanstalk-Architektur befassen, beantworten wir die am häufigsten gestellte Frage:

Was ist eine elastische Bohnenstangenumgebung?

Umgebung bezieht sich auf die aktuelle Version der Anwendung. Wenn Sie eine Umgebung für Ihre Anwendung starten, werden Sie von Beanstalk aufgefordert, zwischen zwei verschiedenen Umgebungsebenen zu wählen, z. B. Web Server Umgebung oder Arbeitsumgebung . Lassen Sie uns sie einzeln verstehen.

Webserver-Umgebung

Die in der Webserverumgebung installierte Anwendungsversion verarbeitet HTTP-Anforderungen vom Client. Das folgende Diagramm zeigt eine beispielhafte AWS Elastic Beanstalk-Architektur für eine Webserver-Umgebungsebene und zeigt, wie die Komponenten in dieser Art von Umgebungsebene zusammenarbeiten.

Bohnenstiel-Umgebung - Die Umgebung ist das Herzstück der Anwendung. Wenn Sie eine Umgebung starten, weist Beanstalk verschiedene Ressourcen zu, die zum erfolgreichen Ausführen der Anwendung erforderlich sind.

Elastic Load Balancer - Wenn die Anwendung mehrere Anforderungen von einem Client empfängt, leitet Amazon Route53 diese Anforderungen an den Elastic Load Balancer weiter. Der Load Balancer verteilt die Anforderungen auf EC2-Instanzen der Auto Scaling Group.

Auto Scaling Group - Die Auto Scaling Group startet automatisch zusätzliche Amazon EC2-Instanzen, um der zunehmenden Belastung Ihrer Anwendung Rechnung zu tragen. Wenn die Auslastung Ihrer Anwendung abnimmt, stoppt Amazon EC2 Auto Scaling Instanzen, lässt jedoch immer mindestens eine Instanz ausgeführt.

Host Manager - Es handelt sich um eine Softwarekomponente, die auf jeder EC2-Instanz ausgeführt wird, die Ihrer Anwendung zugewiesen wurde. Der Host Manager ist verantwortlich für verschiedene Dinge wie

  • Generieren und Überwachen von Anwendungsprotokolldateien
  • Ereignisse auf Instanzebene generieren
  • Anwendungsserver überwachen

Sicherheitsgruppen - Die Sicherheitsgruppe ist wie eine Firewall für Ihre Instanz. Elastic Beanstalk verfügt über eine Standardsicherheitsgruppe, mit der der Client über HTTP-Port 80 auf die Anwendung zugreifen kann. Außerdem erhalten Sie eine Option, mit der Sie auch Sicherheitsgruppen für den Datenbankserver definieren können. Das folgende Bild fasst zusammen, was wir über die Webserverumgebung gelernt haben.

Das ist also alles über die Webserverumgebung. Was aber, wenn die auf der Webserverschicht installierte Anwendungsversion weiterhin mehrere Anforderungen ablehnt, weil bei der Bearbeitung einer Anforderung zeitintensive und ressourcenintensive Aufgaben aufgetreten sind? Nun, hier kommt Worker Tier ins Spiel.

Möchten Sie Ihr Cloud-Wissen auf die nächste Stufe bringen?

Arbeitsumgebung

Ein Worker ist ein separater Hintergrundprozess, der die Webserverschicht durch ressourcenintensive oder zeitintensive Vorgänge unterstützt. Darüber hinaus werden Benachrichtigungen per E-Mail gesendet, Berichte erstellt und Datenbanken bereinigt. Auf diese Weise kann die Anwendung reagieren und mehrere Anforderungen bearbeiten.

Das ist großartig, aber woher weiß der Worker-Prozess, welche Aufgaben wann zu erledigen sind? Wie kommunizieren diese beiden Umweltebenen? Zu diesem Zweck verwenden wir einen Nachrichtenwarteschlangendienst von AWS, den Amazon Simple Queue Service (SQS). Das folgende Bild gibt Ihnen eine ungefähre Vorstellung davon, wie der Arbeitsprozess Hintergrundaufgaben empfängt und verarbeitet.

Der Workflow des Arbeitsprozesses ist ziemlich einfach. Wenn Sie eine Worker Environment-Ebene starten, installiert Elastic Beanstalk auf jeder EC2-Instanz in der Gruppe Auto Scaling einen Daemon. Der Dämon ruft Anforderungen ab, die von einer Amazon SQS-Warteschlange gesendet wurden. Basierend auf der Priorität der Warteschlange sendet SQS die Nachricht über aPOSTAnforderung an den HTTP-Pfad der Worker-Umgebung. Der Arbeiter bei Erhalt derDie Nachricht führt die Aufgaben aus und sendet eine HTTP-Antwort, sobald der Vorgang abgeschlossen ist. SQS beim Empfang einer Antwortnachricht löscht die Nachricht in der Warteschlange. Wenn keine Antwort empfangen wird, wird das Senden der Nachrichten kontinuierlich wiederholt.

Was macht das Format in Python?

Nachdem wir Elastic Beanstalk theoretisch gesehen haben, werden wir im Rest dieses Blogs sehen, wie eine Anwendung auf Elastic Beanstalk bereitgestellt wird.

Stellen Sie eine Anwendung auf Elastic Beanstalk bereit

Das Bereitstellen einer Anwendung auf Elastic Beanstalk ist ein ziemlich einfacher Vorgang. Lassen Sie uns sehen, wie Sie eine Anwendung schrittweise bereitstellen.

Schritt 1: Klicken Sie in der Elastic Beanstalk-Konsole auf Neue Anwendung erstellen Möglichkeit. Ein Dialogfeld wird angezeigt, in dem Sie einen Namen und eine entsprechende Beschreibung für Ihre Anwendung angeben können.

Schritt 2: Nachdem der Anwendungsordner erstellt wurde, können Sie auf klicken Registerkarte 'Aktionen' und auswählen Umgebung erstellen Möglichkeit. Beanstalk bietet Ihnen eine Option, mit der Sie mehrere Umgebungen für Ihre Anwendung erstellen können.

Schritt 3: Wählen Sie zwischen zwei verschiedenen Optionen für die Umgebungsebene. Wählen Sie Webserverumgebung, wenn Ihre Anwendung HTTP-Anforderungen verarbeiten soll, oder wählen Sie Arbeitsumgebung, um Hintergrundaufgaben zu verarbeiten.

Schritt 4: Ein weiteres Dialogfeld wird angezeigt, in dem Sie einen Domainnamen und eine Beschreibung für Ihre Anwendung angeben müssen.

wann man das benutzt. in Java

Schritt 5: Wählen Sie eine Plattform Ihrer Wahl für Ihre Anwendung. Elastic Beanstalk bietet Ihnen mehrere Optionen. Sie können eine von Beanstalk bereitgestellte Beispielanwendung auswählen oder eine Datei hochladen, die Code für Ihre Anwendung enthält.

Beanstalk benötigt einige Minuten, um eine Umgebung zu starten. Nach dem Start der Umgebung werden im Navigationsbereich mehrere Optionen angezeigt, mit denen Sie die Konfiguration Ihrer Anwendung ändern, Protokolldateien und Ereignisse anzeigen können. Versuchen Sie, verschiedene Funktionen von Beanstalk zu erkunden, da Sie sich bereits auf der Umgebungsseite befinden.

Schritt 6: In der oberen rechten Ecke finden Sie die URL Ihrer Anwendungsversion. Klicken Sie auf diese URL. Sie werden zu einer Seite weitergeleitet, auf der bestätigt wird, dass Sie Ihre Anwendung auf Elastic Beanstalk erfolgreich gestartet haben.

Herzliche Glückwünsche! Sie haben eine Anwendung erfolgreich auf der Elastic Beanstalk Platform bereitgestellt.

Ich hoffe, Sie haben jetzt ein klares Bild von Elastic Beanstalk und wie Sie Beanstalk zum Bereitstellen Ihrer Anwendungen verwenden können.

So, das ist es! Ich hoffe, dieser Blog war informativ und hat Ihrem Wissen einen Mehrwert verliehen. Wenn Sie daran interessiert sind, Ihr Wissen über Amazon Web Services auf die nächste Stufe zu heben, melden Sie sich für das an Kurs von Edureka.

Hast du eine Frage an uns? Bitte erwähnen Sie dies im Kommentarbereich von „AWS Elastic Beanstalk“. Wir werden uns so schnell wie möglich bei Ihnen melden.