WSO2 has announced today Stratos 2.0, introducing a number of new features, the most important being: support for deploying runtimes written in any language through the use of cartridges, and the possibility to run their PaaS on multiple infrastructures via JClouds.
Stratos 2.0’s architecture is depicted in the next image:
Following, we’ll provide details for the two new elements that have been introduced to the architecture, namely Cartridges and support for multiple IaaS.
Cartridges
Cartridges are a way of packaging a runtime making it available to be run on Stratos. There are two types of cartridges: Carbon and non-Carbon. Carbon or Product Cartridges are wrappers around WSO2 middleware products, including ESB, API Manager, Application Server, Governance Registry, Business Process Manager, Identity Server, WSO2 Message Broker, etc.. These cartridge are provided by WSO2.
A non-Carbon cartridge is a virtual machine image created for a specific IaaS, including the desired runtime and some configuration information, which is then registered with Stratos Cloud Controller and deployed to be run on a PaaS.
WSO2 currently has created PHP and MySQL cartridges with the intent to provide more in the future. Developers can create their own cartridges following the guidelines.
Carbon or custom cartridges are cloud ready and have built-in multi-tenancy support.
Complex products requiring multiple cartridges in order to run are not supported yet, but they will be in the next version, according to WSO2.
Multiple IaaS
The other major feature available in Stratos 2.0 is the possibility to deploy the PaaS on multiple IaaS infrastructures, including the ability to dynamically switch from an IaaS to another or scaling across different IaaS as needed. This features has been added by incorporating JClouds technology, expanding the number of IaaS supported to 30, including all OpenStack variants, VMware, Eucalyptus, and Amazon EC2.
Stratos 2.0 is open source, licensed under Apache 2.0.