Vocabolario GKE / Kubernetes
Guida rapida ai termini piΓΉ comuni in Google Kubernetes Engine e Kubernetes.
ποΈ Infrastrutturaβ
| Termine | Cos'Γ¨ | Esempio |
|---|---|---|
| Cluster | L'intero ambiente Kubernetes gestito | visla-prod-cluster |
| Node | Una macchina (VM) che esegue i pod | gk3-visla-prod-cluster-pool-1-... |
| Node Pool | Gruppo di nodi con stesse caratteristiche | pool-1 (e2-standard-8) |
| Namespace | Cartella logica per organizzare risorse | default, monitoring |
| Control Plane | Cervello del cluster (API server, scheduler) | Gestito da Google |
π¦ Workload (Applicazioni)β
| Termine | Cos'Γ¨ | Esempio |
|---|---|---|
| Pod | UnitΓ minima - uno o piΓΉ container insieme | auth-578d6f647d-n7lrw |
| Container | Singola app in esecuzione dentro un pod | alloy, cloud-sql-proxy |
| Deployment | Gestisce repliche di pod (stateless) | auth, billing |
| StatefulSet | Come Deployment ma per app con stato | decoder-0, redis-master-0 |
| DaemonSet | Un pod su ogni nodo | alloy-logs |
| ReplicaSet | Mantiene N copie di un pod | Creato dal Deployment |
| Job | Esegue un task una volta e termina | Migration script |
| CronJob | Job schedulato periodicamente | Backup giornaliero |
π Networkingβ
| Termine | Cos'Γ¨ | Uso |
|---|---|---|
| Service | Espone i pod con un indirizzo stabile | auth-service |
| ClusterIP | IP interno al cluster | Comunicazione tra pod |
| LoadBalancer | IP pubblico gestito da Google | Esporre all'esterno |
| NodePort | Porta fissa su ogni nodo | Meno usato in Autopilot |
| Ingress | Routing HTTP/HTTPS | Traefik |
| IngressRoute | Custom resource di Traefik | Rotte personalizzate |
πΎ Storage e Configurazioneβ
| Termine | Cos'Γ¨ | Esempio |
|---|---|---|
| ConfigMap | Configurazioni in chiaro | Config Alloy |
| Secret | Dati sensibili (password, token) | visla-db-observability |
| PersistentVolume (PV) | Disco persistente | Volume per Redis |
| PersistentVolumeClaim (PVC) | Richiesta di storage | Claim per PV |
| StorageClass | Tipo di storage (SSD, HDD) | standard, premium-rwo |
π Risorseβ
| Termine | Cos'Γ¨ | Esempio |
|---|---|---|
| vCPU | CPU virtuale | 1 vCPU = 1 core |
| millicores (m) | Millesimi di CPU | 50m = 5% CPU |
| Memory (Mi/Gi) | RAM | 128Mi = 128 MB |
| Requests | Risorse minime garantite | Pod riceve almeno questo |
| Limits | Risorse massime | Pod viene terminato se supera |
π§ Strumentiβ
| Termine | Cos'Γ¨ |
|---|---|
| kubectl | CLI per gestire Kubernetes |
| Helm | Package manager per K8s |
| Helm Chart | Pacchetto di risorse K8s |
| Helm Values | File YAML di configurazione |
| Kustomize | Tool per customizzare YAML |
ποΈ GKE Specificoβ
| Termine | Cos'Γ¨ |
|---|---|
| Autopilot | GKE gestisce i nodi (paghi solo pod) |
| Standard | Tu gestisci i nodi (paghi per nodo) |
| Workload Identity | Pod usano IAM Google Cloud |
| GKE Enterprise | Versione avanzata con piΓΉ feature |
| Anthos | Piattaforma multi-cloud Google |
π Comandi Utiliβ
Visualizzare risorseβ
kubectl get pods -n default # Pod nel namespace default
kubectl get pods -A # Tutti i pod
kubectl get nodes # Lista nodi
kubectl get namespaces # Lista namespace
kubectl get services # Lista servizi
Dettagli e debugβ
kubectl describe pod <nome> # Dettagli pod
kubectl logs <pod> # Log del pod
kubectl logs <pod> -c <container> # Log di un container specifico
kubectl exec -it <pod> -- /bin/sh # Shell nel pod
Risorseβ
kubectl top pods # Uso CPU/Memory pod
kubectl top nodes # Uso CPU/Memory nodi
Helmβ
helm list -n monitoring # Chart installati
helm upgrade <release> <chart> -f values.yaml # Aggiorna
helm rollback <release> <revision> # Rollback
π Ciclo di Vita di un Deploymentβ
Deployment β crea β ReplicaSet β crea β Pod(s) β contiene β Container(s)
β
Rollout (aggiornamento graduale)
β
Nuovo ReplicaSet β nuovi Pod
β
Vecchi Pod terminati progressivamente
π° Costi in Autopilotβ
In GKE Autopilot paghi solo per:
- vCPU richieste (requests) dei pod utente
- Memory richiesta (requests) dei pod utente
Non paghi per:
- Pod di sistema (
kube-system,gke-*) - Control plane (incluso nel prezzo)
- Nodi (gestiti automaticamente)