Up until a few years ago, managing on-prem data centers was a drag for folks unable to utilize the public cloud. While everyone else could take advantage of the public cloud and all the fancy services that came with it, they were stuck with only 3 real options for data center automation: VMware, Openstack or homegrown DIY. While VMware and Openstack are powerful enough to serve as the underpinnings for many hosting providers, they certainly can leave something to be desired in terms of flexibility, automation, management hassle, and in the case of VMware leaving a bit of a hole in your pocketbook. However, with the explosion in popularity of Kubernetes and containers, running on-premises is becoming a whole lot more fun, flexible, and cost-effective. Today more than ever, organizations are changing the way they operate their infrastructure given how easy and accessible achieving hybrid-cloud computing has become.
Kubernetes Levels The Playing Field
In the past, unless an organization wanted to roll their own deployment automation and tooling, automation typically meant dealing with baking virtual machine images. Development, deployment and release velocity were slowed while the overhead and staff needed to manage infrastructure increased. Thankfully the tables are turning - Kubernetes operates in a cloud native fashion regardless of underlying infrastructure. This has led to a great deal of interest in the technology, especially from enterprise organizations such as banks and other financial institutions, government agencies and contractors, large manufacturers, and insurance companies. While the attractiveness of finally being able to accelerate workflows in their data centers is exciting, many of these organizations are still finding it difficult to locate the talent and develop the processes to get Kubernetes deployed fully on-prem for their production workloads.
It Can Be Hard to Keep Up
Given the rapid changes to the Kubernetes codebase and surrounding ecosystem, organizations are finding it hard to deploy a highly available setup, and to keep pace. Many organizations are stuck on old (and now virtually unsupported) versions of the platform. It's especially problematic when some of the latest features are some of the most important to users running in a highly regulated environment. One example is Role Based Access Control (RBAC), which was not released until Kubernetes 1.8. Keeping up is particularly challenging given the complex, and potentially risky, upgrade path. These challenges point to a need for expert support, an offering which is becoming more readily available in the industry today. The CNCF is working to accelerate this through the creation of various certifications that individuals can achieve to show their expert level knowledge as a Kubernetes Administration (CKA), or as a Kubernetes Application Developers (CKAD). Organizations that employ a certain number of certified administrators may also apply to be listed as organizationally certified.
Multiple data centers & Multiple Cloud Providers
One thing that we at Containership hear consistently in our conversations with enterprises that are interested in deploying Kubernetes on-premises is that it has become clear that managing Kubernetes clusters across the globe can be operationally challenging. Many feel that the overhead of doing so is challenging in terms of deploying to multiple clusters when the same workloads need to be deployed to multiple regions or locations. Monitoring and understanding the health of such a highly distributed platform is just plain difficult. Introducing a new, complex platform like Kubernetes may only compound the problem unless a multi-region/multi-cloud single pane of glass is also introduced.
We Are Almost To Cloud & On-Prem Parity
While there is still a ways to go until an enterprise can quickly turn their data centers into bare metal, on-prem, IaaS automation machines without any hassle, the industry is well on its way. At Containership we are focused on building a platform that helps companies, from startup to enterprise, introspect the health, performance, and configuration of their workloads and clusters, deploy into any cloud provider or on-premise, and be able to do it on the go on any device if needed. Sometimes it already feels like the future when we stop and look at how far the industry has advanced when it comes to deploying and managing software, but before we know it, all data centers and cloud providers will be returned back to their roots: power, cooling, servers, storage, and networks in a warehouse. Kubernetes is poised to help take us there, and we are doing our part to accelerate that progress, for the benefit of not just ourselves, but for every developer or operator out there.