CloudFoundry Apps not VMs

VMware’s latest effort, CloudFoundry, is not about VMware delving into the PaaS market even deeper. They have done that already with VMforce. CloudFoundry on the other hand is a fairly astute move to enable the development and rapid adoption of cloud based applications.  The end goal is to sell what makes up a PaaS environment which is more enabling software. This would enable enterprises and businesses to move to the cloud. The problem with them moving now is that there are not that many applications that are cloud friendly. In effect more concentration on the application and less on the operating system which has always been VMware’s strategic direction.Chris Wolf asks Is VMware a Provider or Enabler? but I think they do not want to be a provider. They want to enable going to the cloud and how best to do that? By getting the developers of applications excited and using something that is open source and free. Once those applications become available, more and more organizations will seriously consider moving their less critical applications to the cloud, then slowly migrate over their tier 1 applications.
But before we move over those tier 1 applications several things need to happen:

  1. Change the mindset to the Application instead of the Operating System on which it runs. Become OS agnostic. This has been attempted a few times already, with varied success. Java was one such attempt but it is not a ubiquitous environment. It still depended on the operating system.
  2. Develop an environment in which those Applications can be developed. This has been tried before as well, such as Websphere and others, but even these were dependent upon an Operating System.
  3. Develop tools to move applications around within the cloud. This is the direction that VMware would like to go. Their demo’s of Appspeed, and other tools to allow you to move applications into a cloud at need were indeed impressive, but they were moving virtual machines, not applications.
  4. Concentrate on the application, by developing a rock solid virtual machine that sockets into an existing cloud environment and allows the motion of Applications.
  5. Get the developers involved so that applications are cloud friendly.

When you develop for the enterprise you are not divorced from the operating system. You still need to write an installer, understand what needs to change or be tweaked for better performance, etc. I believe the goal of CloudFoundry is to change this mindset as quickly as possible. VMforce did not move fast enough to picky up the developers, but CloudFoundry is an entirely new approach that will grab the imagination of the open source community. The Micro CloudFoundry approach will provide the much needed localized virtual environment for development within the enterprise.
These two technologies enable movement of applications to the cloud but there are still a large number of questions to be answered about the environment.

  1. How do tenants specify what aspects of CloudFoundry can be used?
  2. How do tenants monitor what is happening in their corner of CloudFoundry?
  3. How does CloudFoundry handle noisy tenants?
  4. How to add new lower level modules into CloudFoundry for use (such as an Apache Module, database, etc.)?
  5. Will CloudFoundry support other langauges and environments such as PHP, JQuery, MooTools, .NET, etc?
  6. How open will CloudFoundry be to running performance tests of various actions?
  7. How does CloudFoundry handle compliance and jurisdictional issues?

Just because CloudFoundry is for developers does not imply you can ignore all the other aspects of enterprise operational, security, and management processes. The key will be how CloudFoundry is integrated into these processes to allow for a dynamic development environment while protecting assets.
That being said, CloudFoundry will enable applications to move quicker to the cloud, which allows VMware to sell everyone on its operating system less vision of the cloud. As well as concentrate everyone on the Application.
I expect there will be some very cool Application specific virtualization tools shown at VMworld, such as moving an Application from one host to another without actually moving an entire VM, using, perhaps, the vApp construct.