Posted by Steve Herrod
Chief Technology Officer
It has been 20 months since VMware acquired SpringSource, launching our entry into the application development space and expanding our capability to “Simplify IT”. In the development area, we are focusing on simplifying application creation, deployment, and operations via an approach we call open platform-as-a-service, or “Open PaaS”. And over the past year, we have been busily building out this offering via acquisitions and partnerships.
Today marks a major milestone in our mission with the introduction of Cloud Foundry, the industry’s first open PaaS implementation. Cloud Foundry provides a PaaS implementation that offers developers what they need… choice:
- choice of developer frameworks,
- choice of application infrastructure services, and
- choice of clouds to which to deploy applications.
By offering an open architecture in all three dimensions, Cloud Foundry overcomes major limitations found in today’s PaaS solutions. Nascent industry PaaS offerings are held back by limited or non-standard framework support, lack of variety of application services and especially the inability to deploy applications across both public and private clouds. Let’s explore each in more detail
A Choice of Developer Frameworks
We’ are living in an exciting time for application development frameworks with a Cambrian explosion of new options. In the past, developers had to choose from the limited number of frameworks large corporations blessed as appropriate for their use. Today, developers have taken matters in their own hands and are driving incredible innovation in new frameworks. Furthermore, they are voting with their feet as they flee older development approaches to these higher productivity frameworks.
Amidst such broad innovation, PaaS solutions that are restricted to a single framework or require non-standard frameworks are simply too limiting. Because of the breadth of high productivity frameworks being used today, and the likelihood that innovation around frameworks will continue into the future, Cloud Foundry has been designed to support multiple frameworks. In the initial release, Spring for Java, Rails and Sinatra for Ruby and Node.js are supported. The system also supports other JVM-based frameworks such as Grails.
A Choice of Application Services
Just as with the frenzy of innovation occurring around frameworks, a similar phenomenon is happening around application services. Developers use these data, messaging, and web services as building blocks for their application. Data management in particular is seeing intense innovation and experimentation as different solutions emerge to handle large scale and highly distributed data problems. As with frameworks, Cloud Foundry is designed to support a wide variety of application services because there simply is no single solution that meets all application requirements. Initially, Cloud Foundry supports MySQL, MongoDB and Redis. In coming months, we will add support for other application services. We will work with the industry to support popular third party technologies as well as VMware’s own vFabric application services.
A Choice of Clouds: Public and Private, VMware and Non-VMware
A choice of clouds for application deployment is imperative for mainstream adoption of PaaS. Even if development is significantly more productive, without deployment flexibility the PaaS model is unlikely to see mainstream adoption. Customers need the flexibility, both today and in the future, to switch between cloud operators. This choice is critical to avoid lock-in, have the option to deploy applications within the firewall or to deploy in a specific geography.
Cloud Foundry can be deployed in public or private clouds. It runs on top of vSphere and vCloud infrastructure but can also run on top of other infrastructure clouds. Our partner RightScale today is demonstrating the deployment of Cloud Foundry on top of Amazon Web Services. Because of the open architecture, it could also be implemented on top of other infrastructure technologies like Eucalyptus or OpenStack.
Public Clouds: CloudFoundry.com and Partner Clouds
VMware will operate a public cloud PaaS service at www.CloudFoundry.com. This instance of Cloud Foundry will give developers an easy way to trial Cloud Foundry and provides a test bed for new services and operational optimization of the software. CloudFoundry.com is in beta and developers can sign up today for an invite. We will scale the service as quickly as possible. In the coming months, you will see other public clouds running Cloud Foundry, including existing and new VMware partners.
VMware will also offer a commercial version of Cloud Foundry for enterprise customers who want to deploy a PaaS solution on their own clouds. Cloud Foundry in a private cloud will give IT control over the application environment as well as the ability to integrate with a company’s own portfolio of application services. The commercial version will support vFabric application services as well as third party services. And by running on vSphere infrastructure, companies will be able to easily leverage their existing investments in virtual infrastructure. PaaS can help IT accelerate application delivery and reduce the application backlog.
Honey I Shrank the Cloud: The Micro Cloud
We’ve even shrunk the cloud down to sit on a developer’s laptop. With the “Micro Cloud”, we have a version of Cloud Foundry that will run in a single virtual machine. This will allow developers to build and test their applications on their own machine, with the confidence that their production environment is symmetrical to the development environment. The Micro Cloud configuration of Cloud Foundry will be available later this quarter from CloudFoundry.com.
Open Source? But Of Course
It is increasingly a prerequisite for modern developer technologies to be available as open source. This allows developers to inspect, evaluate and modify the software based on their own needs, as well as avoid the risk of lock-in. Cloud Foundry is an open source project with a community and source code today at www.cloudfoundry.org. This provides the ultimate in extensibility and allows the community to extend and integrate Cloud Foundry with any framework, application service or infrastructure cloud. Available under the Apache 2 license, this liberal licensing model encourages a broad-based community of contributors. While not a Spring project, the Cloud Foundry project will be governed like Spring based on the long and successful history of Spring as an open source project.
Each generation of computing brings a new application development platform, and in the cloud era that platform will be delivered as a service. By leveraging PaaS, developers avoid the many hassles of updating machines and configuring middleware and focus their attention on delivering applications. Reducing these obstacles means faster delivery of applications. Or as one of our own PaaS-using developers has declared,
Developers should write code, not IT trouble tickets.
For more information on Cloud Foundry, please visit CloudFoundry.com where you can request an invitation to the service and get notified when your Micro Cloud is available for download. For information on the open source project, please visit CloudFoundry.org. And you can replay the developer webcast at www.vmware.com/go/apr12.