Tuesday, January 21, 2014

What is WSO2 Private PaaS?

In this blog post, I'm going to briefly introduce the WSO2 Private PaaS, an upcoming product from WSO2.

WSO2 Private PaaS


Even though I'm writing about this now, the WSO2 Private PaaS term coined just few weeks after we donated WSO2 Stratos to Apache Foundation in June 2013.

Apache Stratos (incubating) and WSO2 Private PaaS


The WSO2 Private PaaS is built on top of the Apache Stratos (incubating) project, which is currently undergoing major architectural changes from the initial 3.0.0-incubating version.

Following are few major changes you can expect in the next Apache Stratos (incubating) release. i.e. 4.0.0-incubating version.


  • Using a message broker for communication among core Stratos components.
  • Auto scaling now analyze real time data from cartridges like in flight request count and load average. Currently this data is analyzed using WSO2 Complex Event Processor
  • Load Balancer is now a cartridge in Stratos
  • New Stratos Manager UI
  • Stratos Manager now has RESTful services
  • Improved CLI

Lakmal has written a great blog post on explaining all of these.

Why Private?


The main reason is that WSO2 Private PaaS will be distributed as a product and anyone will be able to set up an on-premise, enterprise ready PaaS.

So, what do you get in WSO2 Private PaaS?


In addition to core Stratos framework, the WSO2 Private PaaS will get all WSO2 products as cartridges.

This means that with all WSO2 middleware products as cartridges, the WSO2 Private PaaS will provide the most comprehensive PaaS for enterprises. This is also great considering all the advantages you can get from WSO2.

The WSO2 Private PaaS will also have improved billing and metering for enterprise requirements.

WSO2 will officially support following IaaS providers for WSO2 Private PaaS
  • Amazon Elastic Compute Cloud (EC2)
  • OpenStack
  • SUSE Cloud
  • VMware vCloud

Cartridge Architecture


All WSO2 product cartridges will be configured using Puppet, an automation software, which will help us to configure cartridges easily with the use of templates etc. 

The cartridge will contain the Java and an init script to the start the Puppet Agent. With the use of user-data feature provided by the IaaS, we will just pass the puppet master host and the product type to the cartridges. The Cartridge will then configure itself using Puppet.

There is a "Cartridge Agent" inside the cartridge to communication with other Stratos components.

I will write a more detailed blog post with examples once we have a stable release soon.

You can check WSO2 Private PaaS JIRA on the progress.
Post a Comment