6 Kubernetes Pain Points and How to Solve Them - Part 1
March 05, 2018

Kamesh Pemmaraju
ZeroStack

Companies want to implement modern applications that can be used anytime, anywhere by always-connected users who demand instant access and improved services. Developing and deploying such applications requires development teams to move fast and deploy software efficiently, while IT teams have to keep pace and also learn to operate at large scale.

While the concept has been around for a couple of decades, containers staged a comeback in the last 3-4 years because they are ideally suited for the new world of massively scalable cloud-native applications. Containers are extremely lightweight, start much faster (than VMs), and use a fraction of the memory compared to booting an entire operating system. More importantly, they enable applications to be abstracted from the environment in which they actually run. Containerization provides a clean separation of concerns, as developers focus on their application logic and dependencies while IT operations teams can focus on deployment and management without bothering with application details.

Deploying and managing containers is still a significant challenge, however. In the past couple of years, Kubernetes burst onto the scene and became the de facto leader as the open-source container orchestrator for deploying and managing containers at scale. The hype has reached such a peak now that there are as many as 30 Kubernetes distribution vendors and over 20 Container-as-a-Service companies out there. All the major public clouds (AWS, Azure, and Google Cloud) provide Container-as-a-Service based on Kubernetes.

With more than 30 Kubernetes solutions in the marketplace, it's tempting to think Kubernetes and the vendor ecosystem has solved the problem of operationalizing containers at scale. Far from it. There are six major pain points that companies experience when they try to deploy and run Kubernetes in their complex environments, and there are also some best practices companies can use to address those pain points.

Pain Point 1 - Enterprises have diverse infrastructures

Bringing up a single Kubernetes cluster on a homogenous infrastructure is relatively easy with the current solutions in the market. But the reality is that organizations have diverse infrastructures using different server, storage, and networking vendors. In this situation, automating infrastructure deployment, setting up, configuring, and upgrading Kubernetes to work consistently is not easy.

One way to address this challenge is to deploy a unifying platform that abstracts the diversity of underlying infrastructure (physical server, storage, and networking) and offers standard open API access to infrastructure resources. This greatly simplifies the IT burden when it comes to provisioning Kubernetes.

Pain Point 2 - One Kubernetes cluster doesn't address all needs

Organizations have diverse applications teams, application portfolios, and sometimes conflicting user requirements. One Kubernetes cluster is not going to meet all of those needs. Companies will need to deploy multiple, independent Kubernetes clusters with possibly different underlying CPU, memory, and storage footprints. If deploying one cluster on diverse hardware is hard enough, doing so with multiple clusters is going to be a nightmare!

To address this pain point, the IT team should be able to set up logical business units that can be assigned to different application teams. This way, each application team gets full self-service capability within quota limits imposed by the IT team, and each team can automatically deploy its own Kubernetes cluster with a few clicks, independently of other teams.

Read 6 Kubernetes Pain Points and How to Solve Them - Part 2

Kamesh Pemmaraju is VP of Product at ZeroStack

The Latest

November 15, 2018

Serverless infrastructure environments are set to become the dominant paradigm for enterprise technology deployments, according to a new report — Why the Fuss About Serverless? — released by Leading Edge Forum ...

November 14, 2018

What to automate? Which parts of the delivery process are good candidates? Which applications will benefit from automation? At first, those sound like silly questions. Automate all your repetitive processes. If you think that you'll do the same thing manually more than once, automate it. Why would you waste your creative potential and knowledge by doing things that are much better done by scripts? Yet, an average company does not adhere to that logic. Why is that? ...

November 13, 2018

I'd love to see more security automation deeply integrated into the development process. Everybody knows since the 1990s that security as an afterthought just doesn't work, yet we keep doing it. The reason, I think, is because it's very hard to automate security ...

November 09, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 5, the final installment, covers deployment and production ...

November 08, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 4 is all about security ...

November 07, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 3 covers the development environment and the infrastructure ...

November 06, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 2 covers the coding process ...

November 05, 2018

Everyone talks about automating the software development lifecycle (SDLC) but the first question should be: What should you automate? With this question in mind, DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 1 starts with by-far the most popular recommendation: Testing ...

October 31, 2018

Halloween is a time for all things spooky, but not when it comes to your mobile app experience. A poor experience can not only scare off your customers but keep them away for good ...

October 30, 2018

As organizations have embraced open source, they have become polyglot — using multiple programming languages and technology stacks to accomplish software and hardware related tasks. Enterprises are caught between the benefits provided by a polyglot environment and the complexities and challenges these environments bring. Ultimately, if the situation remains unchecked, polyglot will kill your enterprise ...

Share this