KCNA - Container Orchestration (28% of the exam) - Section 2.5
Explain how Kubernetes scales workloads and manages contention for node resources.
Manual replica scaling, the HorizontalPodAutoscaler, cluster autoscaling, ResourceQuota and LimitRange, and Quality of Service classes (Guaranteed, Burstable, BestEffort) with their eviction ordering.
HorizontalPodAutoscalercluster autoscalerResourceQuotaLimitRangeQuality of Service classespod eviction
Practice question for this objective
lock_openFree sampleContainer Orchestrationmedium
A platform team wants two automatic scaling behaviours: when CPU usage across a Deployment's Pods rises, more replicas of that Deployment should be created; and when Pods cannot be scheduled because every node is full, more worker nodes should be added to the cluster. Which pairing correctly maps each behaviour to the component responsible for it?
AThe cluster autoscaler adds replicas based on observed metrics, and the HorizontalPodAutoscaler adds nodes when Pods are unschedulable.
BThe VerticalPodAutoscaler adds replicas based on observed metrics, and the cluster autoscaler resizes existing Pods to fit the node.
CThe HorizontalPodAutoscaler adds both replicas and nodes, so no separate node-scaling component is required.
DThe HorizontalPodAutoscaler adds replicas based on observed metrics, and the cluster autoscaler adds nodes when Pods are unschedulable.check_circle Correct
Distinguish the HorizontalPodAutoscaler, which scales Pod replicas, from the cluster autoscaler, which scales the number of nodes. These two controllers operate at different layers: the HPA changes a workload's replica count in response to metrics, whereas the cluster autoscaler reacts to Pods that stay Pending for lack of capacity by adding nodes so those Pods can schedule.
Why A is wrong: Tempting because both names contain 'autoscaler', but the roles are reversed: the HPA scales Pods, not nodes, and the cluster autoscaler scales nodes, not replicas.
Why B is wrong: Tempting because the VPA is a real scaling component, but it adjusts a Pod's own requests and limits rather than adding replicas, and the cluster autoscaler adds nodes rather than resizing Pods.
Why C is wrong: Tempting because the HPA is the best-known autoscaler, but it only changes replica counts; it has no ability to provision worker nodes, which is the cluster autoscaler's job.
Why D is correct: Correct: the HPA controller adjusts a workload's replica count from metrics such as CPU, while the cluster autoscaler watches for pending Pods that cannot be scheduled and grows the node pool to fit them.
Answers that look right on this material and are not. Each one is a distractor from a different question in the KCNA bank for this domain.
Pod X, because equal requests and limits make it easy to reclaim
errorWhy it is wrong: Tempting because equal requests and limits sound rigid, but that configuration gives Pod X the Guaranteed class, which the kubelet evicts last, not first.
Guaranteed, because the Pod sets both requests and limits for its resources.
errorWhy it is wrong: Tempting because the Pod does set requests and limits, but Guaranteed requires every container's request to equal its limit for both CPU and memory, which is not the case here.
The Pod with equal request and limit first, then the Pod with request below limit, then the Pod with nothing set.
errorWhy it is wrong: Tempting if one assumes the most tightly specified Pod is sacrificed first, but Guaranteed Pods are protected and evicted last, not first.