Analyse: Die Platform-as-a-Service Umgebung von VMware Cloud Foundry

[ 5 ] April 3, 2012 |

Ursprünglich startete Cloud Foundry als Plattform für das Deployment von Java Spring Anwendungen auf die Amazon Web Services. Im April 2011 folgte dann die Übernahme durch VMware, wodurch Cloud Foundry zu einem Open Source und Multi-Framework Platform-as-a-Service Angebot wurde, das eine Vielzahl von unterschiedlichen Sprachen und Laufzeitumgebungen unterstützt. Dazu gehören u.a. Java, Spring, Ruby, Scala und Node.js. VMware bezeichnet Cloud Foundry auch als ein Open PaaS, da die Plattform vom gewöhnlichen Notebook, über einen PC bis hin zu einer Public Cloud auf unterschiedlichen Systemen und Umgebungen genutzt werden kann.

Cloud Foundry ermöglicht das Multi-Cloud Deployment

Die Cloud Foundry Plattform setzt sich aus drei Bereichen zusammen. Der Erste bezieht sich auf die Wahl des Frameworks, der Zweite auf die Serviceunterstützung der Anwendung und die Dritte auf das Deployment.

Die Wahl des Frameworks

Cloud Foundry unterstützt neben Spring for Java, Rails und Sinatra for Ruby und Node.js ebenfalls JVM Sprachen wie Groovy, Grails und Scala. Hinzu kommt die Unterstützung für das Microsoft .NET Framework wodurch Cloud Foundry zur ersten nicht Microsoft Plattform gehörte, auf der .NET Anwendungen ausgerollt werden konnten. Alles zusammen macht Cloud Foundry zu einem der ersten mehrsprachigen PaaS.

Services für die Anwendung

In der Cloud sind Entwickler auf zuverlässige Messaging-Systeme, NoSQL Datenbanken zusammen mit relationalen Datenbanken angewiesen. Cloud Foundry unterstützt dafür neben RabbitMQ als Messaging-System sowie MongoDB und Redis als NoSQL Datenbanken, MySQL als relationale Datenbank. Die Liste der unterstützten Dienste wächst, so hat die Plattform zuletzt eine PostgreSQL-Unterstützung erhalten.

Das Deployment

Anhand von “Micro Cloud Foundry” kann Cloud Foundry auf gewöhnlichen Notebooks oder Computer genutzt werden. Dazu beinhaltet die Micro Cloud Foundry den vollständigen Cloud Foundry Stack, mit dem virtuelle Maschinen auf einem PC oder Mac gestartet werden können. Cloud Foundry kann zudem in Private Cloud oder Public Cloud Umgebungen wie den Amazon Web Services betrieben werden. Das macht Cloud Foundry zu einem äußerst flexiblen PaaS.

Ausrollen von Anwendungen auf Cloud Foundry

Entwickler können Anwendungen entweder mit der SpringSource Tool Suite (STS) oder VMC, einer Ruby Gem Kommandozeile deployen.

Das Messaging System ist das Rückgrat von Cloud Foundry. Es handelt sich dabei um das zentrale Kommunikationssystem, über das alle Komponenten miteinander sprechen. Der HTTP Verkehr zu den einzelnen Anwendungen wird von Routern gesteuert. Diese routen die URLs zu den jeweiligen Anwendungen und übernehmen ebenfalls das Load Balancing des Verkehrs über die Instanzen.

Cloud Controller sind die Schlüsselkomponenten, die für die Verwaltung der Anwendungen zuständig sind. Sie verknüpfen die verschiedenen Services mit einer Anwendung und ermöglichen den Zugriff durch die externe REST API.

Ein Health Manager überwacht den Zustand aller ausgeführten Anwendungen. Fällt eine Anwendung aus, informiert er den Cloud Controller. Dieser ergreift die weiteren Maßnahmen.

Der ausführbare Code wird in Cloud Foundry zu Einheiten zusammengefasst und wiederum zu einem Droplet verpackt. Ein Droplet abstrahiert den zugrunde liegenden Code und stellt eine generische ausführbaren Code Einheit dar. Ein Droplet Execution Agent ist für die Ausführung des Codes innerhalb jedes Droplets verantwortlich und stellt das Betriebssystem und die Laufzeitumgebung bereit.

Fazit

Cloud Foundry ist ein schnell gewachsener und offener PaaS. Viele Hersteller haben ihre Unterstützung angekündigt und werden mit weiteren Plattformen und Services den Stack erweitern, was Cloud Foundry zu einer echten Alternative zu kommerziellen PaaS Angeboten wie Microsoft Windows Azure oder der Google App Engine werden lässt.

Tags: , , , , , , , , , , , , , , , , , , , , , , , , , ,

Category: Analysen

About the Author ()

Rene Buest is Principal Analyst and Senior Advisor at renebuest research, covering cloud computing, business technology and collaboration. He is member of the GigaOm Pro Analyst Network and top cloud computing blogger in Germany. Worldwide he is one of the top 50 bloggers in this area. For more than 16 years 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, speaker and participant of experts rounds. On CloudUser.de he writes about topics from the fields of cloud computing, it-infrastructures, technologies, management and strategies and is moving on Twitter via his account @ReneBuest. Rene Buest is organizer of numerous cloud computing and technology events. Covering the CloudCamp Hamburg 2010, CloudCamp Frankfurt 2012, CloudOps Summit 2012 and the Amazon Web Services and Windows Azure User Groups in Germany. Rene Buest is a fully qualified specialist for system integration und 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. Detailed curriculum vitaes are hosted on XING and LinkedIn.

Leave a Reply

You must be logged in to post a comment.