If there is one universal truth in IT, it is that businesses are always slower to adopt new technology than expected. Way back in March of 2011, Gartner declared that it would be the year of Platform as a Service (PaaS), predicting that by 2015 most enterprises would have part of their critical software leveraging PaaS directly or indirectly. More recently in January of 2014, 451 Research published a report predicting that lackluster PaaS adoption may be an indication that standalone PaaS services may simply be consolidated into existing Infrastructure as a Service (IaaS) offerings.
For most businesses I meet, accelerating the application development life-cycle, and simplifying all operations processes remains a key challenge. In fact, the majority of customers I have spoken with in the last six months since 451’s research either have active projects to develop their own internal PaaS offering, or intend to start such projects within the year. It may be small sample bias, but talk to enough businesses and users, and I think that patterns begin to emerge. In summary, I believe we are seeing what may be the very beginning of a larger shift (finally) toward enterprise IT developing PaaS-like capabilities of their own.
Yet in the end, 451’s prediction may not be too far from the truth, as new technologies enable existing IaaS solutions to become more PaaS-like. I have written previously on the adoption of containerization and the resulting consequences for PaaS and IaaS. Since then, the activity in the Docker ecosystem has continued to accelerate. Google announced Kubernetes for running containers on the Google Cloud Platform, Amazon announced support for Docker containers in AWS Elastic Beanstalk, while Red Hat and Ubuntu both announced support for Docker. The takeaway then is that vendors are moving very quickly to enhance their products and services with native support for containers, and as a result PaaS-like features will start to emerge as a standard part of IaaS offerings.
Then there is the issue of operations. For years now, people like me have been drawing charts like the one below, which identified the trend toward platform and utility computing. The utopian theory goes that application developers want to focus strictly on creating their core business logic, and leave the messy work of hosting and scaling the application to… no one at all. In the future, ever increasing layers of automation and abstraction eliminate the necessity of operations (and operations teams) completely, ultimately leading to the unicorn-infested utopia of NoOps.
The problem with this chart, and with this trend, has always been this NoOps aspect. What we saw recently with the Great Code Spaces Debacle of 2014, and as Trevor Pott described so succinctly, is what most IT operations and sysadmins understand intuitively: cloud services are not a magic pill to eliminate operations issues. Instead, they create a number of new challenges for operations, such as data replication and migration, disaster recovery, security, and governance, that can all have dire consequences when ignored. These challenges are significant barriers to wholesale PaaS adoption, and some of the issues Trevor Pott identifies (like lock-in) are reasons PaaS adoption has been stalled versus the earlier rose-colored forecasts.
Mitigating these risks requires more traditional systems management techniques, yet those techniques are precisely what has been driving developers toward PaaS in the first place. Containerization, and its emerging ecosystem, will result in a new set of tools that lead to “open” PaaS architectures. Just like the autopilot in a commercial aircraft, in the “Open PaaS” world, operations teams will be able to disengage the automation to analyze, troubleshoot, and correct infrastructure issues in real time. This means that PaaS solutions like OpenShift and Cloud Foundry, or their successors, will have to do a lot more to create tools that offer administrators command, control, and logging. OpenShift is a step in the right direction, and SaltStack already provides a lot of this tooling right out of the box. When PaaS solutions start to look a lot more like open architectures, we will see enterprises moving quickly to enable their development teams, creating PaaS-like features for developers without PaaS-like lock-in.