CKAD Application Observability and Maintenance Practice Question
A deployment is configured with a liveness probe that checks an HTTP endpoint. The probe fails intermittently, causing pod restarts. What is the best first step to diagnose the issue?
⚠ Common exam trap
It's easy for candidates to assume the liveness probe failure is a network or configuration issue (options A, B, C) rather than recognizing that intermittent failures are almost always an application-level problem best diagnosed via container logs.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Examine the container logs via 'kubectl logs' for error messages around the time of the failures.
Container logs provide the application's perspective on why the HTTP endpoint is failing intermittently. The liveness probe failure is a symptom; the root cause (e.g., a transient error, resource exhaustion, or a bug) is most directly visible in the application's own log output around the failure timestamps. This aligns with the CKAD domain of Application Observability and Maintenance, where logs are the primary diagnostic tool for application-level issues.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Check the liveness probe events via 'kubectl describe pod' to see the exact probe responses.
Why it's wrong here
kubectl describe pod shows probe events like 'Liveness probe failed' with the HTTP status code or command exit code, but these events are generated by the kubelet and do not contain the application's internal error message, stack trace, or logging output. The event will tell you that the probe failed and possibly the raw response (e.g., 500), but not why your application returned that response. This makes describe a useful first step for confirming the failure, but insufficient for root-cause diagnosis.
- ✗
Run 'kubectl exec' to curl the endpoint from another pod to test network connectivity.
Why it's wrong here
Executing curl from another pod tests network reachability to the pod's IP/port from the cluster network, but the kubelet runs liveness probes directly on the node, so a network partition between pods is rarely the cause of a liveness probe failure. Even if the endpoint is reachable, the application can still be internally unhealthy—for example, deadlocked or stuck in a bad state—and return a 500 or fail to respond to the probe specifically. This action adds extra load and could even change timing, making it a poor diagnostic for application-level failures.
- ✗
Review the liveness probe parameters in the deployment YAML and increase the failureThreshold.
Why it's wrong here
Increasing failureThreshold or adjusting other probe parameters only tells Kubernetes to tolerate more consecutive failures before restarting the container; it does nothing to address the underlying application defect. During the extended threshold window, the pod remains unhealthy and may be removed from Service endpoints, meaning user traffic continues failing while the container is kept alive artificially. This is a config tuning approach that masks the symptom, not a diagnostic step, and should only be considered after the root cause is identified and the threshold is aligned with actual startup and response behavior.
- ✓
Examine the container logs via 'kubectl logs' for error messages around the time of the failures.
Why this is correct
Container logs are the most direct source of information about what the application was doing when the liveness probe failed, because the application often writes an error, panic, or timeout message immediately before it becomes unresponsive. Use `kubectl logs <pod>` to view the current logs, and `kubectl logs <pod> --previous=true` if the container has been restarted, to find logs from the failed run. Correlating log timestamps with probe failure events from `kubectl describe` lets you pinpoint the exact code path or dependency failure causing the probe to fail.
Go deeper
Related to this question
Learn chapter
Multi-Container Pods and Sidecar Patterns
Key term
Liveness Probes
A liveness probe is a Kubernetes health check that tells the system whether a container is running properly and should be kept alive or restarted.
Key term
Metrics Server
The Metrics Server is a cluster-wide aggregator of resource usage data in Kubernetes, collecting CPU and memory metrics from nodes and pods for autoscaling and monitoring.
About these practice questions
This CKAD question is part of Courseiva's 826-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This CKAD practice question is part of Courseiva's free CNCF certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the CKAD exam.