Container Technology and its Relevance for the PaaS Cloud
By Dr. Claus Pahl
Abstract— Containerisation is widely discussed as a lightweight virtualisation solution. Apart from exhibiting benefits over traditional virtual machines in the cloud, containers are especially relevant for Platform-as-a-Service (PaaS) clouds to manage and orchestrate applications through containers as an application packaging mechanism. We discuss the requirements that arise from having to facilitate applications through distributed multi-cloud platforms.
The cloud relies on virtualisation techniques to achieve elasticity of large-scale shared resources. Virtual machines (VMs) have been the backbone at the infrastructure layer providing virtualised operating systems. Containers are a similar, more lightweight virtualisation concept, i.e., less resource and time consuming. They have been suggested as a solution for more interoperable application packaging in the cloud. VMs and containers are both virtualisation techniques, but solve different problems. The difference is that containers are tools for delivering software – i.e., there is a PaaS (Platform-as-a-Service) focus – in a portable way aiming at more interoperability  while still utilising operating systems (OS) virtualisation principles.VMs on the other hand are about hardware allocation and management (machines that can be turned on/off and be provisioned) – i.e., there is an IaaS (Infrastructure-as-a-Service) focus on hardware virtualisation. Containers as a replacement for VMs are only a specific use case where the allocation of hardware resources is done through containers by componentising workloads in-between clouds. For portable, interoperable applications in the cloud, we need a lightweight distribution of packaged applications for deployment and management . A solution is containerisation.The basic ideas of containerisation are:
- a lightweight portable runtime,
- the capability to develop, test and deploy applications to a large number of servers and
- the capability to interconnect containers.
Bernstein  already proposes containers to address concerns at the cloud PaaS level. They also relate to the IaaS level through sharing and isolation aspects.This article reviews the virtualisation principles behind containers, in particular in comparison with virtual machines. The relevance of the new container technology for PaaS cloud shall be specifically investigated.
As applications are distributed today, the resulting requirements for application packaging and interoperable orchestration over clusters of containers are also discussed. We aim to clarify how containers can change the PaaS cloud as a virtualisation technique, specifically PaaS as a platform technology. We go beyond , addressing what is needed to evolve PaaS significantly further as a distributed cloud softwareplatform resulting in a discussion of achievements and limitations of the state-of-the-art. To illustrate concepts, some sample technologies will be discussed if they exemplify technology trends well.