logo

Kubectl Said What? - Christopher Hanson, RX

2022-05-20

Authors:   Christopher Hanson


Summary

The presentation discusses how to interpret Kubernetes objects produced by kubectl to debug applications from an informed position.
  • Kubernetes resources have conditions, phases, and states that provide clues about the status of an application
  • kubectl commands like get, describe, and events can be used to extract information about the status of an application
  • Modifiers like -o can be used to output specific information about an object
  • Deployment, ReplicaSet, StatefulSet, and Job have different status conditions that provide information about the status of an application
  • Ready is an important concept in Kubernetes that indicates whether a pod is ready to serve requests
The speaker applied a few YAML files and used kubectl commands to show how to extract information about the status of an application. The speaker also explained how different Kubernetes resources have different status conditions that provide information about the status of an application. For example, the deployment has transient states like available and progressing, while the StatefulSet has a status condition that is not easy to find and not very detailed. The speaker also emphasized the importance of the Ready concept in Kubernetes, which indicates whether a pod is ready to serve requests.

Abstract

Pods in a pending state? Containers in a Crashloop? DNS acting dastardly? (okay that last one was a stretch) You’ve definitely deployed your application but it isn’t available. Kubernetes is confirming the conundrum but what exactly is it trying to communicate? The goal of this session is to explore the causes of various phases, conditions, states, and events related to Kubernetes objects that are produced by kubectl so that you debug from an informed position. By understanding the possible causes of these conditions you will learn where to start, what to pay attention to, and what unrelated messages to ignore. Attendees should be interested in saving time, reducing effort, and minimizing frustration. We will interactively examine Kubernetes objects in various error states and the clues being presented by kubectl get, describe, events, and more.Click here to view captioning/translation in the MeetingPlay platform!

Materials: