Linux Foundation CKA Practice Exam Questions & Answers
Linux Foundation CKA Exam Details
Key details for this exam, checked against the published exam outline
- Exam Code
- CKA
- Full Name
- Certified Kubernetes Administrator
- Issuing Body
- Linux Foundation and Cloud Native Computing Foundation (CNCF)
- Question Format (Our Bank)
- Multiple Choice
- Delivery
- Online proctored via PSI Bridge platform
- Eligibility
- No formal prerequisites required. strong Kubernetes and Linux command-line knowledge recommended
- Validity
- 2 years
- Full Question Set
- 83 questions Get All Questions
Free CKA Practice Questions
Each question shows the correct answer and an explanation of why it is right
Question 1 Domain 3 Workloads & Scheduling
SIMULATION
You must connect to the correct host.
Failure to do so may result in a zero score.
[candidate@base] $ ssh Cka000046
Task
First, create a new StorageClass named local-path for an existing provisioner named rancher.io/local-path .
Set the volume binding mode to WaitForFirstConsumer .
Not setting the volume binding mode or setting it to anything other than WaitForFirstConsumer may result in a reduced score.
Next, configure the StorageClass local-path as the default StorageClass .
Task Summary
You need to:
SSH into cka000046
Create a StorageClass named local-path using the provisioner rancher.io/local-path
Set the volume binding mode to WaitForFirstConsumer
Make this StorageClass the default
Step-by-Step Solution
1 SSH into the correct host
ssh cka000046
Required. Skipping this = zero score
2 Create a StorageClass YAML file
Create a file named local-path-sc.yaml:
cat <<EOF > local-path-sc.yaml
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: local-path
annotations:
storageclass.kubernetes.io/is-default-class: 'true'
provisioner: rancher.io/local-path
volumeBindingMode: WaitForFirstConsumer
EOF
This:
Sets WaitForFirstConsumer (as required)
Marks the class as default using the correct annotation
3 Apply the StorageClass
kubectl apply -f local-path-sc.yaml
4 Verify it's the default StorageClass
kubectl get storageclass
You should see local-path with a (default) marker:
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
local-path rancher.io/local-path Delete WaitForFirstConsumer false 10s
Final Command Summary
ssh cka000046
cat <<EOF > local-path-sc.yaml
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: local-path
annotations:
storageclass.kubernetes.io/is-default-class: 'true'
provisioner: rancher.io/local-path
volumeBindingMode: WaitForFirstConsumer
EOF
kubectl apply -f local-path-sc.yaml
kubectl get storageclass
Question 2 Domain 3 Workloads & Scheduling
SIMULATION
List all the pods sorted by name
kubectl get pods --sort-by=.metadata.name
Question 3 Domain 1 Storage
SIMULATION
Create 2 nginx image pods in which one of them is labelled with env=prod and another one labelled with env=dev and verify the same.
kubectl run --generator=run-pod/v1 --image=nginx -- labels=env=prod nginx-prod --dry-run -o yaml > nginx-prodpod.yaml Now, edit nginx-prod-pod.yaml file and remove entries like ''creationTimestamp: null'' ''dnsPolicy: ClusterFirst''
vim nginx-prod-pod.yaml
apiVersion: v1
kind: Pod
metadata:
labels:
env: prod
name: nginx-prod
spec:
containers:
- image: nginx
name: nginx-prod
restartPolicy: Always
# kubectl create -f nginx-prod-pod.yaml
kubectl run --generator=run-pod/v1 --image=nginx --
labels=env=dev nginx-dev --dry-run -o yaml > nginx-dev-pod.yaml
apiVersion: v1
kind: Pod
metadata:
labels:
env: dev
name: nginx-dev
spec:
containers:
- image: nginx
name: nginx-dev
restartPolicy: Always
# kubectl create -f nginx-prod-dev.yaml
Verify :
kubectl get po --show-labels
kubectl get po -l env=prod
kubectl get po -l env=dev
Get the complete CKA question set
$20$40
Question 4 Domain 3 Workloads & Scheduling
SIMULATION
List all the pods sorted by name
kubect1 get pods --sort-by=.metadata.name
Question 5 Domain 3 Workloads & Scheduling
SIMULATION
List pod logs named ''frontend'' and search for the pattern ''started'' and write it to a file ''/opt/error-logs''
Kubectl logs frontend | grep -i ''started'' > /opt/error-logs
Question 6 Domain 4 Cluster Architecture, Installation & Configuration
SIMULATION
List ''nginx-dev'' and ''nginx-prod'' pod and delete those pods
kubect1 get pods -o wide
kubectl delete po ''nginx-dev''
kubectl delete po ''nginx-prod''
Question 7 Domain 3 Workloads & Scheduling
SIMULATION
Score:7%

