Microsoft recently announced a new Kubernetes on Azure Containers preview. Why is this of any value outside of the limited organizations running containers within Azure, or any environment?
The Microsoft announcement demonstrates the fast growing support around containers and, by proxy, shows the business value of containers in the enterprise.
Time to value
One of the themes of digital transformation is the need for agility. Outside of the term "digital transformation," time to value is a common buzzword. Time to value indicates the time it takes to procure resources and reap the benefits of the resource. It can take months to years to realize value from a traditional IT resource once procured. The promise of containers is to help reduce that time to value metric.
Containers allow developers to program to an uninformed abstraction. The underlying data center resources are not of relevance to the developer. Without modification, the code run on a laptop will run on cloud instances, VMs, or bare metal servers.
Containers reduce overall development time, which helps reduce the time to value metric. While the data center is abstracted, there's a level of effort to support containers at the data center level. Concepts such as storage, compute, and networking require experienced management.
Data center orchestration
Any solution will break when adding scale, and containers are no exception. While the code may remain unchanged, the stress on the underlying system increases. Transactions that worked within service levels on a laptop may not function as well when multiplied by the hundreds or thousands, or even millions, in production.
Just placing the containers on available compute infrastructure becomes a difficult computer science problem. At the core, data center managers deploying containers require a management system that orchestrates the infrastructure running the containers at scale. Kubernetes along with Mesos, and Docker Swarm are examples of container orchestration tools that provide the Day 2 operational ability needed for scale.
Kubernetes also leverages the concept of consistent API. A developer knows that his or her containers deployed to a Kubernetes managed infrastructure will have consistent attributes. On the operations side, data center managers have a tool by which to normalize different infrastructure components. The result is that a developer calling persistent storage doesn't need to know if the physical storage is cloud-based or an enterprise array. The operations team can seamlessly deploy applications on the infrastructure best suited for the workload.
Kubernetes on Azure
The deeper the integration of infrastructure and Kubernetes, the better the resulting operations. Microsoft has worked to ensure Azure networking, storage, and compute all work well within the Kubernetes management system. The hope is a better performing experience of applications and support. More importantly, it's a validation that containers are a critical component of the future data center, and the market is quickly maturing.
- VMware goes all in on containers with Kubernetes as a Service (TechRepublic)
- DevOps: The smart person's guide (TechRepublic)
- OpenStack embraces Kubernetes to become a whole lot more like Google (TechRepublic)
- Kubernetes 1.4: One DevOps tool to rule all the containers (ZDNet)
- CoreOS continues to bring Kubernetes to the private cloud (ZDNet)
Keith Townsend is a technology management consultant with more than 15 years of related experience designing, implementing, and managing data center technologies. His areas of expertise include virtualization, networking, and storage solutions for Fortune 500 organizations. He holds a BA in computing and a MS in information technology from DePaul University.