Kubernetes: Containers as a Service, foundation for Next Generation PaaS
In this Feb 2017 blog Kubernetes describe how Containers as a Service (CaaS) is the foundation for Next Generation PaaS.
Containers as a Service
This highlights how the container technology trend has also innovations in service delivery models too, most notably ‘Containers as a Service’ (CaaS).
For example Docker launched a CaaS tailored for the enterprise market in Feb 2016. ClearDATA launched one tailored for Healthcare. iLand’s Richard Stinton describes how a recipe for implementing CaaS on VMware Admiral and Photon OS.
Shoulders upon shoulders – SaaS Venture Platform
The essential points that Kubernetes make about this ongoing evolution are highlighted when we consider them through the eyes and goals of a SaaS Entrepreneur.
They suggest the layer of CaaS isn’t an alternative to an Enterprise PaaS but rather an underlying enabler of it. They separate out the tools automation function of a PaaS scenario, that would be the part of most personal interest to software developers and specific to their needs, from the common enterprise computing functions a PaaS also encompasses, most notably what containers address.
Brendan Burns, Partner Architect, at Microsoft & Kubernetes co-founder suggests a ‘layers upon layers’ approach instead, where you can stand upon the shoulders of giants, who themselves are standing on the shoulders of giants, Ie. Containers exploit the first wave of IaaS computing, and further layers can then exploit them, through Containers as a Service, such as Enterprise PaaS or in this case SaaS.
Nirmata demonstrate the principle in practical action – In their own in-house SaaS scenario they decribe operationalizing a SaaS framework via core Netflix OSS Microservices building blocks, implemented through Docker containers.
In this VentureBeat article Peter Yared, CTO of Sapho, also explores the CaaS scenario as a SaaS accelerator, via defining it as a “hybrid SaaS” capability that delivers subscription-based software via a SaaS-like model, but it is deployed on-premise to the client via containers.
This type of breakthrough can open the door for a variety of innovative new as-a-service models, especially for Telcos in key areas like NFVaaS.
SaaS Containerization on AWS
For example this would correspond with Slide 17 from the AWS Alliance Director, presenting on Building and Growing SaaS on AWS.
This presentation shows three possible SaaS options:
- Isolated customer stacks – Independent AWS resources per customer.
- Pure SaaS shared architecture – On-demand resource utilization with shared infrastructure, top to bottom.
- Containerization on shared platform – Provide “slices” of AWS with Amazon EC2 Container Service and Docker.
So this 3) option for SaaS would correspond with the CaaS trend.
Nirmata: “Application Dockerization” – Netflix OSS Recipe for SaaS Ventures
Nirmata is a highly scalable, always-on, cloud service that fully automates the delivery and management of cloud applications.
Most notably they define a core SaaS Startup Recipe made up of:
- Gateway Service: Zuul
- Registry Service: Eureka
- Dynamic Properties: Archaius
- REST client: Ribbon
They describe how they decided upon the best recommendations for a profile of these modules by building their own SaaS, via an approach they describe as “Application Dockerization“:
We developed our own layer of service orchestration on top of Docker. Orchestration of microservices, combined with the choice of Docker as the delivery vehicle for microservices, proved to be a winning solution.
In particular they highlight the benefits of this approach to the SaaS Entrepreneur:
There is also a very interesting side effect to using containerization: cost saving. We use AWS to deploy our various SaaS environments: development, test, staging and production. Nirmata’s orchestration can use a placement policy to pack multiple containers on one single AWS instance. It represents hundreds of dollars of saving at the end of each month. Quite interesting for any cost sensitive business.