Skip to main content

Kubernetes Essentials for Programmers: Practical Containers & Orchestration

Executive Summary

This three-day course equips developers with the skills to build, deploy, and scale containerized applications using Kubernetes. Through hands-on labs, participants will explore YAML, pods, networking, storage, security, and CI/CD integration. Ideal for programmers looking to master Kubernetes and modernize their cloud-native development workflows.

Programming Professionals Collaborating

Description

The course is a comprehensive, hands-on training course designed for software developers, DevOps engineers, and IT professionals who want to master container orchestration using Kubernetes. This course provides a deep dive into Kubernetes, the industry-standard platform for managing and scaling containerized applications in cloud-native environments.

Participants will learn Kubernetes fundamentals—such as pods, deployments, services, and namespaces—alongside advanced concepts including application lifecycle management, persistent storage, networking, scheduling, and security. Through real-world exercises, students will use popular Kubernetes tools and integrate Kubernetes into CI/CD pipelines and public cloud platforms.

Tailored for those with a programming background, this course equips learners with the practical skills and modern DevOps practices needed to confidently deploy, manage, and scale applications using Kubernetes in production environments.

Objectives

  • Understand the fundamentals of Kubernetes and container orchestration, including local Kubernetes platforms
  • Set up a development environment using Docker Desktop and Visual Studio Code
  • Gain proficiency in YAML, a human-readable data serialization language
  • Learn Kubernetes core concepts and tools, and work with pods
  • Master application lifecycle management in Kubernetes, including deployments and rollouts
  • Understand Kubernetes networking and storage, including services, ingress, and volume types
  • Learn about Kubernetes scheduling, jobs, and configuration management
  • Familiarize with monitoring, logging, and security in Kubernetes, and integrate Kubernetes with CI/CD pipelines and public cloud

Duration

21 hours of intensive training with live instruction delivered over three to five days to accommodate varied scheduling needs.

Request Information

Course Outline

Overview of Kubernetes and Container Orchestration
  • What is Kubernetes (K8s)?
  • What is Containerization?
  • What is Orchestration?
  • Local K8s Platforms
    • Docker Desktop K8s
    • MicroK8s
    • Minikube
Development Environment
  • Docker Desktop (or MicroK8s)
  • Visual Studio Code and useful Extensions
  • Container Registries
YAML Fundamentals
  • What is YAML?
  • Basics
  • Syntax & Comments
  • Data Types & Structures
  • Multi-Line Strings, Lists, and Maps
Kubernetes Core Concepts
  • Kubernetes Architecture
  • Cluster Communication
  • Objects
  • Object Properties
  • Labels & Selectors
  • Annotations
  • Object Management
  • Image Fundamentals
  • Container Fundamentals
  • Pod Fundamentals
  • Working with Pods
Kubernetes Tools
  • kubectl
  • K8s Dashboard
  • Helm
Application Lifecycle Management
  • Containers, Pods, and Deployments
  • Container Lifecycle
  • Pod Lifecycle
  • Container Environment and Commands
  • ReplicaSet
  • StatefulSets
  • Deployments
  • Deployment Rollouts
Networking
  • Container Network Interface (CNI)
  • Network Model
  • Services
  • Service Discovery & Core DNS
  • Ingress
  • Gateway API
  • Network Policies
Storage
  • Volume Types
  • Persistent Volumes
  • Projected Volumes
  • Ephermal Volumes
  • Storage Classes
  • Snapshots
  • Health Monitoring
Scheduling
  • Controlling and Tracking Resources
  • Scheduler Operation
  • Daemon Set
  • Node Affinity & Anti-affinity
  • Pod Affinity & Anti-affinity
  • Taints & Tolerations
Jobs and Cron Jobs
  • Jobs
  • Cron Jobs
Configuration
  • Configuration Management
  • Config Maps
  • Secrets
  • Environment Variables
  • Configuring Applications
Monitoring and Logging
  • Monitoring
  • Logging
  • Metrics Server
  • Prometheus
  • Grafana
Security
  • Security Overview
  • Security Context
  • Network Policies
  • Secrets
  • Service Accounts
  • Pod Security Policies
  • Role-Based Access Control (RBAC)
  • Security Best Practices
Overview of Kubernetes and Public Cloud
  • Managed Kubernetes Services (choose one)
    • Microsoft AKS
    • Amazon EKS
    • Google GKE
    • Digital Ocean Kubernetes
Kubernetes and CI/CD
  • Continuous Integration, Delivery & Deployment
  • Kubernetes in CI/CD Pipeline
    • GitHub Actions
    • GitLab CI/CD
    • Azure DevOps
    • Jenkins
  • Deploy New Containers in a Pipeline

Prerequisites

  • Basic programming and Linux command-line experience.
  • Prior experience with Docker and Containers is required.
  • If you do not have prior experience with Docker or Containers, we recommend taking the Docker for Programmers: Build Faster, Deploy Smarter course first.

Training Materials

All students receive comprehensive courseware covering all topics in the course. Courseware is distributed via GitHub in the form of documentation and extensive code samples. Students practice the topics covered through challenging hands-on lab exercises. Students will need a free, personal GitHub account to access the courseware.

Student will need permission to install Docker Desktop, MicroK8s or MiniKube (choose one) to run K8s locally. Additionally, students will need Visual Studio Code and the ability to install Visual Studio Code Extensions. A list of extensions can be provided ahead of time.