Google Kubernetes Engine
Deploy managed Kubernetes clusters on GCP.
Create Cluster
bash
gcloud container clusters create my-cluster \
--num-nodes=3 \
--machine-type=e2-medium \
--zone=us-central1-a \
--enable-autoscaling \
--min-nodes=1 \
--max-nodes=5 \
--workload-pool=${PROJECT_ID}.svc.id.goog
# Get credentials
gcloud container clusters get-credentials my-cluster --zone=us-central1-a
Node Pools
bash
gcloud container node-pools create gpu-pool \ --cluster=my-cluster \ --zone=us-central1-a \ --machine-type=n1-standard-4 \ --accelerator=type=nvidia-tesla-k80,count=1 \ --num-nodes=1
Workload Identity
bash
gcloud iam service-accounts add-iam-policy-binding \
--role=roles/iam.workloadIdentityUser \
--member="serviceAccount:${PROJECT_ID}.svc.id.goog[NAMESPACE/KSA_NAME]" \
GSA_NAME@${PROJECT_ID}.iam.gserviceaccount.com
Best Practices
- •Use Workload Identity
- •Enable VPC-native clusters
- •Implement node auto-provisioning
- •Use regional clusters for HA