An inference service in a GKE cluster must run its pods only on nodes that carry GPUs. The platform team already created a GPU node pool with labels on its nodes. What should the pod spec use to target those nodes?
Show answer and explanation
Answer: A
Node selectors and node affinity rules match pod requirements against node labels. GKE applies labels such as the accelerator type to GPU nodes, so a pod that selects that label runs only where the hardware exists. Node affinity offers richer expressions, including soft preferences. Node auto-provisioning can create new pools on demand but does not by itself bind a pod to a pool. Priority classes order scheduling and eviction, and autoscalers change replica counts.
Why the other options are wrong
- B. Pod priority determines which pods are scheduled or evicted first under pressure. It does not restrict pods to a particular set of hardware nodes.
- C. Horizontal pod autoscaling changes the number of replicas based on metrics. It decides how many pods run, not which nodes they land on.
- D. Auto-provisioning can create node pools with requested accelerators when needed, but the pod still needs a selector or affinity to target them. It does not pin the workload to a specific pool.