Context
An existing Pod needs to be integrated into the Kubernetes built-in logging architecture (e. g. kubectl logs). Adding a streaming sidecar container is a good and common way to accomplish this requirement.
Task
Add a sidecar container named sidecar, using the busybox Image, to the existing Pod big-corp-app. The new sidecar container has to run the following command:
/bin/sh -c tail -n+1 -f /va r/log/big-corp-app.log
Use a Volume, mounted at /var/log, to make the log file big-corp-app.log available to the sidecar container.

Solution:
#
kubectl get pod big-corp-app -o yaml
#
apiVersion: v1
kind: Pod
metadata:
name: big-corp-app
spec:
containers:
- name: big-corp-app
image: busybox
args:
- /bin/sh
- -c
- >
i=0;
while true;
do
echo '$(date) INFO $i' >> /var/log/big-corp-app.log;
i=$((i+1));
sleep 1;
done
volumeMounts:
- name: logs
mountPath: /var/log
- name: count-log-1
image: busybox
args: [/bin/sh, -c, 'tail -n+1 -f /var/log/big-corp-app.log']
volumeMounts:
- name: logs
mountPath: /var/log
volumes:
- name: logs
emptyDir: {
}
#
kubectl logs big-corp-app -c count-log-1
What the Linux Foundation CKA Exam Covers
Exam domains verified against the Official Linux Foundation CKA exam guide, last checked November 2026.
Domain 1 Storage
10%Understand storage classes and persistent volumes, including volume mode, access modes, and reclaim policies. Understand persistent volume claims and know how to configure applications with persistent storage.
Sample question from this domain above Q3
Domain 2 Troubleshooting
30%Evaluate cluster and node logging and understand how to monitor applications. Manage container stdout and stderr logs, troubleshoot application failures, cluster component failures, and networking issues.
Domain 3 Workloads & Scheduling
15%Understand deployments and perform rolling updates and rollbacks. Use ConfigMaps and Secrets to configure applications, scale applications, understand primitives for self-healing deployments, manage resource limits affecting pod scheduling, and be aware of manifest management and templating tools.
Domain 4 Cluster Architecture, Installation & Configuration
25%Manage role based access control (RBAC) and use Kubeadm to install basic clusters. Manage highly-available Kubernetes clusters, provision underlying infrastructure, perform version upgrades, and implement etcd backup and restore procedures.
Sample question from this domain above Q6
Domain 5 Services & Networking
20%Understand host networking configuration on cluster nodes and connectivity between pods. Work with ClusterIP, NodePort, and LoadBalancer service types, use Ingress controllers and resources, configure CoreDNS, and choose appropriate container network interface plugins.
CKA Exam FAQ
Common questions about the exam itself
What background do I need to pass the CKA exam?
How hard is the CKA exam and why?
How long should I study to prepare for the CKA?
Which CKA objective area is hardest and how do I approach it?
What happens on CKA exam day?
How many times can I retake the CKA exam if I fail?
How long does the CKA certification stay valid?
What job role does the CKA certification map to?
How does the CKA relate to other Linux Foundation Kubernetes certifications?
What languages can I take the CKA exam in?
Other Linux Foundation Exams
Free practice questions for more Linux Foundation certification exams
