AWS Elastic Beanstalk

[ 1 ] Januar 20, 2011 |

AWS Elastic Beanstalk soll Entwickler dabei helfen, schneller und einfacher ihre Anwendungen in der AWS Cloud bereitzustellen und zu verwalten. Der Entwickler lädt seine Anwendung hoch und Elastic Beanstalk übernimmt automatisch die Deploymentaufgaben, wie die Beschaffung der benötigten Kapazitäten, das Load Balancing, Auto-Scaling sowie die Überwachung der Anwendung.

Während der Nutzung von Elastic Beanstalk behält der Entwickler die volle Kontrolle über die AWS Ressourcen, die für seine Anwendung benötigt werden und kann auf diese jederzeit zugreifen. Elastic Beanstalk verwendet dabei AWS Services wie Amazon EC2, Amazon S3, Amazon Simple Notification Service, Elastic Load Balancing, und Auto-Scaling.

Das erste Release von Elastic Beanstalk richtet sich an Java-Entwickler. Die Basis bildet dabei der Apache Tomcat Software Stack, um damit eine einfache Portierbarkeit der Anwendung zu gewährleisten. Durch die Nutzung von Elastic Beanstalk entstehen keine zusätzlichen Kosten. Es wird lediglich für die AWS Ressourcen bezahlt, die für das Speichern und Ausführen der Anwendung benötigt werden.

AWS Elastic Beanstalk Functionality

Um eine Java Anwendung mit Hilfe von Elastic Beanstalk bereitzustellen, sind die folgenden Schritte notwendig.

  • Erstellen einer Anwendung gewöhnlichen Java Anwendung.
  • Verpacken des Codes in ein standard Java Web Application Archive (WAR Datei).
  • Hochladen der WAR Datei nach Elastic Beanstalk. Das kann mit der AWS Management Console, dem AWS Toolkit for Eclipse, der Web Service API oder den Kommandozeilen Tools durchgeführt werden.
  • Bereitstellen der Anwendung. Im Hintergrund übernimmt Elastic Beanstalk die Beschaffung des Load Balancer und nimmt das Deployment der WAR Datei zu einer oder mehreren EC2 Instanzen vor und startet den Apache Tomcat Applikation Server.
  • Innerhalb von ein paar Minuten kann auf die Anwendung mittels einer eigenen URL z.B. http://myapp.elasticbeanstalk.com zugegriffen werden.

Sobald eine Anwendung ausgeführt wird, bietet Elastische Beanstalk verschiedene Management-Funktionen.

  • Bereitstellung neuer Programmversionen innerhalb der laufenden Umgebung (oder ein Rollback zu einer früheren Version).
  • Zugriff integrierte CloudWatch matriken wie die CPU-Auslastung, Anfragehäufigkeit und die durchschnittliche Latenz.
  • E-Mail Benachrichtigung mittels des Amazon Simple Notification Service, wenn sich der Zustand der Anwendung verändert oder weitere Server hinzugefügt oder entfernt werden.
  • Zugriff auf die Log Dateien des Tomcat Server ohne explizite Anmeldung an den Application Server.
  • Neustart aller Application Server auf allen EC2 Instanzen mit einem einzigen Befehl.

Elastic Beanstalk unterstützt den Entwickler u.a. bei folgenden Themen:

  • Auswahl der am besten geeigneten Amazon EC2 Instanz, welche den CPU- und Speicherbedarf der Anwendung entspricht.
  • Auswahl aus mehreren verfügbaren Datenbank- und Storage-Angeboten wie Amazon RDS, Amazon SimpleDB, Microsoft SQL Server, oder Oracle.
  • Zugriff auf Amazon EC2-Instanzen für unmittelbare und direkte Problemlösungen.
  • Erhöhung der Zuverlässigkeit der Anwendung, durch deren Ausführung in mehr als einer Availability Zone.
  • Verbesserung der Anwendungssicherheit, durch die Nutzung des HTTPS Protokoll auf dem Load Balancer.
  • Einstellen JVM-Einstellungen und Weitergabe von Umgebungsvariablen.
  • Ausführung weitere Anwendungskomponenten, wie bspw. einem Memory Caching Service, parallel zu Amazon EC2.
  • Anpassen der Auto-Scaling Einstellungen, um die Metriken und Schwellwerte zu kontrollieren, die verwendet werden, um festzustellen wann Instanzen in einer Umgebung hinzugefügt oder entfernt werden müssen.

Quelle und weitere Informationen unter http://aws.amazon.com/elasticbeanstalk.

Category: Services

René Büst

About the Author ()

Rene Buest is Senior Analyst and Cloud Practice Lead at Crisp Research, covering cloud computing, IT infrastructure, open source and Internet of Things. Prior to that he was Principal Analyst at New Age Disruption and member of the worldwide Gigaom Research Analyst Network. Rene Buest is top cloud computing blogger in Germany and one of the worldwide top 50 bloggers in this area. In addition, he is one of the world’s top cloud computing influencers and belongs to the top 100 cloud computing experts on Twitter and Google+. Since the mid-90s he is focused on the strategic use of information technology in businesses and the IT impact on our society as well as disruptive technologies. Rene Buest is the author of numerous professional cloud computing and technology articles. He regularly writes for well-known IT publications like Computerwoche, CIO Magazin, LANline as well as Silicon.de and is cited in German and international media – including New York Times, Forbes Magazin, Handelsblatt, Frankfurter Allgemeine Zeitung, Wirtschaftswoche, Computerwoche, CIO, Manager Magazin and Harvard Business Manager. Furthermore Rene Buest is speaker and participant of experts rounds. He is founder of CloudUser.de and writes about cloud computing, IT infrastructure, technologies, management and strategies. He holds a diploma in computer engineering from the Hochschule Bremen (Dipl.-Informatiker (FH)) as well as a M.Sc. in IT-Management and Information Systems from the FHDW Paderborn.

Leave a Reply

You must be logged in to post a comment.