Problems solved and problems created by Kubernetes

Kubernetes is all the rage these days, and rightly so. The open source project, originally created by Google, is designed to automate the deployment and management of your containerized applications. But does Kubernetes create more problems than it solves? Is it worth the effort of the going through a steep learning curve to use Kubernetes to deploy your production applications? Let’s dig in and find out.

One of the most interesting aspects of Kubernetes is that it’s a platform designed to help development and operations teams go faster. Here’s the description of K8s as a platform directly from the Kubernetes website… “Even though Kubernetes provides a lot of functionality, there are always new scenarios that would benefit from new features. Application-specific workflows can be streamlined to accelerate developer velocity. Ad hoc orchestration that is acceptable initially often requires robust automation at scale. This is why Kubernetes was also designed to serve as a platform for building an ecosystem of components and tools to make it easier to deploy, scale, and manage applications.”

Problems Solved Using Kubernetes

When it comes right down to it, Kubernetes was created to automate most of the tasks associated with deploying many clustered services across many infrastructure components. Kubernetes provides the following capabilities:

Kubernetes is certainly a great automation tool for deploying and managing distributed containerized application services. It would be very labor intensive and time consuming to try to achieve the same results manually, if possible at all.

Problems Created Using Kubernetes

As with everything technology related there are benefits and drawbacks, and Kubernetes is no exception. Along with all of the problems Kubernetes solves, it creates some new challenges too.

Kubernetes for the Uninitiated

The high degree of complexity in Kubernetes means that it requires a longer, steeper learning curve than most other technologies. As such, there are very few Kubernetes experts out there and your company most likely does not have those skills in house. Apart from the team who manages Kubernetes, there are many disciplines in the application delivery organization that need information from or about Kubernetes as it relates to the deployed applications and services. For example, after a developer commits a code update, there are many questions that need to be answered.

  • Has the new version been deployed?
  • Are all of the desired replicas running?
  • If the deployment failed, why?
  • Was there a performance regression?
  • Are there any errors?
  • Are there performance optimization opportunities?

The answers to some of these questions are contained within Kubernetes, but to answer all of these questions requires correlation between Kubernetes monitoring data and application monitoring data. This requires a monitoring solution that is capable of understanding infrastructure, Kubernetes, and application dependencies. This requires a monitoring system that can aggregate data across Kubernetes clusters and isolate data for each Kubernetes service. This requires a system that makes it easy to transition between and analyze – infrastructure, Kubernetes, and application performance data to isolate root cause and quickly respond to incidents.

Kubernetes Service Dashboard

Figure 1: Screenshot of Instana dashboard showing Kubernetes service and metrics

Enhancing the abilities of Kubernetes experts and making Kubernetes accessible to the rest of us are key elements to Instana’s monitoring philosophy. If your company uses Kubernetes you need to experience Instana in your own environment today. It takes 5 minutes to start monitoring Kubernetes and all of your application services. Sign up for your free trial today.

Play with Instana’s APM Observability Sandbox

Featured, Thought Leadership
The Muddy Messaging of Observability and Application Performance Management Here's a question I get asked quite a bit: “How is Enterprise Observability different from APM and/or just plain Observability?” It’s a reasonable...
Featured, Product, Thought Leadership
Instana prides itself in being the first Observability tool to launch support of Google Cloud Run via a Cloud Native Buildpack. The Instana Cloud Native Buildpack for Cloud Run makes adding Instana...
Developer, Thought Leadership
Kubernetes (also known as k8s) is an orchestration platform and abstract layer for containerized applications and services. As such, k8s manages and limits container available resources on the physical machine, as well...

Start your FREE TRIAL today!

Instana, an IBM company, provides an Enterprise Observability Platform with automated application monitoring capabilities to businesses operating complex, modern, cloud-native applications no matter where they reside – on-premises or in public and private clouds, including mobile devices or IBM Z.

Control hybrid modern applications with Instana’s AI-powered discovery of deep contextual dependencies inside hybrid applications. Instana also gives visibility into development pipelines to help enable closed-loop DevOps automation.

This provides actionable feedback needed for clients as they to optimize application performance, enable innovation and mitigate risk, helping Dev+Ops add value and efficiency to software delivery pipelines while meeting their service and business level objectives.

For further information, please visit