CKA Exam Topics & Practice Tasks

Every task in the lab maps to a domain in the official CKA curriculum. Below is the full list — what you'll practice, what skills each task tests, and how it maps to the exam blueprint.

17
graded tasks
5
CKA domains
120
min per attempt
100%
curriculum coverage
Domain 1 25% of CKA exam

Cluster Architecture, Installation & Configuration

Manage Kubernetes clusters: bootstrap with kubeadm, install CNI plugins, configure container runtimes, manage certificates, and understand control-plane components.

Task 01

CNI Plugin Installation

A cluster has been initialized but no CNI plugin is installed — all nodes show NotReady. Install a CNI plugin that enables pod-to-pod communication across nodes and supports NetworkPolicy enforcement.

kubeadm calico CNI pod networking kubectl create
Task 02

Certificate Management

Work with cert-manager Custom Resource Definitions. List all cert-manager CRDs and extract documentation for the Certificate spec using kubectl explain.

cert-manager CRDs kubectl explain TLS certificates
Task 07

Sidecar Container

Update an existing Deployment to add a sidecar container that tails a log file using a shared emptyDir volume. Tests understanding of multi-container pod patterns, volume mounts, and Deployment updates.

sidecar pattern emptyDir volumeMounts multi-container pods
Task 14

cri-dockerd Setup

Set up cri-dockerd as a container runtime interface on a node. Install the package, enable the service, configure kernel parameters for bridged networking and IP forwarding using sysctl.

container runtime cri-dockerd systemctl sysctl networking
Domain 2 15% of CKA exam

Workloads & Scheduling

Deploy and manage workloads: Deployments, HPA, PriorityClasses, taints and tolerations, resource requests/limits, and pod scheduling constraints.

Task 04

Horizontal Pod Autoscaler

Create an HPA for a Deployment with a CPU utilization target, min/max replica bounds, and a custom downscale stabilization window. Tests autoscaling configuration and the behavior API.

HPA autoscaling CPU metrics kubectl autoscale kubectl patch
Task 06

Split Node Resources

A Deployment has 3 replicas but none are running because a ResourceQuota blocks pods without resource requests. Investigate the quota, calculate equal per-pod shares, and configure requests equal to limits for Guaranteed QoS.

ResourceQuota requests / limits QoS class troubleshooting
Task 09

PriorityClass Configuration

Create a new PriorityClass with a specific value relative to existing classes, then patch a Deployment to use it. Tests understanding of pod scheduling priority and preemption.

PriorityClass preemption kubectl patch scheduling
Task 15

Taints and Tolerations

A worker node is tainted for dedicated GPU workloads. Create a pod with the correct toleration and nodeSelector to land on the tainted node while ensuring other workloads stay off it.

taints tolerations nodeSelector scheduling constraints
Domain 3 20% of CKA exam

Services & Networking

Configure cluster networking: Services (ClusterIP, NodePort), Ingress, Gateway API, Network Policies, DNS, and TLS termination.

Task 03

Network Policy

Two deployments span separate namespaces. Review multiple NetworkPolicy YAML files and select the one that allows frontend-to-backend traffic with the least permissive rules. Tests understanding of namespace selectors, pod selectors, and ingress rules.

NetworkPolicy namespace isolation ingress rules least privilege
Task 05

Gateway API Migration

Migrate an existing Ingress resource to the new Gateway API. Create a Gateway with TLS termination and an HTTPRoute that forwards traffic to the backend. Tests the Kubernetes Gateway API, which replaces Ingress on the CKA exam.

Gateway API HTTPRoute TLS termination Ingress migration
Task 12

TLS Version Restriction

A Deployment uses a ConfigMap for TLS configuration that currently allows TLS 1.2 and 1.3. Modify the config to enforce TLS 1.3 only, handling immutable ConfigMap replacement and Deployment restart.

ConfigMap TLS rollout restart security hardening
Task 13

NodePort Service

Add a named container port to a Deployment, then create a NodePort Service that references the named port. Tests Service configuration, named ports, label selectors, and namespace context switching.

NodePort named ports label selectors kubectl config
Task 16

Ingress Resource

Create an Ingress resource with multiple path-based routing rules using the NGINX Ingress Controller. Route different URL paths to different backend services with Prefix path matching.

Ingress NGINX controller path routing ingressClassName
Domain 4 10% of CKA exam

Storage

Manage persistent storage: PersistentVolumes, PersistentVolumeClaims, StorageClasses, volume binding modes, and data recovery from retained volumes.

Task 10

StorageClass Configuration

Create a new StorageClass with a specific provisioner and WaitForFirstConsumer binding mode. Then make it the default StorageClass while ensuring no other class retains the default annotation.

StorageClass volumeBindingMode default annotation kubectl patch
Task 11

Restore MariaDB with PVC

A database Deployment was deleted but its PersistentVolume was retained. Create a PVC that binds to the specific retained PV using volumeName, then update the Deployment manifest to mount it and restore the database.

PV / PVC volumeName binding Retain policy volume mounts
Domain 5 30% of CKA exam

Troubleshooting

Diagnose and fix cluster failures: broken control planes, misconfigured static pod manifests, failed Deployments, Helm issues, and node-level problems. This is the highest-weighted domain on the CKA exam.

Task 08

Argo CD Helm Installation

Install Argo CD using Helm with specific constraints: add the official repo, generate a template (not install) for an exact chart version with CRDs disabled, and save the output manifest. Tests Helm repo management, template generation, and flag usage.

Helm helm template Argo CD CRD management
Task 17

Control Plane Failure

After a cluster migration, the entire control plane is down. Three separate problems exist across the kube-apiserver, kube-controller-manager, and kube-scheduler static pod manifests. Identify and fix all issues to restore the cluster.

static pods kube-apiserver etcd resource requests crictl

Ready to practice?

Try the first 3 tasks free with a real Kubernetes cluster — no credit card, no install. Full access is a one-time €29 for 14 days.