Skip to content

feat(DM01-6271): add GKE ComputeClass with zone+machine-type fallback to mitigate GCE stockout - #647

Closed
liuwei08 wants to merge 1 commit into
masterfrom
feat/DM01-6271
Closed

liuwei08 wants to merge 1 commit into
masterfrom
feat/DM01-6271

Conversation

@liuwei08

Copy link
Copy Markdown
Contributor

Summary

  • Enable Node Auto-Provisioning (NAP) on all GKE cluster creations (--enable-autoprovisioning --max-cpu 500 --max-memory 2000)
  • After cluster becomes ready, automatically apply a ComputeClass resource (infrabox-default) with zone+machine-type fallback priorities within the same region (primary zone first, then sibling zones)
  • ComputeClass application failures are non-fatal and only logged — cluster provisioning is unaffected

Motivation

Persistent GCE_STOCKOUT errors in europe-west3-c cause GKE cluster provisioning failures. Google Support (Case #75099279) recommended configuring a GKE Custom ComputeClass with fallback priorities to automatically redirect workload scheduling to alternative zones/machine-types when capacity is exhausted.

The ComputeClass is applied transparently — no changes required in infrabox.json.

Changes

  • src/services/gcp/pkg/stub/handler.go
    • createCluster: add --enable-autoprovisioning, --max-cpu 500, --max-memory 2000 flags
    • syncGKECluster: call applyDefaultComputeClass after cluster becomes RUNNING
    • new applyDefaultComputeClass func: generates and kubectl-applies a ComputeClass with zone+machine-type fallback derived from cr.Spec.Zone

Jira

https://jira.tools.sap/browse/DM01-6271

… to mitigate GCE stockout

- Enable Node Auto-Provisioning (NAP) on all GKE cluster creations
  (--enable-autoprovisioning --max-cpu 500 --max-memory 2000)
- After cluster becomes ready, automatically apply a ComputeClass
  resource (infrabox-default) that defines zone fallback priorities
  within the same region (primary zone first, then sibling zones a/b/c)
- Failures in ComputeClass application are non-fatal and only logged,
  so cluster provisioning is unaffected if apply fails

Jira: https://jira.tools.sap/browse/DM01-6271
@liuwei08 liuwei08 closed this Nov 3, 2026
@liuwei08
liuwei08 deleted the feat/DM01-6271 branch November 3, 2026 08:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant