Book Image

Introduction to DevOps with Kubernetes

By : Onur Yılmaz, Süleyman Akba≈ü
Book Image

Introduction to DevOps with Kubernetes

By: Onur Yılmaz, Süleyman Akba≈ü

Overview of this book

Kubernetes and DevOps are the two pillars that can keep your business at the top by ensuring high performance of your IT infrastructure. Introduction to DevOps with Kubernetes will help you develop the skills you need to improve your DevOps with the power of Kubernetes. The book begins with an overview of Kubernetes primitives and DevOps concepts. You'll understand how Kubernetes can assist you with overcoming a wide range of real-world operation challenges. You will get to grips with creating and upgrading a cluster, and then learn how to deploy, update, and scale an application on Kubernetes. As you advance through the chapters, you’ll be able to monitor an application by setting up a pod failure alert on Prometheus. The book will also guide you in configuring Alertmanager to send alerts to the Slack channel and trace down a problem on the application using kubectl commands. By the end of this book, you’ll be able to manage the lifecycle of simple to complex applications on Kubernetes with confidence.
Table of Contents (11 chapters)

Troubleshooting Applications in Kubernetes

To be able to troubleshoot applications efficiently, you need to understand some key concepts in Kubernetes. This will light up the way to ease the process of figuring out and solving issues. As one of these concepts, we explain the Pod life cycle in the next section.

Pod Life Cycle

In Kubernetes, a Pod goes through many different stages. They are controlled either by the creator of the Pod object or by the Kubernetes controller. In the lifetime of a Pod, it is never destroyed unless that is explicitly requested.

Pod Status

Every Pod object has a status field that shows the life cycle events of the Pod. It consists of many subfields for us to understand what the current health status of the Pod is.

Here's an example of what a Pod status includes:

status:
  conditions:
  - lastProbeTime: null
   
//[...]
Events:
    FirstSeen	LastSeen	Count	From			        SubobjectPath	Type		Reason			    Message
    ---------	-------...