When I talk to end users in my role as industry observer, I see confusion between container orchestration and PaaS. Some people seem to wrongly assume that the only thing PaaS does is orchestrate application containers. While PaaS takes care of container orchestration, it goes way beyond that to offer a developer interface similar to what IaaS offers IT Operations. With this in mind, I recently tweeted
With PaaS, it is not about orchestrating the containers, it is choreography
With recent announcements by leading public cloud providers in the past few weeks around offering container orchestration as a service, I thought this was a good time explain the difference between container orchestration and PaaS.
When I talk about PaaS being a full fledged choreography, I look at it from two angles. First, the abstraction it offers over the platform components and second, collaboration inside an organization. Let’s briefly consider both scenarios and understand the value PaaS offers over container orchestration.
Choreography leading to abstraction
A good developer platform contains various components including containers, orchestration engine, higher order services, etc. abstracted by a developer interface. There’s more than simply running applications encapsulated inside the containers. It starts with pulling the source code and creating the application images that needs to be deployed. It is about having seamless access to higher order services like mobile services, business rules services, etc. It is about a seamless integration into marketplace for Docker images, managing multi-tenancy or other third party services. PaaS is about putting all of these together and ensuring that there is a seamless abstraction offered to developers so that they focus on just writing code. If you go with the abstraction at the container orchestration level, it is similar to building an app dev platform using an IaaS+ approach. It’s doable but adds unnecessary complexity.
Enterprise applications (or services in Modern Enterprise lingo) are much more complex than running WordPress or Drupal applications. It requires higher order middleware services to tie in with developer applications. Also, as we move into Microservices architecture, the orchestration of these higher order services become more complex. Having complexity at both the application level and underlying platform is not only resource intensive but could result in critical failures. It makes sense for any organization embracing Microservices to use the abstraction offered by PaaS so that they can easily manage the higher order application services and avoid costly failures.
Choreography leading to team collaboration
In traditional IT one of the biggest was the friction between developers and operations–resulting in organizational paralysis. With IaaS+, things get better but the problems remain, impacting benefits from DevOps. As an organization, if you take the container orchestration path to platform building, you’ll still end up with a situation where different teams have different environments leading to friction between various stakeholders. The standardization offered by PaaS comes to the rescue here. PaaS makes sure that the application environment across different teams is consistent and helps organizations maximize the benefits from DevOps.
As I’ve shown above, it is pretty evident that PaaS is more than container orchestration. PaaS helps to fully choreograph different platform components to offer a seamless developer experience in the same way a proper choreography of dancers in a ballet is a treat to the audience.
From a DevOps angle, standardization at the Developer interface level and streamlining the deployment pipeline is key to DevOps success. If you are an organization wanting to take advantage of standard tools like Docker and Kubernetes, it is important to take a holistic look at how you assemble your IT platform. Otherwise you won’t be able to take full advantage of the abstraction offered by PaaS. Without a holistic view you’ll add inefficiency to the process and lose out on the best return on your investment.