CKAD Practice Question: Application Environment, Configuration and Security
A namespace 'test' has a LimitRange that sets default memory request to 256Mi and default memory limit to 512Mi. A pod in that namespace does not specify any resources. What memory request and limit will the pod get?
⚠ Common exam trap
The trap here is that candidates might assume no resources means zero, or confuse the default request and limit values, but the LimitRange admission controller automatically injects the specified defaults.
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
✓
request: 256Mi, limit: 512Mi
When a LimitRange exists in a namespace with default memory request and limit values, any pod that does not specify resource requests or limits will automatically have those defaults injected by the admission controller. This ensures the pod is subject to resource constraints even without explicit specification.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
request: 0, limit: 0 (none)
Why it's wrong here
This choice is incorrect because the namespace contains a LimitRange that explicitly defines default memory resources. When a pod is created without a memory request or limit, the admission controller automatically injects the LimitRange's default values, so the effective memory settings are not left as 0. A result of 0/0 would only occur if no LimitRange existed, which contradicts the given scenario.
- ✓
request: 256Mi, limit: 512Mi
Why this is correct
This is the correct outcome because the LimitRange specifies a defaultRequest of 256Mi and a defaultLimit of 512Mi. During pod admission, the controller automatically assigns these values to any container that omits memory resources. This ensures the pod has a guaranteed request of 256Mi and a hard limit of 512Mi, matching the namespace's configured defaults.
- ✗
request: 512Mi, limit: 256Mi
Why it's wrong here
This option is invalid because Kubernetes enforces that a memory request must be less than or equal to the memory limit for a given container. A request of 512Mi with a limit of 256Mi violates that fundamental resource relationship: requests are reserved allocations, while limits cap actual usage, so the request can never exceed the limit. Even if a LimitRange were to specify such values, the API server would reject the pod manifest.
- ✗
request: 256Mi, limit: 256Mi
Why it's wrong here
Although the request of 256Mi matches the namespace's defaultRequest, the limit here is incorrectly set to 256Mi. The LimitRange defines a distinct defaultLimit of 512Mi, and the admission controller will inject that value, not replicate the request. Setting both to the same value would ignore the configured default limit and is not what Kubernetes would apply in this scenario.
Go deeper
Related to this question
About these practice questions
Courseiva writes every CKAD question from scratch — 826 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or 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.