Book Image

50 Kubernetes Concepts Every DevOps Engineer Should Know

By : Michael Levan
Book Image

50 Kubernetes Concepts Every DevOps Engineer Should Know

By: Michael Levan

Overview of this book

Kubernetes is a trending topic among engineers, CTOs, CIOs, and other technically sound professionals. Due to its proliferation and importance for all cloud technologies, DevOps engineers nowadays need a solid grasp of key Kubernetes concepts to help their organization thrive. This book equips you with all the requisite information about how Kubernetes works and how to use it for the best results. You’ll learn everything from why cloud native is important to implementing Kubernetes clusters to deploying applications in production. This book takes you on a learning journey, starting from what cloud native is and how to get started with Kubernetes in the cloud, on-premises, and PaaS environments such as OpenShift. Next, you’ll learn about deploying applications in many ways, including Deployment specs, Ingress Specs, and StatefulSet specs. Finally, you’ll be comfortable working with Kubernetes monitoring, observability, and security. Each chapter of 50 Kubernetes Concepts Every DevOps Engineer Should Know is built upon the previous chapter, ensuring that you develop practical skills as you work through the code examples in GitHub, allowing you to follow along while giving you practical knowledge. By the end of this book, you’ll be able to implement Kubernetes in any environment, whether it’s an existing environment, a greenfield environment, or your very own lab running in the cloud or your home.
Table of Contents (14 chapters)
1
Part 1: First 20 Kubernetes Concepts – In and Out of the Cloud
6
Part 2: Next 15 Kubernetes Concepts – Application Strategy and Deployments
9
Part 3: Final 15 Kubernetes Concepts – Security and Monitoring

Learning about Kubernetes app deployments

When engineers are first getting started with deploying an application to a Kubernetes cluster, it looks something like this:

  1. Create a Kubernetes manifest.
  2. Run a command such as kubectl apply -f or kubectl create -f against the manifest.
  3. Ensure that the application has Pods running.
  4. Access your app to ensure it’s running the way you were expecting it to run.

Although this is a great approach to getting started with deploying applications to Kubernetes, we must dive a little bit deeper to fully understand how the deployment process of an app occurs, why it works the way that it does, how manifests interact with Kubernetes to ensure an application is deployed, and how Kubernetes keeps the desired state of Pods running.

It seems like how Kubernetes deploys apps is simply magic that occurs on the platform because that’s how it’s built and that’s the way it’s supposed to be, but there...