Why we chose Cloud Foundry
by Jeff Hobbs

Jeff Hobbs, June 6, 2011
Stackato and Cloud Foundry

ActiveState was thrilled with the arrival of VMware’s Cloud Foundry platform. The demonstrations of this technology at VMware's launch of the Cloud Foundry PaaS showed everyone how deploying Ruby, Node.js and Java applications to the cloud could be simple and fast. We have chosen it as the infrastructure for Stackato, ActiveState’s cloud platform for Python & Perl, and we believe that it will become the dominant platform for dynamic language application hosting in the cloud.

Learning from experience

We had previously done work on cloud infrastructure and helped others bring Python applications into the cloud with the ActivePython AMI. We learned a lot about EC2 setup and automation and became well acquainted with the limitations of the available tools and the frustration of having to code the missing pieces ourselves. If we had a need for better cloud management, surely others did too. The ActivePython AMI Toolkit started to develop into something similar to Cloud Foundry (but more specialized and obviously Python-specific).

When Cloud Foundry was released we saw a nice, generalized, open source framework to build on.

We liked vmc. It's a nice, Heroku-like client which simplifies user interaction with the system. Simplifying the user interface is good, but it also presents some limitations. We've chosen to clone the functionality in a 'stackato' client in order to add some features that are needed for the frameworks we support (e.g. running remote commands). This means we are able to eliminate vmc's client-side Ruby dependency for our users (primarily Python and Perl developers) and instead provide a single executable with no further dependencies that can be obtained by direct download or via PPM or PyPM.

Like VMware, we've decided that the "micro-cloud" VM format is an excellent way to introduce people to the technology. Users start up a single Stackato VM with all of the components necessary for a full Stackato server implementation. When they're ready to move on to a vSphere cluster or IaaS provider, they can use the same micro-cloud VM image to create servers fulfilling particular roles (Cloud Controller, Router, DEA).

Where we are now

We have hit some design issues and bugs in the early stages of development, but we are confident that through some extensions and working with the Cloud Foundry team directly, the system will become more robust and useful in short order. We see a lot of potential with this platform. One of our developers compared it to looking at code from early versions of Linux: a bit rough around the edges, but very promising. Cloud Foundry has done a number of things right, and is showing a great deal of promise and generating a lot of excitement.

We'll soon be extending the number of developers that get a chance to put Stackato through its paces, and we look forward to hearing what you have to say. If you're interested in being a part of this, please sign up for the Developer Preview.

Subscribe to ActiveState Blogs by Email

Share this post:

Category: stackato
About the Author: RSS

Jeff Hobbs is our CTO & VP, Engineering and oversees all ActiveState product development including our cloud solutions. Though he’s responsible for leading and fostering our talented development team, Jeff is a coder at heart! He is passionate about technologies that just work, making the lives of developers easier. His current obsession is making Stackato the best private PaaS platform for developers: using any language, any infrastructure, and leveraging open source - so that applications just deploy and scale in any cloud.


2 comments for Why we chose Cloud Foundry

I'm am anxiously awaiting my e-mail for my python PAAS access.

I've tried Openshift from Redhat,but it's just not ready for PAAS with DB's.



Stackato is not a service, it's the platform.

What we're delivering is a virtual appliance that you can use in your own "private cloud" (e.g. a vSphere cluster) or an IaaS provider (e.g. AWS or RackSpace) to make your own PaaS.