Recently a new meme has started among the cloud chatterati: the death of PaaS, or PaaS morphing into functionality for IaaS or PaaS. This discussion peaked when an analyst from 451 Research wrote a report titled "Is PaaS becoming just a feature of IaaS?" (subscription required). An example of how others have picked up the theme appeared Jan. 14 in Network World.
In today's fast-evolving technology world, it's natural for pundits to write premature obituaries, but it's also important to look deeper and understand the reason for their confusion. One explanation is that PaaS has gone beyond hype and reached a new level of maturity. Last year, many enterprises adopted PaaS for their production workloads, but 2013 was also the year when the demarcation between two flavors of PaaS became clear.
Another reason is the strategy adopted by cloud vendors like Microsoft and Google. Both started off with PaaS but eventually started offering IaaS to compete with Amazon Web Services. Microsoft in particular has blended its offering with both PaaS- and IaaS-like features.
Two flavors of PaaS
In the beginning, PaaS was constructed as the middle layer in the cloud stack between IaaS and SaaS to describe the evolution of application deployment platforms in the cloud. PaaS was dominated by services like Google App Engine, Heroku, and Engine Yard in those early years. As the space matured, we saw the evolution of PaaS meeting the needs of modern enterprises.
[For another perspective on the state of IaaS and PaaS, see Is The Cloud Platform Battle Over?]
Innovations by Red Hat in OpenShift, VMware (now Pivotal) in Cloud Foundry, Docker in its dotCloud platform, and others led to a new generation of PaaS offerings that are architecturally different from the first generation. In this article, I will discuss the two flavors of PaaS.
PaaS by service orchestration
This flavor of PaaS, offered by early providers like Google App Engine, built the platform by composing different services needed for application deployment. It started with a compute fabric, on which services for data storage, monitoring, logging, etc. were added. In this flavor, PaaS is nothing but a composition of services needed for the applications to run. These were purely hosted offerings, and building and managing a platform using service orchestration was easy for providers.
PaaS by container orchestration
As PaaS matured and enterprises started to demand a private version, another flavor developed. This was mainly due to the maturity of Linux Container technology and the feasibility of building a platform based on containers that could also be implemented and managed on the premises.
Docker is a perfect example of fast, lightweight Linux containers that make it easy for users to port their applications across different cloud providers. Unlike virtual machines that abstract only raw compute, containers can encapsulate entire applications and application environments. Vendors like Red Hat, dotCloud (now Docker), VMware (now Pivotal), and others saw value in the container-based approach: An orchestration and management layer on top of containers can offer the same seamless developer experience as the first-generation PaaS. For a growing number of vendors, container orchestration is fast becoming the norm. This is further proven by the growing interest in OpenStack's standalone Project Solum to build an abstraction layer for application deployment using container technology.
When you step back and consider the two flavors of PaaS, it's easy to understand why some industry watchers are confused. The service orchestration-based approach of PaaS is similar to SaaS architecturally, and the container orchestration approach of PaaS is similar to the VM-based approach of IaaS. Though SaaS and IaaS can be extended to resemble one of these two flavors, there is a clear value proposition for PaaS as it is defined as a separate layer in the cloud stack. This is especially true with the container orchestration flavor.
PaaS removes the complexity and costs associated with IaaS, whereas companies like Netflix use additional tools to build a platform atop Amazon. Though Netflix approach might fit its needs at web scale, PaaS can greatly simplify enterprise IT departments' efforts as they transition to a more modern system.
It's natural for similarities between platforms to cause confusion, but a premature obituary for PaaS will end up hurting an industry that could otherwise derive great value from ongoing development.
Krishnan Subramanian is director of OpenShift strategy at Red Hat and a frequent cloud commentator. He was formerly an analyst with Rishidot Research and a physicist.
Can the trendy tech strategy of DevOps really bring peace between developers and IT operations -- and deliver faster, more reliable app creation and delivery? Also in the DevOps Challenge issue of InformationWeek: Execs charting digital business strategies can't afford to take Internet connectivity for granted.