
Explore cloud native foundations, containers and Kubernetes, and prepare for the KCNA exam with hands-on labs on autoscaling, GitOps, CI/CD, observability, and tooling like Docker, Prometheus, Grafana.
Define cloud native through its philosophies, from architecture to culture, and see how the Linux Foundation and CNCF drive container-based, scalable deployments with Kubernetes.
Explore KCNA exam overview, a precursor to CKA and CKAD, with Kubestronaut relevance, remote proctoring, costs, the DIVEINTO30 discount, and security considerations.
See how cloud native architecture replaces brittle monoliths with loosely coupled microservices, enabling observable, resilient systems guided by robust automation and scalable data stores.
Design resilient cloud native systems with Kubernetes self-healing replicas that recover from failures. Embrace automation, CI/CD, secure-by-default practices, autoscaling, serverless patterns, and service discovery for speed and cost efficiency.
Explore autoscaling types—reactive, scheduled, and predictive—and how Kubernetes tools like cluster autoscaler, HPA, VPA, and KEDA enable horizontal, vertical, and scale-to-zero strategies using CPU and memory metrics.
Explore how serverless uses provider-managed servers and on-demand resources to run code at any scale, via AWS Lambda as a FaaS, with event-driven execution and autoscaling to zero.
Explore how the cloud native CNCF governs projects from sandbox to graduation, crossing the chasm with TOC oversight, maturity signals, and open governance practices.
Explore cloud native personas such as DevOps, SRE, CloudOps, DevSecOps, cloud architects, and data engineers, and learn how these roles complement each other within cloud native culture.
Explore open standards that enable OCI image formats, runtimes, and distributions, with examples from Docker, runC, and Kubernetes CNI, CSI, CRI, and SMI for cloud-native flexibility.
Trace the evolution of container technology from mainframe virtualization and chroot to Linux namespaces and cgroups, and learn how Docker and Kubernetes enable isolated, resource-controlled containers.
Install and configure Docker Desktop on Mac, Windows, and Linux, set up a Kubernetes node within Docker Desktop, and run containers to explore Docker and Kubernetes integration.
Explore container images, their layers and tags, including latest, and how OCI compliance, registries, digests, and image IDs verify and manage multi-arch containers.
Learn to run containers with Docker, including a version check, the funbox image, interactive sessions (-i -t), and automatic cleanup (--rm).
Explore docker networking and volumes using the nginx image, publishing ports, inspecting containers, and mounting host directories to serve dynamic content.
Build a lightweight container image from Alpine using a Dockerfile, apply labels, fetch cmatrix, and compile a static binary with autoreconf, autoconf, automake, and ncurses.
Learn to build and optimize a cmatrix docker image by iterating dockerfile changes, using workdir, multi-stage builds, and entrypoint versus cmd to create a lightweight, reproducible container.
Learn to build cross-platform container images with Docker buildx, push multi-arch images to Docker Hub, and clean up artifacts with prune, enabling amd64 and arm64 usage.
Explore container orchestration as the key to running containers at scale, covering provisioning, deployment, scaling, networking, storage, security, and autoscaling with Kubernetes and CRDs.
Examine the Kubernetes architecture by exploring the control plane and nodes, including etcd, kube-apiserver, kube-scheduler, kubelet, and kube-proxy, to understand pod creation and service networking.
Set up the Kubernetes lab environment with Docker Desktop, update to a modern version, install the DiveInto Labs extension, load labs by identifier, and customize the workspace.
Discover setting up a Kubernetes lab with Google Cloud Shell, using a free Google account, an ephemeral environment, and previewing the lab on port 8080.
Set up the Kubernetes lab with Docker Compose on a modern Linux kernel with cgroups v2, pull the lab, start the environment, and enter the lab id for access.
Explore how Kubernetes pods are the smallest deployable units that host containers with shared networking and unique IP addresses, then deploy nginx and inspect pod communication with kubectl tools.
Learn to build Kubernetes pods from yaml, including multi-container pods, explore restartPolicy options, use kubectl with dry-run and -o yaml to generate and save declarations, and apply declarative configurations.
Create a single pod with two containers (webserver and sidecar) and manage yaml layouts. Observe the shared IP, monitor logs, simulate crashes, and compare declarative versus imperative pod creation.
Troubleshoot Kubernetes pods using describe, logs, and exec to diagnose Pending, ImagePullBackOff, and CrashLoopBackOff, and use events for debugging.
Explore how Kubernetes namespaces isolate resources and support multi-tenant management with quotas, limitranges, and RBAC. Practice with kubectl to list, create, and switch namespaces and set context.
Master Kubernetes deployments and ReplicaSets for declarative app updates, scaling, and safe rollbacks. Learn to monitor rollouts, annotate changes, and manage image updates with kubectl.
Explore how Kubernetes DaemonSets run one pod per node, enabling node-level services for log collection, monitoring, and CNI networking, with hands-on deployment conversion.
Master kubectl set image and kubectl patch to update container images on pods and deployments, and perform targeted partial updates to replicas, labels, and environment variables.
Explore Kubernetes services, including ClusterIP, NodePort, LoadBalancer, ExternalName, and headless service, with hands-on examples of exposing deployments, endpoints, and DNS-based service discovery.
See how Kubernetes jobs run batch tasks, track progress, and retry on failure. Use cron jobs to schedule recurring tasks like daily reports and system maintenance.
Explore how to create and use Kubernetes ConfigMaps to store configuration data and environment variables in pods via envFrom and configMapRef. Learn about ConfigMap immutability and that updates require recreation.
Learn how Kubernetes secrets store sensitive information like passwords and keys, distinguish secrets from configmaps, and view base64 encoded data using kubectl and secretRef in pods.
Learn how Kubernetes labels and label selectors identify, group, and manage resources, enabling service discovery, load balancing, and network policy implementation across pods, services, and deployments.
Discover how Kubernetes annotations differ from labels, store descriptive metadata, and drive controller behaviors to trigger rollouts in real-world clusters using ingress, service meshes, and observability tools.
Explore Kubernetes startup, liveness, and readiness probes, learn how startup delays affect readiness and liveness, and see how probes use HTTP, TCP, or gRPC to manage pod health and traffic.
Explore the Kubernetes API, a RESTful interface for managing pods, services, volumes, and other resources, with authentication, authorization, admission control, and custom resource definitions.
Explore the Kubernetes API from a user perspective using kubectl to issue requests and view nodes. Use OpenAPI and Postman to explore endpoints, create pods, and delete pods via API.
Explore Kubernetes RBAC from the ground up, showing how policies grant actions to users, groups, and service accounts with defined roles on resources like pods and services, guided by kubeconfig.
Master Kubernetes RBAC at cluster level by binding a cluster-admin to groups like system:masters, and verify permissions with kubectl auth-can-i.
Master Kubernetes RBAC by creating users and groups, issuing certificates, and building kubeconfig files, then enforce access with cluster and namespace roles and bindings across real-world examples.
Explore how the kube-scheduler uses filtering, scoring, and binding to place pods on nodes, considering resources, constraints, and nodeName.
Master taints and tolerations to control pod placement on nodes, using key=value:effect formats and tolerations like exists or equals across kubeadm, k3s, and deployments.
Explore Kubernetes affinity to control pod scheduling with node and pod affinity/anti-affinity, using required and preferred rules, topology keys, and practical labeling examples.
Master inter pod affinity and anti affinity to schedule pods by topology, using topologyKey like kubernetes.io/hostname or topology.kubernetes.io/zone, and matching on labels such as role=backend.
Explore ephemeral and persistent Kubernetes storage, including emptyDir backed by memory for fast caches, and demonstrate manual and dynamic PV/PVC provisioning with k3s local path and reclaim policies.
StatefulSets manage stateful applications by giving each pod a sticky identity, with partitioned updates. They provide stable network identifiers and per-pod PVCs with storage class provisioning.
Apply Kubernetes network policies to isolate pods and control ingress from allowed namespaces and IP blocks, using labels to restrict access to services like nginx, enhancing multi-tenancy security.
Explore how Kubernetes ingress centralizes http and https routing via ingress rules, enabled by an ingress controller such as nginx-ingress, with ssl termination and simplified management.
Configure and test kubernetes ingress using default ingressclass, annotations, and host-based routing to direct traffic to nginx-frontend, nginx-api, and nginx-admin across /, /api, and /admin.
Configure a Kubernetes ingress with tls using a self-signed certificate and tls secret. Test http to https redirects with curl, and explore prefix vs exact path matching.
Learn how the Gateway API replaces legacy ingress with GatewayClass, Gateway, and HTTPRoute resources to enable role-based, multi-tenant routing with TLS, listeners, and policy guards.
Explore how Kubernetes Pod Disruption Budgets maintain application availability during voluntary disruptions by enforcing a minimum number of available pods, contrasting with replicas.
Explore the four-layer model of Kubernetes security, including authN/authZ, admission control, workload runtime settings, and the network and data plane, covering RBAC, pod security, network policies, and runtimes like gVisor.
Learn how Kubernetes security contexts control pod and container privileges, using runAsUser and runAsGroup to run as non-root and prevent root escalation in a practical hands-on demo.
Discover how Kubernetes Pod Security Admission enforces pod security through namespace labels and Pod Security Standards, with Enforce, Warn, and Audit modes and Privileged, Baseline, and Restricted profiles.
Apply Kubernetes resource quotas to a namespace to cap CPU, memory, and pod counts, ensuring fair resource sharing in multi-tenant clusters and enforcing per-namespace requests and limits.
Learn to install Helm, create and package a Helm chart, and deploy a flappy-dock game app on Kubernetes, using values.yaml configurations and kubectl commands.
Kustomize, built into kubectl, manages Kubernetes configurations with a base and overlays via kustomization.yaml, enabling name prefixes, patches, and selectors across dev and prod environments.
Master how service meshes secure, observe, and manage microservice traffic with data plane and control plane architectures, using sidecar or host proxies and SMI standards.
Explore cloud native observability by examining telemetry, logs, metrics, and traces, and how alerts enable proactive, high-quality monitoring of distributed systems.
Accelerate Kubernetes observability with Prometheus and Grafana, leveraging PromQL for time-series data, alerting, and dashboards, and integrating data sources for real-time monitoring of SLAs, SLOs, and SLIs.
Set up observability with helm using the kube-prometheus-stack to deploy Prometheus, Grafana, and related components, then explore metrics via the Prometheus user interface and Grafana.
explore hands-on Grafana and Prometheus integration by importing community dashboards and inspecting promql queries for global cpu usage in a Kubernetes cluster, with cleanup steps.
Explore cost management for cloud native solutions by using on-demand, reserved, and spot resources, right-sizing, autoscaling, and hybrid or private cloud options; leverage anomaly detection and kubecost.
Explore cloud native application delivery and GitOps using Argo CD to manage Kubernetes deployments with declarative infrastructure, automatic sync, and real-time reconciliation.
Unlock your future with Kubernetes and Cloud Native technologies through a comprehensive, hands-on course that covers everything you need to pass the KCNA certification. This course offers theory, interactive browser-based labs, quizzes, and practice exams - eliminating the need for any other resources.
Recognized by the CNCF, the organization that manages Kubernetes, this course ensures you’re learning from an authoritative and trusted source. Whether you're just starting or aiming to secure your KCNA certification, this course is your complete toolkit for mastering one of the most in-demand tech skills today.
Your instructor James Spurin brings a wealth of knowledge and passion to his teachings. As a CNCF Ambassador, Docker Captain, and Kubestronaut (an expert with all Kubernetes certifications) - James has mentored thousands of students across the globe.
His approach is hands-on, practical, and designed to help learners succeed at any level. James has spoken at events like KubeCon and DockerCon and his work is featured on major platforms like Docker's official blog. His expertise, combined with a passion for education, ensures that you’re learning from a top authority in Kubernetes and Cloud Native technologies.
Student Testimonials:
★★★★★ Just passed the KCNA exam! James' course is a fantastic tool for hands on learning while preparing you for the certification. Highly recommended!
★★★★★ This course is excellent resource for anyone who wants to start their journey with Cloud Native and Kubernetes. This course will be not only help anyone to PASS the certification exam but also explain all of the core concepts very nicely with proper Hands ON. I have passed KCNA last week. Thank you James Spurin for such an excellent course. Keep it up
★★★★★ Excellent course! I recently passed with a high score. My favourite part about the course is the lab which allowed me to learn hands on. James is a great presenter and overall the course is well thought out
★★★★★ This course is amazing! James is really clear and very thorough in the way that everything is explained. He covers whats needed to pass the Certification exam, but also delves deeper into the subject matter. The web-based multi-node Lab means that you can literally try everything out and follow along with the course with your own kubernetes cluster. The lab even synchronises to the right part of the course at the click of one button, so you know you are starting with a clean cluster at the right starting point for that lesson. Love it!!!
★★★★★ It is a phenomenal course. Well explained with beautiful diagrams that help the content sink in
★★★★★ I truly love the content of the lessons, the pace, and the way the instructor presents each lesson. Not to mention that the illustrations are really great
★★★★★ EXCELLENT COURSE!!! This has probably been the best course I have taken. I LOVE the systematic app and hands on approach - 1. Notes on what to focus on before getting into the theory, 2. Theory, 3. Hands on Labs, 4, Quiz. James also created a docker extension where you can run the lab locally to get hands on experience. James is super smart, I can understand him well and he speaks at a speed that I can play at a faster rate if I so choose. I loved it. I wish more courses took this approach. Thanks James Spurin!!
Why Choose Our KCNA Certification Course:
Comprehensive Curriculum: Meticulously crafted to cover every aspect of the CNCF's latest curriculum guidelines, our course ensures you grasp the fundamentals and advanced concepts including Containers, Docker, Kubernetes and Cloud Native technologies. From the basics all the way through to advanced topics, every area is covered
Dynamic Learning Experience: Engage with our dynamic educational content, including:
In-Depth Video Tutorials: Learn through visually engaging and detailed video lessons, created to the highest level of quality. Clarify complex topics and demonstrate real-world applications
Interactive Browser-Based Labs: Get hands on with our interactive labs that run directly in your browser. Practice as you learn with real Kubernetes environments for every topic, no need to waste time setting up environments yourself. You'll be learning in the same environment that I use in the instructional videos
Quizzes: Test your knowledge and reinforce learning with targeted quizzes after every lesson, designed to boost your retention and confidence
Study Tips: Before each video, receive targeted study tips that highlight crucial topics and exam essentials. These guidelines ensure you focus on the most important concepts, optimising your study time and boosting your exam performance
Further Study: Go beyond the course and dive deeper into specific areas with recommended readings, online resources, and community contributions that will enhance your learning journey
Optional Challenges: Push your limits with optional challenges that encourage you to apply your knowledge. These challenges help to deepen your understanding and use of Kubernetes
Lifetime Access & Updates: Enrol once and receive lifetime access to all course materials, including all future updates. The cloud-native landscape evolves and so does our content, ensuring you stay at the forefront of your field
Instructor and Community Support: Join a vibrant community of fellow Kubernetes enthusiasts. Exchange ideas, solve challenges together, and network with peers and professionals in our exclusive communities
What you will learn on this course:
Learn all about the Cloud Native Ecosystem and how you can make use of this yourself to propel your career, you'll gain comprehensive insights in Cloud Native - a leading-edge technology domain embraced and respected by industry giants such as Google, Meta, and Microsoft
Understand the history of containers and the key ingredients in Linux that make containerisation possible. You'll use Docker to run containers, you'll understand the internals of containers and you'll learn how to build your own container images following best practices including multi-stage builds, and building containers that can run across different architecture profiles such as x86 and arm
You'll learn Kubernetes from the ground up, you'll build your own Kubernetes multi-node cluster and will learn concepts from fundamentals to advanced, you'll learn and understand the Kubernetes Architecture, you'll make use of Pods, Namespaces, Deployments & ReplicaSets, Services, Jobs, ConfigMaps, Secrets, Labels, the Kubernetes API, RBAC, Scheduling, Storage, StatefulSets, NetworkPolicies and Security
Install, manage and configure applications using the Helm Package manager, we'll even explore building our own Helm charts
We take this even further with hands-on experience of Cloud Native & Kubernetes Telemetry and Observability. We'll make use of the incredible Prometheus and Grafana toolsets within our Kubernetes cluster
You'll learn about Cloud Native GitOps and will explore this yourself with the use of ArgoCD in your Kubernetes Cluster
Bonus outcomes with this course:
As you complete each topic, you'll be challenged with extensive quizzes that support and reinforce your knowledge. These quiz questions have a crossover with the KCNA examination, therefore by completing these quizzes you'll also be preparing yourself for the Kubernetes and Cloud Native Associate Exam
You'll use the same environment as I use in the course to learn yourself with our interactive hands on labs. No need to waste time building or replicating environments, you'll have the same setup and all of this is provided with a friendly and convenient user interface that will walk you through each of the lab based topics as per the video lesson
Further study provides the opportunity to explore the Kubernetes and Cloud Native ecosystem even further with curated guidance
At the end of the course we have 2 practice exams that provide questions and answers that cross over with those you're likely to encounter in the KCNA examination. If you're able to successfully complete these exams with a score of 85% or more, you'll be confident in acing the Kubernetes and Cloud Native Associate certification
After taking this course you will be able to:
Embark on the Kubernetes and Cloud Native Associate Certification with complete confidence
Understand, make use of and build your own Container Images across multiple architectures. You'll have the confidence to host your own containers on registries such as Docker Hub
Use Kubernetes, you'll be able to run and develop your own applications that make use of advanced Kubernetes components
You'll be confident in using Kubernetes and will be able to manage users, groups and even service accounts through the use of Role Based Access Control
Your knowledge of Kubernetes will surpass basic usage, you'll also be confident making use of the Cloud Native Ecosystem and running more complex applications such as Prometheus, Grafana and ArgoCD
March 2026 Update:
Major Course Update: Added 15 new sections to support the latest November 2025 Curriculum! Throughout the course, updated quizzes, study tips and further study for existing sections to support the expanded coverage of existing topics, in the latest exam.
Brand new lab environment added with support for all lessons in the course!
November 2025 Update:
Docker Container Introductory content updated - Switched the funbox container image to a managed version (spurin/funbox) to provide consistency in the course for all students and support for both x64 and arm architectures. Revamped the Dockerfile creation examples so that Docker doesn't warn about linting errors, i.e. using AS instead of As in the Dockerfile.
August 2025 Update:
Refinements made to 8 sections for exam accuracy, new section added to the curriculum. Practice Exams updated to reflect new content.
March 2025 Update:
Course Video Refresh & Subtitle Enhancements - The entire course has been refreshed with updates and improvements to all videos. As part of this update, all subtitles and captions have been revised and manually reviewed to ensure accuracy.
October 2024 Update:
Practice Exams - The practice exams have been upgraded to Udemy's new Practice Test format, offering an exam-like environment where you can test your knowledge with two full-length exams. Full feedback is provided for every possible correct or incorrect answer, helping you understand each question in detail.
Quizzes - All quizzes also provide full feedback for every possible correct and incorrect answer.
September 2024 Update:
Kubernetes Lab - Updated to v1.31.0!
Lab Environment - The lab environment has been enhanced for improved UI consistency across various operating systems, cloud environments, and different browsers, ensuring a seamless experience regardless of where you're running it.
June 2023 Update:
Quiz/Lab Feedback and Enhancements
February 2023 Update:
Quiz/Lab Feedback and Enhancements
November 2022 Update:
Initial Release