hardMultiple ChoiceObjective-mapped
Google ACE Practice Question: Managing a GKE cluster that runs a mixed…
You are managing a GKE cluster that runs a mixed workload: latency-sensitive web services and batch data processing jobs. The batch jobs run for hours and consume significant CPU/memory. During batch peaks, the web services experience CPU throttling. What is the best configuration to prevent batch jobs from impacting web service latency?
⚠ Common exam trap
Google Cloud often tests the misconception that resource limits alone (Option A) or autoscaling (Options C and D) can solve resource contention, when in reality priority and isolation mechanisms are required to guarantee QoS for latency-sensitive workloads.
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
✓
Assign web service pods a higher PriorityClass and run batch jobs on a separate node pool with taints.
It uses PriorityClass to ensure web service pods are scheduled and maintained over batch pods during resource contention, while placing batch jobs on a separate node pool with taints isolates their resource consumption. This prevents batch jobs from causing CPU throttling on latency-sensitive web services by guaranteeing that web pods have priority access to CPU cycles and that batch workloads do not share nodes with web pods.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Set CPU requests and limits on batch job pods to be lower than web service pods.
Why it's wrong here
Setting lower CPU requests and limits on batch job pods only caps how much CPU they can consume; it does not reserve web service capacity. On a shared node, batch pods can still burst into idle CPU cycles (the unused portion of web service requests), and if the node is oversubscribed, the kernel's CFS scheduler may throttle batch pods only after they have competed with web pods for time slices. This approach does not provide hard isolation, so web service latency can still degrade during batch-heavy periods.
- ✓
Assign web service pods a higher PriorityClass and run batch jobs on a separate node pool with taints.
Why this is correct
Applying a higher PriorityClass to web service pods and placing batch jobs on a separate, tainted node pool is the architecturally correct solution. Node taints prevent batch pods from being scheduled onto web-service nodes (unless they tolerate the taint), providing hard isolation, while PriorityClass with preemption guarantees that if a web pod ever needs to be scheduled on a shared node, it will evict lower-priority batch pods. Together, these mechanisms ensure batch workloads cannot throttle web pods and that web traffic gets uninterrupted CPU resources.
- ✗
Use Horizontal Pod Autoscaler for batch jobs so they scale down during peak web traffic.
Why it's wrong here
Horizontal Pod Autoscaler scales a workload based on its own target metrics (e.g., CPU utilization of the batch pods), not based on the needs of another workload. Batch jobs will only scale down if their own average CPU utilization falls below the HPA threshold; they have no awareness of web service traffic or CPU demand. Thus, during peak web traffic, batch pods would continue running at their desired replica count, competing for CPU with web pods on any shared node.
- ✗
Enable Cluster Autoscaler so new nodes are added when batch jobs demand more resources.
Why it's wrong here
Cluster Autoscaler only adds nodes when pods are unschedulable due to insufficient capacity; it does not react to CPU saturation on existing nodes. If batch pods are already running and consuming CPU alongside web pods, the autoscaler sees nothing to do because no pod is pending, so it will not add a node to relieve contention. Even if it did add nodes, batch pods would remain on the original shared nodes, so it would not prevent the existing batch pods from throttling web services.
Go deeper
Related to this question
Learn chapter
GCP Database Services
Key term
Service
A service is a software component or system that performs a specific function and is available to be used by other programs or users over a network.
Key term
Node pool
A node pool is a group of virtual machines (nodes) within a container orchestration cluster that share the same configuration, such as machine size, operating system, and scaling settings, allowing you to manage them as a single unit.
About these practice questions
This ACE question is part of Courseiva's 769-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 ACE practice question is part of Courseiva's free Google Cloud 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 ACE exam.