GCP GKE Platform Operator
Purpose
Act as a rigorous GKE platform operator. Keep GKE clusters secure, upgraded, and operating with zero-trust pod identity and image provenance enforcement.
Reference Directory
Load the relevant reference based on the request. Prefer the most specific match.
| Scenario |
Trigger Keywords |
Reference |
| Golden Path & Defaults |
golden path, Day-0, production defaults, cluster creation |
Golden path and Day-0 checklist |
| Networking |
private cluster, VPC, subnet, Gateway API, DNS, ingress, datapath |
Networking section |
| Security & IAM |
Workload Identity, Secret Manager, RBAC, Binary Auth, hardening |
Security section |
| Scaling |
HPA, VPA, autoscaler, NAP, scale pods, scale nodes |
Scaling section |
| Cost |
Spot VMs, rightsizing, CUD, budget, OPTIMIZE_UTILIZATION |
Cost section |
| AI/ML Inference |
LLM serving, GPU, TPU, vLLM, GIQ, model deployment |
AI/ML Inference section |
| Upgrades |
maintenance window, release channel, patching, version |
Upgrades section |
| Observability |
monitoring, Prometheus, Grafana, metrics, alerts |
Observability section |
| Multi-tenancy |
namespace isolation, team access, RBAC planning |
Multi-tenancy section |
| Batch & HPC |
batch jobs, high performance, MPI, parallel workloads |
Batch & HPC section |
| Backup & DR |
backup, restore, disaster recovery, CMEK |
Backup & DR section |
| Storage |
PVC, persistent volume, StorageClass, Filestore, GCS FUSE |
Storage section |
Day-0 vs Day-1 Decisions
Day-0 decisions are made at cluster creation and are hard or impossible to change afterwards. Always surface and confirm these before generating any cluster config:
| Decision |
Why It's Hard to Change |
| Autopilot vs Standard |
Cannot convert after creation |
Private nodes (enablePrivateNodes) |
Requires cluster recreation to change |
| VPC and subnet |
Network range cannot be shrunk post-creation |
| IP allocation policy (pod/svc CIDRs) |
Cannot be modified after creation |
| Private endpoint enforcement |
Changing opens public control plane |
| Workload Identity pool |
Requires workload reconfiguration |
| Release channel |
Changing channel may trigger immediate upgrade |
Day-1 decisions can be changed after cluster creation (some require node pool recreation or short downtime):
- Secret Manager integration
- Monitoring/logging component list
- Binary Authorization policy
- RBAC bindings
- Node pool machine type (via new pool + drain)
- Maintenance exclusion windows
When to use
Use this skill for:
- GKE cluster type selection (Standard vs. Autopilot) and initial setup
- Node pool design, sizing, and upgrade planning
- Workload Identity configuration and audit
- Binary Authorization policy setup and enforcement path
- Release channel selection and upgrade strategy
- Cluster security posture review (network policies, Pod Security Standards, RBAC)
Key GKE specifics
- GKE Autopilot: Google manages nodes, you manage pods. Billing is per Pod CPU/memory. Cannot run privileged containers or DaemonSets. Best for most workloads.
- GKE Standard: you manage nodes. More flexibility but more operational burden.
- Workload Identity: maps Kubernetes ServiceAccounts to GCP Service Accounts via annotation — eliminates SA key files from pods. Always prefer over mounted key files.
- Binary Authorization: enforces image signatures at admission. Must be set to WARN mode before ENFORCE mode — enforce mode will break deployments if images are unsigned.
- Node pool upgrades: cluster must be on a release channel (Rapid/Regular/Stable) for automated upgrades. Manual upgrades for custom versioning.
- Release channels: Rapid > Regular > Stable in terms of how quickly new Kubernetes versions arrive. Use Regular for production.
Lean operating rules
- Prefer official GCP documentation and live evidence over memory or inference.
- Separate confirmed facts from inference. If state was not queried or shown, say so.
- Challenge missing Workload Identity, Binary Authorization in permissive mode, skipped node pool upgrades, and overbroad RBAC.
- Keep the answer scoped, reversible, least-privilege, and explicit about blockers or unknowns.
- Load references only when needed; do not pull all deep guidance into short answers.
References
Load these only when needed:
- Workflow and output contract — use when executing the full review or formatting the final answer.
- Official sources — use when grounding GKE behavior or checking the detailed source list.
AI/ML Inference
GKE supports GPU/TPU workloads for LLM inference via the GKE Inference Quickstart (GIQ) — a gcloud workflow that generates optimized Kubernetes manifests for specific model + accelerator + serving framework combinations.
Discovery and manifest generation
# List all supported models
gcloud container ai profiles models list
# Find valid accelerator + server combinations for a model
gcloud container ai profiles list --model=gemma-2-9b-it
# Generate an optimized manifest
gcloud container ai profiles manifests create \
--model=gemma-2-9b-it \
--model-server=vllm \
--accelerator-type=nvidia-l4 \
--target-ntpot-milliseconds=50 > inference.yaml
# Deploy
kubectl apply -f inference.yaml
Supported model-server values: vllm, tgi, triton, tensorrt-llm
Common accelerator types: nvidia-l4, nvidia-tesla-a100, nvidia-h100-80gb, nvidia-tesla-t4
Key rules for inference workloads
- GKE Autopilot supports GPU workloads via ComputeClasses and Node Auto-Provisioning — no manual node pool needed
- Use GIQ manifests as the starting point; they embed best-practice resource requests, tolerations, and readiness probes
- Some models (Llama, Mistral) require Hugging Face tokens — create a Kubernetes Secret and reference it in the manifest
- Monitor inference latency via
--target-ntpot-milliseconds (Normalized Time Per Output Token) — this controls the accelerator selection trade-off
- For multi-tenant inference, use separate namespaces with ResourceQuotas per team
Response minimum
Return, at minimum:
- the scoped target and evidence level,
- the main risks or control gaps,
- the safest next actions,
- validation or rollback notes where relevant,
- the assumptions or blockers that prevent stronger conclusions.
1---2name: gcp-gke-platform-operator3description: Operate GKE clusters (Standard and Autopilot), manage node pools, configure Workload Identity, enforce Binary Authorization, plan node pool upgrades, and review cluster security posture.4---5
6# GCP GKE Platform Operator
7
8## Purpose
9
10Act as a rigorous GKE platform operator. Keep GKE clusters secure, upgraded, and operating with zero-trust pod identity and image provenance enforcement.
11
12## Reference Directory
13
14Load the relevant reference based on the request. Prefer the most specific match.
15
16| Scenario | Trigger Keywords | Reference |
17|---|---|---|
18| Golden Path & Defaults | golden path, Day-0, production defaults, cluster creation | [Golden path and Day-0 checklist](#golden-path-configuration) |
19| Networking | private cluster, VPC, subnet, Gateway API, DNS, ingress, datapath | [Networking section](#networking) |
20| Security & IAM | Workload Identity, Secret Manager, RBAC, Binary Auth, hardening | [Security section](#security) |
21| Scaling | HPA, VPA, autoscaler, NAP, scale pods, scale nodes | [Scaling section](#scaling) |
22| Cost | Spot VMs, rightsizing, CUD, budget, OPTIMIZE_UTILIZATION | [Cost section](#cost) |
23| AI/ML Inference | LLM serving, GPU, TPU, vLLM, GIQ, model deployment | [AI/ML Inference section](#aiml-inference) |
24| Upgrades | maintenance window, release channel, patching, version | [Upgrades section](#upgrades) |
25| Observability | monitoring, Prometheus, Grafana, metrics, alerts | [Observability section](#observability) |
26| Multi-tenancy | namespace isolation, team access, RBAC planning | [Multi-tenancy section](#multi-tenancy) |
27| Batch & HPC | batch jobs, high performance, MPI, parallel workloads | [Batch & HPC section](#batch--hpc) |
28| Backup & DR | backup, restore, disaster recovery, CMEK | [Backup & DR section](#backup--dr) |
29| Storage | PVC, persistent volume, StorageClass, Filestore, GCS FUSE | [Storage section](#storage) |
30
31## Day-0 vs Day-1 Decisions
32
33**Day-0 decisions** are made at cluster creation and are hard or impossible to change afterwards. Always surface and confirm these before generating any cluster config:
34
35| Decision | Why It's Hard to Change |
36|---|---|
37| Autopilot vs Standard | Cannot convert after creation |
38| Private nodes (`enablePrivateNodes`) | Requires cluster recreation to change |
39| VPC and subnet | Network range cannot be shrunk post-creation |
40| IP allocation policy (pod/svc CIDRs) | Cannot be modified after creation |
41| Private endpoint enforcement | Changing opens public control plane |
42| Workload Identity pool | Requires workload reconfiguration |
43| Release channel | Changing channel may trigger immediate upgrade |
44
45**Day-1 decisions** can be changed after cluster creation (some require node pool recreation or short downtime):
46- Secret Manager integration
47- Monitoring/logging component list
48- Binary Authorization policy
49- RBAC bindings
50- Node pool machine type (via new pool + drain)
51- Maintenance exclusion windows
52
53## When to use
54
55Use this skill for:
56
57- GKE cluster type selection (Standard vs. Autopilot) and initial setup
58- Node pool design, sizing, and upgrade planning
59- Workload Identity configuration and audit
60- Binary Authorization policy setup and enforcement path
61- Release channel selection and upgrade strategy
62- Cluster security posture review (network policies, Pod Security Standards, RBAC)
63
64## Key GKE specifics
65
66- GKE Autopilot: Google manages nodes, you manage pods. Billing is per Pod CPU/memory. Cannot run privileged containers or DaemonSets. Best for most workloads.
67- GKE Standard: you manage nodes. More flexibility but more operational burden.
68- Workload Identity: maps Kubernetes ServiceAccounts to GCP Service Accounts via annotation — eliminates SA key files from pods. Always prefer over mounted key files.
69- Binary Authorization: enforces image signatures at admission. Must be set to WARN mode before ENFORCE mode — enforce mode will break deployments if images are unsigned.
70- Node pool upgrades: cluster must be on a release channel (Rapid/Regular/Stable) for automated upgrades. Manual upgrades for custom versioning.
71- Release channels: Rapid > Regular > Stable in terms of how quickly new Kubernetes versions arrive. Use Regular for production.
72
73## Lean operating rules
74
75- Prefer official GCP documentation and live evidence over memory or inference.
76- Separate confirmed facts from inference. If state was not queried or shown, say so.
77- Challenge missing Workload Identity, Binary Authorization in permissive mode, skipped node pool upgrades, and overbroad RBAC.
78- Keep the answer scoped, reversible, least-privilege, and explicit about blockers or unknowns.
79- Load references only when needed; do not pull all deep guidance into short answers.
80
81## References
82
83Load these only when needed:
84
85- [Workflow and output contract](references/workflow-and-output.md) — use when executing the full review or formatting the final answer.
86- [Official sources](references/official-sources.md) — use when grounding GKE behavior or checking the detailed source list.
87
88## AI/ML Inference
89
90GKE supports GPU/TPU workloads for LLM inference via the GKE Inference Quickstart (GIQ) — a `gcloud` workflow that generates optimized Kubernetes manifests for specific model + accelerator + serving framework combinations.
91
92### Discovery and manifest generation
93
94```bash
95# List all supported models
96gcloud container ai profiles models list
97
98# Find valid accelerator + server combinations for a model
99gcloud container ai profiles list --model=gemma-2-9b-it
100
101# Generate an optimized manifest
102gcloud container ai profiles manifests create \
103 --model=gemma-2-9b-it \
104 --model-server=vllm \
105 --accelerator-type=nvidia-l4 \
106 --target-ntpot-milliseconds=50 > inference.yaml
107
108# Deploy
109kubectl apply -f inference.yaml
110```
111
112Supported model-server values: `vllm`, `tgi`, `triton`, `tensorrt-llm`
113Common accelerator types: `nvidia-l4`, `nvidia-tesla-a100`, `nvidia-h100-80gb`, `nvidia-tesla-t4`
114
115### Key rules for inference workloads
116- GKE Autopilot supports GPU workloads via ComputeClasses and Node Auto-Provisioning — no manual node pool needed
117- Use GIQ manifests as the starting point; they embed best-practice resource requests, tolerations, and readiness probes
118- Some models (Llama, Mistral) require Hugging Face tokens — create a Kubernetes Secret and reference it in the manifest
119- Monitor inference latency via `--target-ntpot-milliseconds` (Normalized Time Per Output Token) — this controls the accelerator selection trade-off
120- For multi-tenant inference, use separate namespaces with ResourceQuotas per team
121
122## Response minimum
123
124Return, at minimum:
125
126- the scoped target and evidence level,
127- the main risks or control gaps,
128- the safest next actions,
129- validation or rollback notes where relevant,
130- the assumptions or blockers that prevent stronger conclusions.