Welcome to the Kubernetes Essentials path! This path will help us build, test, deploy, and manage applications using Kubernetes architecture. This is the right place for those who wish to start their journey in DevOps, as Kubernetes is a crucial resource in that domain.

Prerequisites

To learn from this path, we should be familiar with the following:

  • Network fundamentals
  • Git and GitHub
  • Docker for developers

If you’re not familiar with any or all of these prerequisites, you can take a walk through the Fundamental of DevOps path to learn about them.

What will we cover?

The path is divided into four modules:

The structure of this path

Getting Started with Kubernetes

This module explains Kubernetes’ basic concepts and overall application span. The main topics of this module are:

  • What Is Kubernetes?
  • What Does Kubernetes Look Like?
  • Creating a Containerized Application

A Practical Guide to Kubernetes

This module provides details on the clusters’ deployment using Kubernetes. It also introduces a wide set of tools we can use to achieve state persistence after we deploy our application. The main topics of this module are as follows:

  • Running a Kubernetes Cluster Locally
  • Pods
  • ReplicaSets
  • Services
  • Deployments
  • Ingress
  • Volumes
  • ConfigMaps
  • Secrets
  • Namespaces
  • Securing Kubernetes Clusters
  • Managing Resources
  • Creating a Production-Ready Kubernetes Cluster
  • Persisting State

Learn Kubernetes: A Deep Dive

This module teaches us the essential concepts we’ll need to be proficient in Kubernetes. These include pods, services, and deployments. We also dive into threat modeling and the real-world security practices that use Kubernetes. The main topics of this module are as follows:

  • Kubernetes Primer
  • Kubernetes Principles of Operation
  • Working with Pods
  • Kubernetes Deployments
  • Kubernetes Services
  • Services Discovery
  • Kubernetes Storage
  • ConfigMaps
  • StatefulSets
  • Threat Modeling with Kubernetes
  • Real-World Kubernetes Security

The DevOps Toolkit: Kubernetes Chaos Engineering

This module comprises various sections to familiarize us with the different types of experiments we run in chaos engineering. Towards the end of this module, we will learn to run those experiments in a Kubernetes cluster. The main topics of this module are as follows:

  • Introduction to Kubernetes Chaos Engineering
  • Defining Requirements
  • Destroying Application Instances
  • Experimenting with Application Availability
  • Obstructing and Destroying Networks
  • Draining and Deleting Nodes
  • Creating Chaos Experiment Reports
  • Running Chaos Experiments inside a Kubernetes Cluster
  • Executing Random Chaos

Let’s start!