Certified Kubernetes Application Developer (CKAD) Prep Course

Video description

The ability to use, troubleshoot, and monitor Kubernetes as an application developer is in high demand. In response, the Cloud Native Computing Foundation (CNCF) developed the Certified Kubernetes Application Developer (CKAD) program to establish credibility and value in the job market. The exam is different from the typical multiple choice format of other certifications. It’s completely performance based, under immense time pressure, and requires deep knowledge of the tasks.

In this course, expert and CKAD Benjamin Muschko walks you through all the topics covered in the exam to fully prepare you to pass with flying colors.

What you’ll learn and how you can apply it

  • Understand the topics important to the exam and their contribution to the total score
  • Gain an overview on the exam environment, as well as tips and tricks for acing the exam
  • Understand just enough about Kubernetes to get started
  • Interact with a Kubernetes cluster using the command line tool kubectl

This course is for you because…

  • You’re a developer using Kubernetes to configure, manage, and rollout applications, and you want to obtain CKAD certification
  • You want to understand the basics of Kubernetes by solving hands-on problems
  • You want to become a Certified Kubernetes Application Developer

Prerequisites

  • You should have experience working with containers, in particular Docker
  • You should possess beginner-level understanding of Kubernetes concepts and the resources API
  • You should have familiarity with a Unix environment and Bash commands as well as with command-line-based text editors (optimally vim) and the YAML format
  • Have access the course’s GitHub repository

