Showing posts with label CloudController. Show all posts
Showing posts with label CloudController. Show all posts

Thursday, April 17, 2014

Apache Stratos as a single distribution

In Apache Stratos, we have recently worked on merging 3 of our main products (Stratos Manager, Cloud Controller and Auto-scaler) along with WSO2 CEP (Stratos uses WSO2 CEP as its complex event processing engine) into a single distribution using the powerfulness of WSO2 Carbon Framework. By doing so, we have expected to gain following main benefits:

1. Reduce the barrier for a new developer to getting started with Stratos.

2. Make lives of Stratos developers' easier by reducing the number of JVMs.

3. Deploying a distributed set-up using a single distribution in a production environment.

Earlier, in order to run Stratos, one needed to configure 3 Stratos products mentioned above, in addition to a message broker (Stratos uses message broker as its main inter-component communication channel), WSO2 CEP and WSO2 BAM (if you need monitoring capability). This would be resulted in six JVMs (assuming MB is also a JVM process) and would consume considerable amount of memory of your machine. Hence, lot of new blood, would rather give-up even without thinking of starting Stratos. 

With the introduction of this single distribution, as a developer, you can get-started with Stratos only with two JVMs namely Stratos JVM and MB (assuming it's a JVM), and in-turn would help us to attract more people to the project.

Reducing number of JVMs makes it easier to check logs, debug and makes your life way easier, as a contributor to Stratos. 

Further, you can use this single Stratos distribution and start Stratos Manager, Cloud Controller and Auto-scaler in 3 separate JVMs which will be useful in a real production deployment. In this case, of course you need to deploy WSO2 CEP and WSO2 BAM separately in addition to a Message Broker. 

Other than these, a single JVM Stratos deployment also capable of writing the data published by Stratos into a file (repository/logs/aggregate.log), so that you do not need an external business activity monitor in order to have a developer environment.

Try it out by following our wiki documentation here.


Monday, December 24, 2012

WSO2 Stratos-2.0 - Cloud Controller - Part 1

What is Cloud Controller?

Cloud Controller plays a vital role in Stratos 2.0 and here I list its capabilities and duties.

WSO2 Cloud Controller,

  • is acting as a bridge between application level and Infrastructure as a Service (IaaS) level via Jclouds API.
  • enables your system to scale across multiple IaaS providers.
  • is the central location where the service topology resides.
  • is responsible for sharing the up-to-date service topology among other Stratos 2.0 core services, periodically.
  • supports hot update and deployment of its configuration files.
  • has inbuilt support for AWS EC2 IaaS provider and Openstack Nova IaaS provider.
  • enables you to cloud burst your system across multiple IaaS providers.
  • allows you to plug an implementation of any IaaS provider supports by jclouds, very easily.
  • enables you to spawn new service instances, while associating a public IP automatically, in order to reduce the instance boot-up time.
  • enables you to terminate an already started instance of a particular service cluster.
  • can be configured to cover many scenarios, using its well-thought-out configuration files.

Awaits the next post on Cloud Controller's SOAP Service Interface...