Certified Kubernetes Application Developer (CKAD) Cert Prep
10h 3mIntermediate2024-10-21
Authors

Pearson

Sander van Vugt
Course details
Looking to sharpen your skills and prepare for the Certified Kubernetes Application Developer (CKAD) certification exam? This course is your complete guide to learning how to run Kubernetes applications and tackle the official exam with ease. Through in-depth discussions, lightboard explanations, and lab demonstrations to get you started with Kubernetes, best-selling author and trainer Sander van Vugt clearly and succinctly explains Kubernetes basics and shows you how to develop, create, manage, store, scale, and troubleshoot Kubernetes applications like a pro. Along the way, you’ll also learn how to work with containers in a Kubernetes environment and perform advanced CKAD-related tasks, such as working with the API, applying DevOps technologies, troubleshooting common issues, and more.
Learning objectives
Prepare for the Certified Kubernetes Application Developer (CKAD) certification exam.
Run applications in containers.
Develop, create, manage, store, scale, and troubleshoot Kubernetes applications.
Manage API options, pods, deployment and networking, ingress, Kubernetes resource storage, ConfigMaps, and Secrets.
Troubleshoot common issues in Kubernetes.
Use the Helm Package Manager, custom resources, and operators.
Implement blue/green deployments and canary deployments.
Learning objectives
Prepare for the Certified Kubernetes Application Developer (CKAD) certification exam.
Run applications in containers.
Develop, create, manage, store, scale, and troubleshoot Kubernetes applications.
Manage API options, pods, deployment and networking, ingress, Kubernetes resource storage, ConfigMaps, and Secrets.
Troubleshoot common issues in Kubernetes.
Use the Helm Package Manager, custom resources, and operators.
Implement blue/green deployments and canary deployments.
Skills covered
KubernetesDevOps ToolsDevOpsCert PrepOpen Source
Concepts
0. Introduction
- 01 - Certified Kubernetes Application Developer (CKAD) - introduction
Lesson 1 - Understanding and Using Containers
- 02 - Module 1 - Container fundamentals introduction
- 03 - Learning objectives
- 04 - What is a container
- 05 - Using registries
- 06 - Starting containers
- 07 - Managing containers
- 08 - Container logging
- 09 - Lesson 1 lab - Using containers
- 10 - Lesson 1 lab solution - Using containers
Lesson 2 - Managing Container Images
- 11 - Learning objectives
- 12 - Container image architecture
- 13 - Managing container images
- 14 - Image creation options
- 15 - Using Dockerfile to build custom images
- 16 - Creating images from running containers
- 17 - Lesson 2 lab - Creating custom container images
- 18 - Lesson 2 lab solution - Creating custom container images
Lesson 3 - Understanding Kubernetes
- 19 - Learning objectives
- 20 - Cloud native computing
- 21 - How Kubernetes enables cloud native computing
- 22 - Kubernetes origins
- 23 - Kubernetes and Cloud Native Computing Foundation
- 24 - Kubernetes architecture
- 25 - Essential API resources
- 26 - Lesson 3 lab - Exploring Kubernetes API resources
- 27 - Lesson 3 lab solution - Exploring Kubernetes API resources
Lesson 4 - Creating a Lab Environment
- 28 - Learning objectives
- 29 - Kubernetes deployment options
- 30 - Minikube
- 31 - Kubernetes in cloud
- 32 - Building an all-in-one Kubernetes distribution
- 33 - Running your first application
- 34 - Lesson 4 lab - Setting up a lab environment
- 35 - Lesson 4 lab solution - Setting up a lab environment
Lesson 5 - Pod Basic Features
- 36 - Module 2 - Kubernetes essentials introduction
- 37 - Learning objectives
- 38 - Options for running Kubernetes applications
- 39 - Pod structure and use
- 40 - Running pods the DevOps way
- 41 - Generating YAML files
- 42 - Multi-container pods
- 43 - Namespaces
- 44 - Pod troubleshooting
- 45 - Lesson 5 lab - Managing pods
- 46 - Lesson 5 lab solution - Managing pods
Lesson 6 - Pod Advanced Features
- 47 - Learning objectives
- 48 - Init containers
- 49 - Sidecar containers
- 50 - Using port forwarding to access pods
- 51 - restartPolicy
- 52 - Jobs
- 53 - CronJobs
- 54 - Cleaning up resources
- 55 - Lesson 6 lab - Managing pod advanced features
- 56 - Lesson 6 lab solution - Managing pod advanced features
Lesson 7 - Kubernetes Storage
- 57 - Learning objectives
- 58 - Ephemeral and persistent storage
- 59 - Configuring pod volume storage
- 60 - Configuring persistent volumes
- 61 - StorageClass
- 62 - Configuring PersistentVolumeClaims
- 63 - Configuring pod storage with PV and PVC
- 64 - Lesson 7 lab - Setting up storage
- 65 - Lesson 7 lab solution - Setting up storage
Lesson 8 - Deployments
- 66 - Module 3 - Application deployment introduction
- 67 - Learning objectives
- 68 - Running applications as deployments
- 69 - Labels, selectors, and annotations
- 70 - Deployment scalability
- 71 - Deployment updates
- 72 - Deployment history
- 73 - StatefulSet
- 74 - DaemonSet
- 75 - AutoScaling
- 76 - Lesson 8 lab - Managing deployments
- 77 - Lesson 8 lab solution - Managing deployments
Lesson 9 - Installing Kubernetes Applications
- 78 - Learning objectives
- 79 - Running applications from YAML files
- 80 - The Helm package manager
- 81 - Managing applications with Helm
- 82 - Using Kustomize
- 83 - Lesson 9 lab - Managing applications with Helm
- 84 - Lesson 9 lab solution - Managing applications with Helm
Lesson 10 - Networking
- 85 - Module 4 - Services and networking introduction
- 86 - Learning objectives
- 87 - Kubernetes networking
- 88 - Services
- 89 - Creating services
- 90 - Service resources in microservices
- 91 - Services and DNS
- 92 - NetworkPolicy
- 93 - Advanced networking - Gateway API and Istio
- 94 - Lesson 10 lab - Managing services
- 95 - Lesson 10 lab solution - Managing services
Lesson 11 - Ingress and Gateway API
- 96 - Learning objectives
- 97 - Managing incoming traffic
- 98 - Ingress components
- 99 - Installing ecosystem ingress controllers
- 100 - Using the Minikube ingress controller
- 101 - Using ingress
- 102 - Configuring ingress rules
- 103 - Understanding Gateway API
- 104 - Configuring Gateway API
- 105 - Using Gateway API to provide access to applications
- 106 - Troubleshooting networking
- 107 - Lesson 11 lab - Managing incoming traffic
- 108 - Lesson 11 lab solution - Managing incoming traffic
Lesson 12 - ConfigMaps and Secrets
- 109 - Module 5 - Application environment, configuration, and security introduction
- 110 - Learning objectives
- 111 - Why decoupling is important
- 112 - Providing variables to Kubernetes applications
- 113 - Providing variables with ConfigMaps
- 114 - Providing configuration files using ConfigMaps
- 115 - Secrets
- 116 - Configuring applications to use secrets
- 117 - Secrets and authenticated registry access
- 118 - Lesson 12 lab - Using ConfigMaps and secrets
- 119 - Lesson 12 lab solution - Using ConfigMaps and secrets
Lesson 13 - Deploying Applications the DevOps Way
- 120 - Learning objectives
- 121 - DevOps and GitOps
- 122 - Blue green deployments
- 123 - Canary deployments
- 124 - Lesson 13 lab - Deploying Kubernetes applications the DevOps way
- 125 - Lesson 13 lab solution - Deploying Kubernetes applications the DevOps way
Lesson 14 - Working with the API
- 126 - Learning objectives
- 127 - Understanding the Kubernetes API
- 128 - Using curl to work with API objects
- 129 - Understanding API deprecations
- 130 - Extending the API
- 131 - CustomResourceDefinitions
- 132 - Operators
- 133 - Lesson 14 lab - Using CustomResourceDefinitions
- 134 - Lesson 14 lab solution - Using CustomResourceDefinitions
Lesson 15 - Security
- 135 - Learning objectives
- 136 - Authentication and authorization
- 137 - API access and ServiceAccounts
- 138 - Role based access control (RBAC)
- 139 - SecurityContext
- 140 - Resource requests, limits, and quotas
- 141 - Lesson 15 lab - Managing security settings
- 142 - Lesson 15 lab solution - Managing security settings
Lesson 16 - Troubleshooting Kubernetes
- 143 - Module 6 - Application observability and maintenance introduction
- 144 - Learning objectives
- 145 - Determining a troubleshooting strategy
- 146 - Analyzing failing applications
- 147 - Analyzing network access problems
- 148 - Monitoring cluster event logs
- 149 - Troubleshooting authentication logs
- 150 - Debugging Kubernetes applications
- 151 - Lesson 16 lab - Troubleshooting applications
- 152 - Lesson 16 lab solution - Troubleshooting applications
Lesson 17 - Observability
- 153 - Learning objectives
- 154 - What is observability
- 155 - Kubernetes API health endpoints
- 156 - Using probes to monitor applications
- 157 - Lesson 17 lab - Using probes
- 158 - Lesson 17 lab solution - Using probes
Lesson 18 - Sample CKAD Exam
- 159 - Module 7 - Sample exam introduction
- 160 - Learning objectives
- 161 - Exam tips
- 162 - Tasks overview
- 163 - Grading the exam
- 164 - Working with namespaces
- 165 - Finding pods
- 166 - Creating a ConfigMap
- 167 - Using a sidecar
- 168 - Using probes
- 169 - Creating a deployment
- 170 - Exposing applications
- 171 - Managing NetworkPolicy
- 172 - Using storage
- 173 - Using Helm
- 174 - Managing resource restrictions
- 175 - Creating canary deployments
- 176 - Defining container restrictions
- 177 - Using a Dockerfile
- 178 - Using ServiceAccount
Summary
- 179 - Certified Kubernetes Application Developer (CKAD) - Summary