Die Entwicklung von Apache Stratos nahm ihren Anfang bei WSO2. Das Unternehmen entwickelt quelloffene Middleware-Lösungen. Im Juni letzten Jahres wurde das Projekt offiziell in den Inkubator der ASF übergeben. Seitdem leisten auch Entwickler von Cisco, Citrix, der Indiana University und dem NASA Jet Propulsion Laboratory Beiträge. Die Stratos-PaaS ist unter der Apache-Lizenz 2.0 lizenziert und komplett in Java geschrieben. Apache Stratos 4.0 lässt sich vom Apache-Git-Repositorium herunterladen.
Allgemein stellt Stratos, ähnlich wie Red Hats OpenShift, eine Cloud-Umgebung zum Entwickeln, Testen und Betreiben skalierbarer Applikationen zur Verfügung. Laut Apache profitieren Anwender von hohen Auslastungsraten, automatisiertem Ressourcenmanagement und einer plattformübergreifenden Übersicht einschließlich Monitoring und Abrechnung. Mit der Beförderung aus dem Inkubator signalisiert die Apache Foundation, dass sich Stratos 4.0 in puncto Sicherheit und Leistungsumfang jetzt für private, öffentliche und hybride Cloud-Lösungen eignet.
Funktional bietet Stratos ein Management im Self-Service-Verfahren, eine Nutzungsüberwachung und unterstützt Multi-Tenant-Umgebungen. Darüber hinaus bietet Stratos die Möglichkeit, beliebige Server-Software “as-a-Service” parallel zu anderen App-Containern zu verwenden. Apache Stratos nutzt Apache jClouds und lässt sich daher mit Hilfe der jClouds-API in IaaS-Umgebungen aller großen Cloud-Anbieter einsetzen, darunter OpenStack, Amazons EC2, SuseCloud, Rackspace oder VMware vCloud. Auf diese Weise skaliert Apache Stratos bei Bedarf hervorragend.
Apache Stratos 4.0 unterstützt verschiedene PaaS-Ausprägungen, wie z. B. Application PaaS (aPaas), Integration PaaS (iPaaS) oder Data PaaS (dPaaS und besteht aus mehreren PaaS-Controllern und Foundation Services, wie zum Beispiel Auto-Scaler, Cloud-Controller, Artifact Distribution Coordinator, Stratos Manager, Event Processor und bietet eine CLI-Schnittstelle im Bereich der PaaS-Controller. Unter Foundation Services sind Load Balancer, Logging Service, Identify Service und Metering Service zu verstehen. Alle kommunizieren über einem Message Broker mit den PaaS-Controllern. Außerdem gibt es eine Weboberfläche.
Stratos-Anwender können Images für verschiedene IaaS-Plattformen, sogenannte Cartridges erstellen. Diese enthalten jeweils Betriebssystem, Laufzeitumgebungen und Anwendungen, etwa einen Anwendungsserver (JBoss, Apache Tomcat etc.) oder eine Datenbank. Mit Hilfe des Cartridge Deployer werden diese Cartridges in Apache Stratos registriert und können dann von den Nutzern im Selbstbedienungsverfahren bestellt werden. Ein Cartridge lässt sich wahlweise für jeden Kunden als Einzelinstanz starten oder im Mandanten-Modus (Multi-Tenant). Hier werden mehrere Instanzen eines Moduls gestartet, das dann allen Anwendern zur Verfügung steht. Auf diese Weise konfektionieren Nutzer auf komfortable Weise die für ihre Projekte benötigten Umgebungen. Mehr Details dazu finden sich in der Dokumentation.