
CKAD: Certified Kubernetes Application Developer Certification Video Training Course
The complete solution to prepare for for your exam with CKAD: Certified Kubernetes Application Developer certification video training course. The CKAD: Certified Kubernetes Application Developer certification video training course contains a complete set of videos that will provide you with thorough knowledge to understand the key concepts. Top notch prep including CNCF CKAD exam dumps, study guide & practice test questions and answers.
CKAD: Certified Kubernetes Application Developer Certification Video Training Course Exam Curriculum
Introduction
-
1. Kubernetes Series
-
2. Certification Details
Core Concepts
-
1. Recap - Kubernetes Architecture
-
2. Recap - PODs
-
3. Recap - PODs with YAML
-
4. Recap - Demo - Creating PODs with YAML
-
5. Practice Test - Introduction
-
6. Demo: Accessing Labs
-
7. Solution - Pods (optional)
-
8. Recap - ReplicaSets
-
9. Solution - ReplicaSets (optional)
-
10. Recap - Deployments
-
11. Solution - Deployments (optional)
-
12. Solution - Imperative Commands (optional)
-
13. Recap - Namespaces
-
14. Solution - Namespaces (optional)
Configuration
-
1. Pre-Requisite - Commands and Arguments in Docker
-
2. Commands and Arguments in Kubernetes
-
3. Solution - Commands and Arguments (Optional)
-
4. Environment Variables
-
5. ConfigMaps
-
6. Solution: ConfigMaps (Optional)
-
7. Secrets
-
8. Solution - Secrets (Optional)
-
9. Docker Security
-
10. Security Contexts
-
11. Service Account
-
12. Resource Requirements
-
13. Taints and Tolerations
-
14. Solution - Taints and Tolerations (Optional)
-
15. Node Selectors
-
16. Node Affinity
-
17. Solution - Node Affinity (Optional)
-
18. Taints & Tolerations vs Node Affinity
Multi-Container PODs
-
1. Multi-Container PODs
-
2. Solution - Multi-Container Pods (Optional)
Observability
-
1. Readiness and Liveness Probes
-
2. Liveness Probes
-
3. Container Logging
-
4. Solution - Logging (optional)
-
5. Monitor and Debug Applications
-
6. Solution - Monitoring (optional)
POD Design
-
1. Labels, Selectors and Annotations
-
2. Solution - Labels and Selectors (optional)
-
3. Rolling Updates & Rollbacks in Deployments
-
4. Demo - Deployments
-
5. Jobs
-
6. CronJobs
-
7. Solution - Jobs and Cronjobs (optional)
Services & Networking
-
1. Services
-
2. Services - Cluster IP
-
3. Solution - Services (optional)
-
4. Ingress Networking
-
5. Solution: Ingress Networking - 1
-
6. Solution: Ingress Networking - 2
-
7. Network Policies
-
8. Solution - Network Policies (optional)
State Persistence
-
1. Volumes
-
2. Persistent Volumes
-
3. Persistent Volume Claims
-
4. Solution - Persistent Volume and Persistent Volume Claims (Optional)
-
5. Storage Classes
-
6. Why Stateful Sets?
-
7. Stateful Sets Introduction
-
8. Headless Services
Kubernetes Challenge Series
-
1. Kubernetes Challenge Series
Certification Tips
-
1. Time Management
About CKAD: Certified Kubernetes Application Developer Certification Video Training Course
CKAD: Certified Kubernetes Application Developer certification video training course by prepaway along with practice test questions and answers, study guide and exam dumps provides the ultimate training package to help you pass.
Kubernetes Certified Application Developer (CKAD) Training with Practice Tests
Introduction and Kubernetes Fundamentals
Welcome to the Kubernetes Certified Application Developer (CKAD) Training Course. This course is designed to prepare you thoroughly for the CKAD exam, a practical, hands-on certification that proves your ability to build, deploy, and manage applications on Kubernetes. Kubernetes is now the standard in container orchestration, and cloud-native development is rapidly becoming the core of modern software deployment. This course is intended to give you both the theoretical understanding and practical experience needed to succeed not only in the exam but in real-world cloud-native development environments.
What is the CKAD Certification
The CKAD is a performance-based exam provided by the Cloud Native Computing Foundation (CNCF). It focuses specifically on your ability to perform real tasks in a live Kubernetes environment. You will not be answering multiple choice questions but rather solving problems in a terminal. That means you must know how to use Kubernetes tools like kubectl effectively, write YAML configurations quickly, and understand Kubernetes core concepts such as Pods, Deployments, Services, ConfigMaps, Volumes, and Probes. The exam duration is 2 hours, and you must complete a series of tasks that reflect real application development scenarios. Passing the CKAD demonstrates you are ready to build and maintain Kubernetes-native applications in production environments.
Who Should Take This Course
This course is designed for software developers, DevOps engineers, and system administrators who want to deepen their knowledge of Kubernetes from the developer's perspective. If you are building microservices, containerized applications, or integrating CI/CD pipelines, CKAD is a relevant and valuable certification. Whether you're a backend or full-stack engineer, or a DevOps practitioner looking to focus more on application workloads, this course will give you the skills needed to manage containerized applications using Kubernetes. It’s also suitable for cloud professionals who want to validate their skills with a globally recognized certification and for students or career changers breaking into the cloud-native ecosystem.
What You Need Before Starting
You should have a basic understanding of containers and Docker. Knowing how containers work, how to build and run them locally, and how to write simple Dockerfiles will help a lot. You should also be familiar with using the Linux command line, editing text files in a terminal, and using tools like curl or wget. YAML syntax is critical in Kubernetes, so you should be comfortable reading and writing YAML configuration files. If you’re not familiar with YAML, the course will guide you through its structure and usage in the context of Kubernetes. You will also need access to a terminal where you can install and use kubectl, the Kubernetes command-line tool. You can set up a learning environment using Minikube, kind (Kubernetes-in-Docker), or use a cloud Kubernetes provider like Google Kubernetes Engine (GKE), Amazon EKS, or Azure AKS.
Course Structure
This training course is divided into five parts. Each part covers major domains of the CKAD curriculum and builds on the previous one. The course starts with the fundamentals of Kubernetes and its architecture, then moves on to application design and deployment, configuration and secret management, observability and monitoring, and finally, troubleshooting and exam preparation. Every section will introduce you to Kubernetes concepts, demonstrate them with hands-on examples, and walk you through tasks similar to those found on the CKAD exam. Each part includes practice YAML configurations, command-line exercises, and mock test questions.
Understanding Kubernetes
Kubernetes is an open-source container orchestration platform. It allows developers and operations teams to manage containerized applications at scale. It automates deployment, scaling, maintenance, networking, and availability of applications across clusters of machines. At the heart of Kubernetes is the cluster, which is made up of a control plane and worker nodes. The control plane is responsible for maintaining the desired state of the cluster. It includes components like the kube-apiserver, the etcd key-value store, the scheduler, and the controller manager. Worker nodes are where application workloads run. Each node runs a container runtime (like containerd or Docker), a kubelet agent, and a kube-proxy component for networking.
Pods, Nodes, and Clusters
The basic unit of execution in Kubernetes is the Pod. A Pod can contain one or more containers that share the same network namespace and storage volumes. When you deploy an application in Kubernetes, you typically define a Pod or a higher-level abstraction like a Deployment that manages Pods. Nodes are physical or virtual machines in your cluster that run these Pods. A group of nodes managed by the control plane forms a Kubernetes cluster. Understanding the relationship between Pods, Nodes, and the Cluster is essential for mastering Kubernetes. You deploy a Pod, Kubernetes schedules it to a Node, and the control plane ensures the desired state is maintained at all times.
Declarative Configuration with YAML
Kubernetes uses a declarative model for managing resources. Instead of telling Kubernetes how to do something step-by-step, you declare the desired state using YAML files. These YAML files define objects like Pods, Deployments, Services, ConfigMaps, and PersistentVolumeClaims. For example, a Deployment YAML might specify that you want three replicas of a web server running. Kubernetes then ensures that exactly three Pods are running at all times, automatically restarting failed ones or rescheduling them to different nodes if necessary. Learning how to write YAML properly is critical. It involves understanding indentation, key-value pairs, lists, and nested structures. Throughout this course, you will write and analyze YAML files for every type of Kubernetes resource.
The Role of kubectl
kubectl is the main CLI tool for interacting with your Kubernetes cluster. With kubectl, you can deploy applications, view and manage resources, inspect logs, troubleshoot issues, and more. The most common commands you'll use are kubectl get, kubectl describe, kubectl apply, kubectl delete, and kubectl logs. For example, you might write a YAML file defining a Pod and then apply it to the cluster using kubectl apply -f pod.yaml. You can then view the Pod’s status with kubectl get pods and inspect detailed information using kubectl describe pod <pod-name>. Learning how to use kubectl efficiently is key to passing the CKAD exam and managing real Kubernetes clusters. You’ll also need to be familiar with using labels, selectors, and context switching in kubectl.
Creating Your First Pod
Let’s look at a simple example. You want to run an nginx server in your Kubernetes cluster. First, you create a YAML file called nginx-pod.yaml. It might look like this:
apiVersion: v1
kind: Pod
metadata:
name: nginx-pod
spec:
containers:
- name: nginx
image: nginx
ports:
- containerPort: 80
You then use kubectl apply -f nginx-pod.yaml to create the Pod in the cluster. After a few seconds, you can check the status using kubectl get pods. If everything went well, the Pod will be in a Running state. You can access its logs with kubectl logs nginx-pod, or inspect the configuration with kubectl describe pod nginx-pod. This is your first working application in Kubernetes.
The Kubernetes Object Model
In Kubernetes, everything is an object. Each object has a kind, an API version, metadata, and a specification. The kind defines what type of object it is (Pod, Deployment, Service, etc.). The API version determines which version of the Kubernetes API the object uses. Metadata includes information like the object’s name, namespace, labels, and annotations. The spec defines the desired state. Understanding this object model helps you design, debug, and extend Kubernetes configurations logically and systematically.
Namespaces and Isolation
Kubernetes supports multi-tenancy through the concept of namespaces. A namespace is a virtual cluster within the Kubernetes cluster. Namespaces allow you to isolate groups of resources, manage access control, and avoid naming conflicts. By default, all objects are created in the "default" namespace, but you can define your own using the metadata.namespace field in your YAML or with the --namespace flag in kubectl. This is especially useful when working in shared clusters or separating staging and production environments.
Using Labels and Selectors
Labels are key-value pairs attached to objects. They are used for selecting and grouping resources. For example, you can assign a label app=frontend to all Pods belonging to your frontend service. Then you can use a label selector to find them, scale them, or route traffic. Selectors are used in Deployments, Services, and many other Kubernetes objects to define relationships and target groups of resources.
Application Deployment and Management in Kubernetes
Application deployment and management are core competencies for any Kubernetes Certified Application Developer. This section will focus on deploying applications efficiently, managing application lifecycles, ensuring scalability, and handling updates seamlessly. Understanding these concepts not only prepares you for the CKAD exam but also equips you to run production-grade Kubernetes workloads.
Deployments and ReplicaSets Explained
In Kubernetes, Deployments are the recommended way to manage stateless applications. A Deployment manages ReplicaSets, which in turn manage Pods. A ReplicaSet ensures that a specified number of pod replicas are running at any given time. However, you rarely create ReplicaSets directly; instead, you use Deployments, which create and manage ReplicaSets for you. This abstraction allows for declarative updates, rollbacks, and scaling. A typical Deployment YAML file will specify the number of replicas, the container image, and labels that link Pods to the Deployment. Kubernetes ensures that the desired number of Pods is always running, rescheduling them if they fail or the node goes down. This guarantees high availability of your application.
Writing Deployment YAML Files
Writing a Deployment manifest requires understanding the necessary fields. The apiVersion for Deployments is typically apps/v1. The kind is Deployment. Metadata includes the name and labels, which are crucial for identifying the Deployment. The spec section contains the desired state: the number of replicas, the Pod template with container specs, ports, and labels. An example Deployment for an nginx web server would include three replicas, the nginx image, and ports exposed for HTTP traffic. You’ll learn to write these YAML files quickly, as the CKAD exam demands efficiency. Common errors include incorrect indentation, missing labels, or omitting required fields, so practice is essential.
Managing Rollouts and Rollbacks
One of the key features of Deployments is their ability to perform rolling updates. This means you can update your application without downtime by incrementally replacing old Pods with new ones. You trigger this by updating the container image or other parameters in the Deployment YAML and applying the changes with kubectl apply. Kubernetes then starts new Pods with the updated spec and gradually terminates old Pods. You can check the rollout status with kubectl rollout status deployment/<deployment-name>. If something goes wrong, you can rollback to a previous stable revision with kubectl rollout undo deployment/<deployment-name>. Understanding these commands and their behaviors is critical both for the exam and for maintaining uptime in production.
Scaling Applications
Scaling applications is straightforward with Deployments. You can scale the number of replicas up or down using the kubectl scale command or by editing the Deployment YAML file. Horizontal scaling increases or decreases the number of Pods running your application to match demand. Kubernetes also supports Horizontal Pod Autoscalers (HPA), which automatically adjust replicas based on CPU usage or custom metrics. While HPA setup is more advanced and not the primary focus of CKAD, understanding manual scaling and its impact is fundamental. You will practice scaling as part of this course to master these concepts.
Working with StatefulSets
While Deployments are suitable for stateless applications, StatefulSets manage stateful applications that require stable network IDs, persistent storage, or ordered deployment and scaling. Examples include databases and key-value stores. StatefulSets guarantee that Pods are created, deleted, and scaled in a controlled order and that each Pod has a persistent identity and storage. The YAML for StatefulSets is similar to Deployments but includes volume claims for persistent storage and specific labels for Pod identity. Understanding when to use StatefulSets instead of Deployments is essential, especially as the CKAD exam may test your knowledge of workload types.
ConfigMaps and Environment Variables
Applications often require configuration settings that change between environments. Kubernetes provides ConfigMaps to decouple configuration from container images. ConfigMaps store non-sensitive configuration data as key-value pairs, which you can inject into Pods as environment variables or mount as files. Using ConfigMaps correctly enables you to reuse container images across environments, which is a best practice in cloud-native development. Writing ConfigMap YAML files, referencing them in Pod specs, and updating ConfigMaps without restarting Pods are key skills you will learn. You will also practice creating environment variables from ConfigMaps in Pod definitions.
Secrets Management
Secrets in Kubernetes store sensitive data such as passwords, tokens, or keys. Like ConfigMaps, Secrets are key-value pairs but encoded in base64 and stored securely. Pods can consume Secrets as environment variables or volumes. Managing Secrets properly is critical to protect application security. You’ll learn how to create Secrets manually using YAML or kubectl commands and how to reference them in Pods. The exam tests your ability to securely configure Secrets and use them in your application manifests. You should also understand the difference between Secrets and ConfigMaps and when to use each.
Persistent Volumes and Persistent Volume Claims
Many applications require persistent storage that outlives Pod lifecycles. Kubernetes provides Persistent Volumes (PV) and Persistent Volume Claims (PVC) to manage storage. PVs are cluster resources provisioned by administrators or dynamically created via StorageClasses. PVCs are requests for storage by users. Pods use PVCs to mount persistent storage. You will learn how to write YAML files for PVCs, bind them to PVs, and mount storage inside Pods. Understanding storage class parameters, access modes, and reclaim policies is useful, though the CKAD exam focuses mostly on basic PVC usage. Storage management is often tested, especially for stateful applications.
Health Checks: Liveness and Readiness Probes
Ensuring your applications are healthy and available is crucial. Kubernetes offers liveness and readiness probes to check the health of containers. Liveness probes detect if a container is alive and restart it if it fails. Readiness probes determine if a container is ready to serve traffic. You can define these probes using HTTP requests, TCP sockets, or command execution. Properly configured probes improve resilience and rolling update behavior. You will practice writing probe definitions in YAML and understand their effects on Pod lifecycle and Service endpoints. These skills are frequently tested in the CKAD exam.
Services and Networking
Kubernetes Services provide stable networking endpoints to Pods. Since Pods are ephemeral and can change IP addresses, Services use selectors to route traffic to the appropriate Pods. You will learn the difference between ClusterIP (default, internal access), NodePort (exposes a port on each node), and LoadBalancer (external cloud load balancer) service types. Writing Service YAML manifests, using selectors and labels, and understanding Service discovery are core skills. Networking in Kubernetes also includes understanding how DNS works within the cluster and how Services communicate with Pods and external clients. These concepts are fundamental for application accessibility and are covered in the exam.
Configuring Ingress Controllers
Ingress is a Kubernetes resource that manages external HTTP(S) access to services. It provides routing rules, SSL termination, and name-based virtual hosting. While Ingress controllers are not always included in basic Kubernetes installs, many cloud providers offer them by default. You will learn how to write Ingress manifests, configure routing paths, and manage TLS certificates. This knowledge is essential for exposing applications to external users securely and efficiently. You will also explore differences between Services and Ingress and understand how they complement each other.
Resource Requests and Limits
Kubernetes allows you to define CPU and memory requests and limits for containers. Requests indicate the minimum resources a container needs, which influence scheduling decisions. Limits define the maximum resources a container can use, preventing it from consuming excessive resources. Properly setting these values ensures cluster stability and fairness among workloads. You will practice writing resource requests and limits in Pod specifications and understand how Kubernetes uses these values during scheduling and runtime. This topic is important for both exam preparation and real-world cluster management.
Managing Configurations with Annotations and Labels
Beyond basic labels, Kubernetes provides annotations for attaching arbitrary non-identifying metadata to objects. Labels are used for selection and grouping, while annotations store information used by tools, libraries, or operators. You will learn the syntax and use cases for both, including how to query resources by labels using kubectl and how annotations can be useful for documenting or extending objects. Understanding the difference and proper use of labels and annotations enhances your ability to manage complex Kubernetes environments.
Debugging and Troubleshooting Applications
Debugging running applications is a critical skill for a Kubernetes developer. You will learn techniques such as using kubectl logs to view container output, kubectl exec to open interactive shells inside Pods, and kubectl describe to inspect events and resource states. Understanding how to interpret Pod and Node status, how to find crash loops or failed containers, and how to check resource usage is essential. Troubleshooting also involves understanding common error messages and knowing how to fix YAML syntax errors, misconfigurations, or insufficient resource requests. Practice with real-life troubleshooting scenarios is part of this course to build your confidence.
Managing Multiple Environments and Contexts
Kubernetes supports multiple clusters and namespaces, which allows you to separate development, staging, and production environments. The kubectl config command manages contexts, letting you switch between clusters and namespaces easily. You will learn how to view, add, and switch contexts to work with different environments seamlessly. This skill is particularly useful for exam environments where you may have access to multiple namespaces or clusters. Understanding environment separation and context management will streamline your workflows and reduce mistakes.
Best Practices for Kubernetes Application Development
To succeed in the CKAD exam and real projects, following best practices is key. Use declarative YAML manifests stored in version control. Always label resources consistently. Separate configuration from code using ConfigMaps and Secrets. Use readiness and liveness probes to maintain application health. Set resource requests and limits to prevent resource contention. Avoid running privileged containers unless necessary. Practice rolling updates and rollbacks frequently. Monitor logs and metrics actively. These habits lead to robust, secure, and maintainable Kubernetes applications.
Summary of Application Deployment and Management
This part has covered all the essentials of deploying and managing applications in Kubernetes, including Deployments, ReplicaSets, StatefulSets, ConfigMaps, Secrets, Persistent Storage, Health Checks, Services, Ingress, Resource Management, Debugging, and Best Practices. Mastery of these topics will prepare you to deploy complex applications, maintain their availability and security, and respond to operational issues confidently. In the next part, we will focus on observability, monitoring, and advanced debugging techniques to help you maintain high uptime and performance in Kubernetes clusters.
Prepaway's CKAD: Certified Kubernetes Application Developer video training course for passing certification exams is the only solution which you need.
Pass CNCF CKAD Exam in First Attempt Guaranteed!
Get 100% Latest Exam Questions, Accurate & Verified Answers As Seen in the Actual Exam!
30 Days Free Updates, Instant Download!

CKAD Premium Bundle
- Training Course 67 Video Lectures
- Study Guide 281 Pages
Student Feedback
Can View Online Video Courses
Please fill out your email address below in order to view Online Courses.
Registration is Free and Easy, You Simply need to provide an email address.
- Trusted By 1.2M IT Certification Candidates Every Month
- Hundreds Hours of Videos
- Instant download After Registration
A confirmation link will be sent to this email address to verify your login.
Please Log In to view Online Course
Registration is free and easy - just provide your E-mail address.
Click Here to Register