CKS Labs

Fourteen labs for the CKS Track. Each is self-contained and most run on the kind cluster from Lab CKAD-01. Labs 09 and 11 create their own clusters, need more memory, and leave your kubectl context pointing elsewhere until you switch back.

Labs 01, 13 and 14 were run on Kubernetes v1.37.0. Labs 02 to 12 were run on v1.35.0, the version the exam used on 2026-10-13, and not re-run on v1.37.

Several labs edit the API server manifest. Each keeps its backup in its own directory under /root/backup/ on the node. Do one lab at a time, finish its cleanup, and do Lab CKA-07 first so a failed restart is something you can fix. Lab 04 changes how Secrets are stored, which restoring a manifest does not undo; recreate the cluster after it if in doubt.

LabTitleCore FocusControlled Failure Scenario
CKS-01Workload Security HardeningInventory, ServiceAccounts, RBAC, Pod Security Standards, securityContext, NetworkPolicy with a test matrixEnforcement that leaves old Pods running; privileged Pod rejected at admission
CKS-02CIS Benchmark with kube-benchRunning the benchmark, reading remediations, fixing component flagsHardening flag that stops the API server
CKS-03Audit LoggingAudit policy, API server flags and mounts, querying the logPolicy file not mounted into the container
CKS-04Secrets Encryption at RestEncryptionConfiguration, re-encrypting, reading etcd directlyLosing the encryption key
CKS-05Seccomp, AppArmor & ImmutabilityRuntimeDefault and Localhost profiles, read-only root filesystemProfile missing on the node
CKS-06Falco Runtime DetectionReading alerts, tracing to a Pod, custom rules, overridesInvalid rule that stops Falco
CKS-07Image Scanning & Static AnalysisTrivy, SBOMs, kubesec, KubeLinter, binary checksumsScan flags that change the answer
CKS-08Image Admission ControlValidatingAdmissionPolicy, ImagePolicyWebhookReplacing the admission plugin list
CKS-09Image Signing with cosignKey pairs, signing by digest, verification, digest-only admissionTag overwritten with unsigned content
CKS-10Runtime Sandboxing with gVisorInstalling runsc, containerd handler, RuntimeClassMissing class versus missing handler
CKS-11Cilium Encryption & Metadata ProtectionWireGuard transparent encryption, packet capture, egress ipBlockEgress policy that also blocks the cluster
CKS-12Host OS FootprintListening ports, tracing to a package, removing services, blocking kernel modulesStopping the kubelet by mistake
CKS-13RBAC RemediationFinding every grant to an identity, least privilege, allowed and denied checksA binding that names the wrong namespace
CKS-14Investigating an Unknown IncidentUnguided: find the workload, its actions and reach, contain it and keep the evidenceA containment step that recreates the workload

The AppArmor section of Lab CKS-05 needs a virtual machine node. Remaining gaps are listed in the track’s gap table. Test yourself with the CKS practice set, which covers only part of the exam’s range.

14 items under this folder.