DevOps
General
Training
Certified Kubernetes Administrator (CKA)

This class preps students for their CKA certification, with a mix of lecture, 30+ hands-on labs and practice CKA exam.

By the conclusion of this hands-on, vendor agnostic training you will go back to work with the knowledge, skills, and abilities to design, implement, and maintain a production-grade Kubernetes cluster.

Each student will be given an environment that allows them to build a Kubernetes environment from scratch.

Download pdf
Duration: 5 Days
About the course

Course Objectives:

Upon completing this course, the learner will be able to meet these overall objectives:

  • Cluster architecture, installation, and configuration
  • Rolling out and rolling back applications in production
  • Scaling clusters and applications to best use
  • How to create robust, self healing deployments
  • Networking configuration on cluster nodes, services, and CoreDNS
  • Persistent and intelligent storage for applications
  • Troubleshooting cluster, application, and user errors
  • Vendor-agnostic cloud provider-based Kubernetes
Course content

Cluster Architecture

  • Lecture: Kubernetes Architecture
  • Lecture: Pods and the Control Plane

Installation

  • Lecture: Kubeadm Prerequisites
  • Lecture + Lab: Kubeadm Prerequisites
  • Lecture: Configure Network Plugin Requirements
  • Lecture + Lab: Configure Network Plugin Requirements
  • Lecture: Kubeadm Basic Cluster
  • Lecture + Lab: Installing Kubeadm
  • Lecture: Join Node to Cluster
  • Lecture + Lab: Join Node to Cluster

Cluster Administration

  • Lecture: ETCD Snapshot and Restore
  • Lecture + Lab: ETCD Snapshot and Restore
  • Lecture: Kubeadm Cluster Upgrade
  • Lecture + Lab: Kubeadm cluster upgrade
  • Lecture: Purge Kubeadm
  • Lecture + Lab: Purge Kubeadm
  • Lecture: Kubernetes the Alta3 Way
  • Lecture + Lab: Deploy Kubernetes using Ansible

Containers

  • Lecture: Container Essentials
  • Lecture + Lab: Creating a Docker Image

Pod Basics

  • Lecture: YAML
  • Lecture: Manifests
  • Lecture + Lab: Basic Pods
  • Lecture: Namespaces
  • Lecture + Lab: Namespaces
  • Lecture: API Versioning and Deprecations

Kubectl

  • Lecture: Kubectl get and sorting
  • Lecture + Lab: kubectl get

Resource Management

  • Lecture + Lab: Kubectl Top and Application Monitoring
  • Lecture: Limits, Requests, and Namespace ResourceQuotas
  • Lecture + Lab: Resource Requests and Limits
  • Lecture + Lab: Namespace Resource Quota
  • Lecture: Admission Controller
  • Lecture + Lab: Create a LimitRange AdmissionController

User Administration

  • Lecture: Contexts
  • Lecture + Lab: Contexts
  • Lecture: Role Based Access Control
  • Lecture + Lab: Role Based Access Control
  • Lecture + Lab: RBAC Distributing Access

Advanced Pod Design

  • Lecture: Readiness and Liveness Probes
  • Lecture + Lab: Implement Probes and Health Checks
  • Lecture: ConfigMaps and Volume Mounting
  • Lecture + Lab: Persistent Configuration with ConfigMaps
  • Lecture: Secrets
  • Lecture + Lab: Create and Consume Secrets
  • Lecture: Multi-Container Pods
  • Lecture + Lab: Creating Ephemeral Storage For Fluentd Logging Sidecar
  • Lecture: Init Containers
  • Lecture + Lab: Understand the Init Container Multi-Container Pod Design Pattern
  • Lecture: Taints, Tolerations, and Pod Affinity
  • Lecture + Lab: Tainted Nodes and Tolerations

Logging

  • Lecture: Logging with kubectl log
  • Lecture + Lab: Utilize Container Logs
  • Lecture: Advanced Logging Techniques

Labels

  • Lecture: Labels
  • Lecture + Lab: Labels and Selectors
  • Lecture: Annotations
  • Lecture + Lab: Insert an Annotation

Replica and Daemon Sets

  • Lecture: ReplicaSets
  • Lecture + Lab: Create and Configure a ReplicaSet
  • Lecture: DaemonSets

Deployments

  • Lecture: Deployments - Purpose and Advantages
  • Lecture + Lab: Writing a Deployment Manifest
  • Lecture: Deployments - Version Control
  • Lecture + Lab: Performing Rolling Updates and Rollbacks with Deployments
  • Lecture: Blue/Green and Canary Deployment Strategies
  • Lecture + Lab: Advanced Deployment Strategies
  • Lecture: Deployments - Horizontal Scaling
  • Challenge: Horizontal Pod Autoscaling

Persistent Storage

  • Lecture: Persistent Volumes, Claims, and StorageClasses
  • Lecture + Lab: Using PersistentVolumeClaims for Storage
  • Lecture: PVC, PV, and StorageClass config
  • Lecture + Lab: Persistent Storage with NFS

Services & Networking

  • Lecture: NetworkPolicy
  • Lecture + Lab: Deploy a NetworkPolicy
  • Lecture + Lab: Namespace Network Policy
  • Lecture: Services - LoadBalancer, NodePort, and ClusterIP
  • Lecture + Lab: Access to applications via services
  • Lecture: Networking Plugins
  • Lecture: Ingress Controllers
  • Lecture + Lab: Ingress Controllers Expose a Service

DNS

  • Lecture: Hostnames and FQDNs
  • Lecture + Lab: Hostnames and FQDNs
  • Lecture: CoreDNS
  • Lecture + Lab: Install CoreDNS
  • Lecture: Configure CoreDNS
  • Lecture + Lab: Configure CoreDNS
  • Lecture + Lab: Revert CoreDNS to KubeDNS
Who Should Attend

The primary audience for this course is as follows:

  • Professionals who need to maintain or set up a Kubernetes cluster
  • Container Orchestration Engineers
  • DevOps Professionals