Table of contents

  1. Course Introduction
  2. Module 1: CKAD Exam Details
    1. Lesson 1.1: Overview and Objectives
    2. Lesson 1.2: Domains and Curriculum Details
    3. Lesson 1.3: Exam Environment and Tips
    4. Lesson 1.4: Exam Preparation and Practice Tests
  3. Module 2: Kubernetes in a Nutshell
    1. Lesson 2.1: Introduction to Kubernetes
    2. Lesson 2.2: High-level Kubernetes Architecture
    3. Lesson 2.3: Advantages of using Kubernetes
  4. Module 3: Object Management
    1. Lesson 3.1: Kubernetes Primitives and Objects
    2. Lesson 3.2: Managing Objects with kubectl
    3. Lesson 3.3: Object Management Exam Essentials
  5. Application Design and Build
    1. Domain Introduction: Application Design and Build Domain Objectives
  6. Module 4: Container Fundamentals
    1. Lesson 4.1: Introduction to Container Fundamentals
    2. Lesson 4.2: Building Container Images and Running Containers
    3. Lesson 4.3: Exercise: Defining, Building, and Running a Container Image
    4. Lesson 4.4: Container Fundamentals Exam Essentials
  7. Module 5: Pod and Namespaces
    1. Lesson 5.1: Introduction to Pods and Namespaces
    2. Lesson 5.2: Running and Configuring Applications in Containers with Pods
    3. Lesson 5.3: Grouping Objects in Namespaces
    4. Lesson 5.4: Exercise: Creating, Inspecting, and Interacting with a Pod in a Namespace
    5. Lesson 5.5: Pods and Namespaces Exam Essentials
  8. Module 6: Jobs and CronJobs
    1. Lesson 6.1: Introduction to Jobs and CronJobs
    2. Lesson 6.2: Jobs: Executing one-time operations with Jobs
    3. Lesson 6.3: Exercise: Creating and inspecting a Job
    4. Lesson 6.4: CronJobs: Executing Periodic Operations with CronJobs
    5. Lesson 6.5: Exercise: Creating and inspecting a CronJob
    6. Lesson 6.6: Jobs and CronJobs Exam Essentials
  9. Module 7: Volumes
    1. Lesson 7.1: Introduction to Volumes
    2. Lesson 7.2: Using Ephemeral Volumes in Pods
    3. Lesson 7.3: Exercise: Creating and Using an Ephemeral Volume
    4. Lesson 7.4: Provisioning Persistent Volumes and Using them in a Pod
    5. Lesson 7.5: Exercise: Creating and using a Persistent Volume using static Provisioning
    6. Lesson 7.6: Volumes Exam Essentials
  10. Module 8: Multi-Container Pods
    1. Lesson 8.1: Introduction to Multi-Container Pods
    2. Lesson 8.2: Understanding Init containers
    3. Lesson 8.3: Exercise: Adding an init Container
    4. Lesson 8.4: Understanding Common Multi-Container Design Patterns
    5. Lesson 8.5: Exercise: Implementing the Adapter Pattern
    6. Lesson 8.6: Exercise: Implementing the Ambassador Pattern
    7. Lesson 8.7: Multi-Container Pods Exam Essentials
  11. Module 9: Labels and Annotations
    1. Lesson 9.1: Introduction to Labels and Annotations
    2. Lesson 9.2: Understanding Labels
    3. Lesson 9.3: Understanding Annotations
    4. Lesson 9.4: Exercise: Using Labels and Annotations
    5. Lesson 9.5: Labels and Annotations Exam Essentials
  12. Application Deployment
    1. Domain Introduction: Application Deployment Domain Objectives
  13. Module 10: Deployments
    1. Lesson 10.1: Introduction to Deployments
    2. Lesson 10.2: Exercise: Performing Rolling Updates and Manually Scaling a Deployment
    3. Lesson 10.3: Autoscaling Workloads
    4. Lesson 10.4: Exercise: Creating a Horizontal Pod Autoscaler for a Deployment
    5. Lesson 10.5: Deployment Strategies
    6. Lesson 10.6: Exercise: Implementing the Blue-Green Deployment Strategy
    7. Lesson 10.7: Deployment Exam Essentials
  14. Module 11: Helm
    1. Lesson 11.1: Introduction to Helm
    2. Lesson 11.2: Discovering and Installing a Public Helm Chart
    3. Lesson 11.3: Exercise: Installing an Existing Helm Chart from the Central Chart Repository
    4. Lesson 11.4: Building and Installing a Custom Helm Chart
    5. Lesson 11.5: Exercise: Implementing, Packaging, and Installing a Custom Helm Chart
    6. Lesson 11.6: Helm Exam Essentials
  15. Application Observability Maintenance
    1. Domain Introduction: Application Observability Maintenance Domain Objectives
  16. Module 12: API Deprecations
    1. Lesson 12.1: Introduction to API Deprecations
    2. Lesson 12.2: API Deprecation Scenarios by Example
    3. Lesson 12.3: Exercise: Identifying and Replacing a Deprecated API
    4. Lesson 12.4: API Deprecations Exam Essentials
  17. Module 13: Probes
    1. Lesson 13.1: Introduction to Probes
    2. Lesson 13.2: Health Probes and Verification Methods
    3. Lesson 13.3: Exercise: Defining Probes for a Container
    4. Lesson 13.4: Probes Exam Essentials
  18. Module 14: Metrics Server
    1. Lesson 14.1: Introduction to Metrics Server
    2. Lesson 14.2: Collecting and Rendering Node and Pod Resource Metrics
    3. Lesson 14.3: Exercise: Determining Metrics for Pods
    4. Lesson 14.4: Metrics Server Exam Essentials
  19. Module 15: Troubleshooting Pods and Containers
    1. Lesson 15.1: Introduction to Troubleshooting Pods and Containers
    2. Lesson 15.2: Troubleshooting Techniques
    3. Lesson 15.3: Exercise: Troubleshooting a Pod that has Issues at Runtime
    4. Lesson 15.4: Troubleshooting Pods and Containers Exam Essentials
  20. Application Environment, Configuration Security
    1. Domain Introduction: Application Environment, Configuration Security Domain Objectives
  21. Module 16: Custom Resource Definitions (CRDs)
    1. Lesson 16.1: Introduction to Custom Resource Definitions (CRDs)
    2. Lesson 16.2: Understanding a CRD by Example
    3. Lesson 16.3: Exercise: Defining and Interacting with a CRD
    4. Lesson 16.4: Custom Resource Definitions (CRDs) Exam Essentials
  22. Module 17: Authentication and Authorization
    1. Lesson 17.1: Introduction to Authentication and Authorization
    2. Lesson 17.2: Authentication via credentials in kubeconfig
    3. Lesson 17.3: Role-based Access Control (RBAC)
    4. Lesson 17.4: Using a ServiceAccount with RBAC
    5. Lesson 17.5: Exercise: Regulating Access to API Resources with RBAC
    6. Lesson 17.6: Authentication and Authorization Exam Essentials
  23. Module 18: Resource Management
    1. Lesson 18.1: Introduction to Resource Management
    2. Lesson 18.2: Defining Container Resource Requests and Limits
    3. Lesson 18.3: Exercise: Defining Container Resource Requests and Limits
    4. Lesson 18.4: Constraining Resource Consumption with a ResourceQuota
    5. Lesson 18.5: Exercise: Defining a Resource Quota for a Namespace
    6. Lesson 18.6: Constraining or Defaulting Resource Allocations with a LimitRange
    7. Lesson 18.7: Exercise: Creating a Pod Conforming with LimitRange in Namespace
    8. Lesson 18.8: Resource Management Exam Essentials
  24. Module 19: ConfigMaps and Secrets
    1. Lesson 19.1: Introduction to ConfigMaps and Secrets
    2. Lesson 19.2: Creating and consuming a ConfigMap
    3. Lesson 19.3: Exercise: Representing a file in a ConfigMap and Mounting it as a Volume
    4. Lesson 19.4: Creating and Consuming a Secret
    5. Lesson 19.5: Exercise: Representing Plain-Text Values in a Secret and Injecting them as Environment Variables
    6. Lesson 19.6: ConfigMaps and Secrets Exam Essentials
  25. Module 20: Security Context
    1. Lesson 20.1: Introduction to Security Context
    2. Lesson 20.2: Defining Container Security Settings by Example
    3. Lesson 20.3: Exercise: Defining a Security Context on the Pod- and Container-level
    4. Lesson 20.4: Security Context Exam Essentials
  26. Services Networking
    1. Domain Introduction: Services Networking Domain Objectives
  27. Module 21: Services
    1. Lesson 21.1: Introduction to Services
    2. Lesson 21.2: Exposing a Stable Network Endpoint to Pods with a Service
    3. Lesson 21.3: Exercise: Routing Traffic to Pods from Inside and Outside of a Cluster
    4. Lesson 21.4: Services Exam Essentials
  28. Module 22: Troubleshooting Services
    1. Lesson 22.1: Introduction to Troubleshooting Services
    2. Lesson 22.2: Troubleshooting Techniques for Services
    3. Lesson 22.3: Exercise: Troubleshooting a Service
    4. Lesson 22.4: Troubleshooting Services Exam Essentials
  29. Module 23: Ingresses
    1. Lesson 23.1: Introduction to Ingresses
    2. Lesson 23.2: Route HTTP(S) Traffic from the Outside of the Cluster to Service(s)
    3. Lesson 23.3: Exercise: Defining and using an Ingress without TLS
    4. Lesson 23.4: Ingresses Exam Essentials
  30. Module 24: Network Policies
    1. Lesson 24.1: Introduction to Network Policies
    2. Lesson 24.2: Constraining Network Communication between Pods
    3. Lesson 24.3: Exercise: Restricting access to and from a Pod with Network Policies
    4. Lesson 24.4: Network Policies Exam Essentials

Product information

  • Title: Certified Kubernetes Application Developer (CKAD) Prep Course
  • Author(s): Benjamin Muschko
  • Release date: May 2024
  • Publisher(s): O'Reilly Media, Inc.
  • ISBN: 0642572045272