Will 2016 be the year when containers take off? We are not at a place where containers are mainstream yet, but all signs seem to indicate that interest in containers continues to rise. VMware has recently open-sourced its Photon Platform. To help channel interest in the new platform, it has created the Photon Platform Devbox, which brings the power of the Photon Platform right to your desktop or laptop via VMware Fusion or VMware Workstation.
So, what are containers, and what is the big appeal? I found a good definition and explanation of containers in this article, which explains that “Container-based virtualization, also called operating system virtualization, is an approach to virtualization in which the virtualization layer runs as an application within the operating system (OS). In this approach, the operating system’s kernel runs on the hardware node with several isolated guest virtual machines (VMs) installed on top of it. The isolated guests are called containers.”
What is driving this interest is that with containers, you have several virtual machines sharing the host operating system. This approach has the potential to improve performance between the virtual machines in the container, but for hosting providers and even webserver farms that run quite a few servers that all share the same kernel type and version. You cannot mix Windows virtual machines with Linux virtual machines in the same container, but you can run a different flavor of Linux in a single container with the main benefits of container-based virtualization, in that it doesn’t duplicate functionality and it improves performance and scalability.
In some ways, I see the birth and rise of containers following along the same path as virtualization when it first got started at the turn of the century. Although the main use case and marketing message in the beginning was virtualization, it had the ability to shrink the footprint of the physical infrastructure. Another part of the message was the consolidation of the physical servers in a virtualized environment. Containers take that a step forward inside the virtual environment by consolidating the virtualized guest operating system.
We are now to a point at which containers offer the same features as standard virtual, but with minimal overhead. Containers will start much faster than their virtual machine counterparts, so much so that many container configurations have the ability to launch on-demand as the requests come in. From this comes the performance gains, in that there is zero idle memory or processor overhead. As an example, a container running Systems MD or Upstart to manage its services has less than 5 MB of system memory overhead and nearly zero CPU consumption. With copy-on-write for disk, provisioning new containers can happen in seconds.
In my opinion, it does not take much to see the potential that containers bring to the data center. Whether it becomes a niche technology or more mainstream remains to be seen, but the groundwork is being laid. I believe that once we see Microsoft get on the container bandwagon, the technology has the potential to really take off, but in the meanwhile adoption of containers, I predict, will continue to rise at a slow and steady pace, kind of the same way virtualization got its start.
Circling back to VMware’s Photon Platform, I have to admit that the Photon Controller is one part of the platform that really has piqued my interest. The Photon Controller is a distributed, multi-tenant host controller that is optimized for containers. The Photon Controller is designed as an API-first model that focuses on the automation of the infrastructure consumption and operations using RESTful APIs, SDK , and CLI. The controller is a very fast control plan that is designed and optimized to scale out efficiently. It has the ability to allow the creation of thousands of new container workloads per minute and the ability to support 100,000 workloads. I, for one, would really like to see VMware create this type of platform to replace the VMware vCenter Server as the center of VMware’s universe. The VMware client is a solid tool for the management of VMware’s virtual infrastructure. The web client is getting better and better, but I find myself thinking that separating out the web client from the vCenter server itself, while leaving an API-first centerpiece that other products and technologies can build upon with little overhead on the controller, for the other services to make up the vSphere technology. So, I will leave you with one question: do you think 2016 will be the year of the containers?