
Understand the Kubernetes cluster: control plane and nodes, API server, scheduler, controllers, cloud controller manager, kubelet, kube-proxy, container runtime, and core addons like DNS and dashboard.
Create a lightweight, single-node Kubernetes cluster on Linux with Minikube, running on Ubuntu in VirtualBox, then install kubectl and verify nodes and pods.
Create a deployment with kubectl using the DB1 name and BusyBox image, then verify with kubectl get deployments and kubectl get pods, and access via kubectl proxy and curl.
Explore your app with kubectl to view deployments and pods, describe and log their status, and use exec to access the container, then test port 8001 via a local browser.
Expose your deployment as a nodeport service with kubectl expose deployment, using port 8081. Access it publicly via the minikube IP and service port.
Learn to scale a Kubernetes deployment using kubectl scale deployment, increasing replicas from one to three and then reducing back to one, and understand imperative versus declarative approaches.
Orchestrate multi-container pods using busybox and a sidecar nginx, creating and managing pods with kubectl, inspecting logs, executing commands, and validating inter-container communication with curl and shared volumes.
Learn pod design in Kubernetes through hands-on labeling, selecting pods, node selectors, and annotations, and explore deploying, scaling, and managing pods, deployments, jobs, and cron jobs using kubectl.
Explore state persistence by creating hostpath persistent volumes and claims with read-write-once using the Manuel storage class, mounting /data and /usr/share/nginx/html. Compare emptyDir volumes that last during the pod lifetime.
Create and manage Kubernetes config maps and secrets; read data from files, set environment variables, mount volumes, configure pods, and validate configurations using kubectl commands.
Master Kubernetes observability basics by implementing readiness and liveness probes, http get health checks on port 80, and managing pods with kubectl and yaml configurations.
Master Kubernetes services and networking by creating and exposing nginx services, validating labels, testing with BusyBox, and applying a default deny ingress network policy.
The CKAD Practical Exam Preparation course is designed to equip participants with the necessary knowledge and skills to successfully pass the Certified Kubernetes Application Developer (CKAD) exam. This hands-on course covers various practical exercises and scenarios to familiarize candidates with real-world Kubernetes application deployment, management, and troubleshooting.
This course is hands-on and will be delivered through a combination of lectures, demonstrations, and practical exercises. Participants will have access to a live Kubernetes cluster for performing tasks similar to those encountered in the CKAD exam. The course instructor will guide candidates through various scenarios, providing insights, best practices, and tips for the exam.
This course is ideal for individuals who already possess a foundational knowledge of Kubernetes and have practical experience working with Kubernetes clusters. It is recommended for developers, software engineers, system administrators, and DevOps professionals seeking to enhance their Kubernetes skills and obtain the CKAD certification.
Course Objectives:
Gain a deep understanding of core Kubernetes concepts and architecture.
Learn to work with Kubernetes resources, such as Pods, Deployments, Services, ConfigMaps, and Secrets.
Develop proficiency in using kubectl commands to interact with Kubernetes clusters.
Master essential application management tasks, including scaling, rolling updates, and rollbacks.
Understand how to troubleshoot common Kubernetes application issues.
Practice working with Persistent Volumes (PVs) and Persistent Volume Claims (PVCs).
Learn to set up and use ConfigMaps and Secrets for application configuration.
Explore multi-container Pod design patterns and container communication.
Acquire the skills to schedule and deploy applications to specific nodes.
Get hands-on experience with security contexts and resource limits for Pods.
Understand how to create and use Jobs and CronJobs for batch processing.
Learn about ServiceAccounts and their role in managing access to Kubernetes resources.
Practice network policies to control communication between Pods.