Mid-level Track Roadmap

DevOps: Kubernetes basics

This course covers the core objects of Kubernetes and how a Rails application runs on them. It starts with the reconciliation loop, where controllers close the gap between desired and actual state. It also weighs the cost of adopting a cluster. Lessons then cover Pods and Deployments, rolling updates, Services, cluster DNS and Ingress, ConfigMaps and Secrets, probes, and resource requests and limits. Later lessons add migration Jobs, workers and autoscaling. It ends with a full manifest set and a release sequence.

What you'll learn

  • ✓How the reconciliation loop and the control plane parts work together
  • ✓Writing Deployments with matching labels, pinned image tags and rolling update settings
  • ✓Exposing pods through Services, cluster DNS and Ingress
  • ✓Delivering configuration with ConfigMaps and protecting Secrets
  • ✓Setting probes, resource requests and limits, and reading pod failure states
  • ✓Running Rails migrations as Jobs, workers as Deployments and autoscaling with an HPA
Free preview · Lesson 1 4 min read

Why a cluster changes the question

Everything in this series so far has named machines. The Kamal configuration says hosts: [203.0.113.10], and you are the one who decided that this application runs on that server. When the server is full you add another line, and when the server is down you find out and act.

Read the full lesson free →

Curriculum

7 lessons
Type to start searching...