Environment: GKE Standard, version 1.34, cloud.google.com/v1 ComputeClass
Behavior observed:
Multiple pods requesting the same ComputeClass (via nodeSelector: cloud.google.com/compute-class: ), submitted around the same time, each get provisioned onto a separate new node rather than being bin-packed onto one — even in cases where their combined resource requests would comfortably fit on a single node of the smallest listed priorities[].machineType.
Is initial pod placement onto autoprovisioned ComputeClass nodes bin-packing-aware across multiple simultaneously pending pods of the same class, or does each pending pod trigger an independent scale-up decision? If the latter, is there a way to batch/delay evaluation so concurrent pods are considered together? Is autoscalingPolicy.consolidationThreshold/consolidationDelayMinutes the only lever for retroactively repacking pods from underutilized nodes onto fewer nodes, or is there a setting that affects initial placement density too? When whenUnsatisfiable: ScaleUpAnyway falls back because no listed priority tier can be satisfied, what determines the actual fallback machine type (e.g., why e2-standard-2 specifically)? Is this documented anywhere? Is priorityScore a supported field under spec.priorities[] (as an alternative/supplement to list-order-based priority)? I haven’t been able to confirm this against the published CRD reference.
Questions:
Is initial pod placement onto autoprovisioned ComputeClass nodes bin-packing-aware across multiple simultaneously pending pods of the same class, or does each pending pod trigger an independent scale-up decision? If the latter, is there a way to batch/delay evaluation so concurrent pods are considered together?
Is autoscalingPolicy.consolidationThreshold/consolidationDelayMinutes the only lever for retroactively repacking pods from underutilized nodes onto fewer nodes, or is there a setting that affects initial placement density too?