Elastic Beanstalk erleichtert Entwicklern das Bereitstellen und Verwalten von Anwendungen in der AWS-Cloud. Entwickler laden einfach ihre Anwendung und der Service verwaltet automatisch Kapazitätsbereitstellung, Lastverteilung, automatischen Skalierung und Statusüberwachung.
Die drei wichtigsten Automatisierungs-Framework in AWS heißen Elastic Beanstalk, OpsWorks und CloudFormation. Das per Default auf Docker–Containern aufsetzende Elastic Beanstalk stellt Plattformen zum Betreiben von PHP-, Ruby-, Tomcat- oder Java-Anwendungen automatisiert bereit.
Programmierer können sich damit ganz auf ihre Anwendungen konzentrieren. Diese müssen lediglich in Beanstalk hochgeladen werden, ohne dass sich der Entwickler Gedanken über die dazu benötigte Infrastruktur machen muss.
PaaS à la AWS
Elastic Beanstalk steht als klassisches PaaS-Konzept in direkter Konkurrenz zu ähnlich gelagerten Lösungen wie Pivotal CloudFoundry oder der Red Hat OpenShift Container Platform. Der AWS-Dienst adressiert in erster Linie Entwickler, die Web-Anwendungen und Services mit Java, PHP, .NET, Python, Node.js, Ruby, Go und/oder Docker unkompliziert entwickeln wollen. Sie müssen sich damit nämlich weder um die Bereitstellung und Administration der benötigten Infrastruktur für den (ggf. auch hochverfügbaren) Betrieb von Webservern oder Datenbanken kümmern noch um das Bereitstellen passender Laufzeitumgebungen.
Elastic Beanstalk eignet sich damit vor allem für Benutzer, die Anwendungen bei Bedarf möglichst schnell in der AWS Cloud bereitstellen und verwalten wollen, ohne über Erfahrungen mit Cloud Computing an sich zu verfügen. Konkret eignet sich Elastic Beanstalk für folgende Anwendungsarten mit ihren jeweiligen Entwicklungs-Stacks:
- Java-Anwendungen: Apache Tomcat
- PHP-Anwendungen: Apache Webserver
- Phython-Anwendungen: Apache Webserver
- Node.Js-Anwendungen: Apache und-/oder NginX-Webserver
- .NET-Anwendungen: IIS 7.5, 8.0 oder 8.5
- Ruby-Anwendungen: Puma oder Passenger sowie
- Docker, Java SE und Go
Weitere unterstützte Plattformen finden sich in der Beanstalk-Dokumentation. Intern bedient sich natürlich auch Elastic Beanstalk im hauseigenen Regal, denn AWS baut alle seine höher angesiedelten Dienste auf Basis der eigenen Infrastruktur-Services. So bestehen die von Elastic Beantstalk erzeugten Deployments letztendlich ebenfalls aus Amazon EC2- (Amazon Linux-AMI oder Windows Server 2012 R2-AMI) sowie RDS-Instanzen und verwenden je nach Bedarf die Dienste und Funktionen Elastic Load Balancing, Auto Scaling, Amazon S3 und Amazon Simple und Notification Service (SNS).