Piattaforma e affidabilità

Kubernetes e infrastructure as code

Kubernetes e Terraform sono strumenti. La loro complessità si giustifica solo quando ti serve davvero quello che fanno. Li impostiamo, li rimettiamo in ordine, oppure ti diciamo che un servizio gestito farebbe meglio al caso tuo, e perché.

Cosa facciamo

Capiamo se Kubernetes è lo strumento giusto. Guardiamo i tuoi carichi, il tuo team e il tuo budget. Se basta un servizio gestito o qualche VM, te lo diciamo e ti aiutiamo ad arrivarci. Se Kubernetes ha senso, lo impostiamo come si deve. Vuol dire control plane gestito, node pool sensati, network policy, workload identity, limiti di risorse e un percorso di upgrade chiaro.

Rendiamo gli upgrade noiosi. Tanti cluster girano su versioni vecchie perché nessuno vuole toccarli. Scriviamo una strategia di upgrade, la proviamo su un cluster di staging, eliminiamo le API deprecate e ti portiamo su un ritmo regolare. Da lì in poi un upgrade è un’attività normale. Ha una checklist, un piano di rollback e un responsabile, e non richiede un weekend.

Scriviamo Terraform che si riesce a mantenere. Progettiamo e rivediamo moduli che restano leggibili invece che ingegnosi. Input che hanno senso, niente magia nascosta e test che girano in CI. Dividiamo lo state perché i plan restino veloci e un errore in un’area non rompa le altre. Rivediamo anche il codice esistente e ti diciamo cosa tenere. Non tutti i vecchi moduli vanno riscritti, e un refactoring totale di Terraform che funziona è un rischio a sé.

Chiudiamo la distanza tra codice e realtà. Il drift nasce quando qualcuno sistema la produzione a mano e non aggiorna mai il repository. Lo troviamo, lo riportiamo nel codice e impostiamo un rilevamento che lo faccia emergere presto. Dove la riconciliazione continua ripaga, aggiungiamo GitOps con Argo CD o Flux, così il cluster corrisponde sempre a git. Se bastano un plan notturno e un flusso a pull request, ci fermiamo lì.

Come lavoriamo di solito

Di solito si parte da una breve revisione dei cluster e del codice dell’infrastruttura. Lanciamo i plan, leggiamo i moduli, controlliamo le versioni e cerchiamo il drift. Entro due settimane ricevi un report scritto con cosa sistemare, in ordine di rischio.

Poi guidiamo il tuo team negli interventi oppure facciamo insieme il primo giro, di solito in quattro-otto settimane. Ce ne andiamo quando i tuoi ingegneri sanno fare un upgrade o modificare un modulo senza di noi.

Fa per te se

  • Il tuo terraform plan è così lento che la gente lo salta.
  • I cluster non corrispondono più a quello che c’è nel repository.
  • Gli upgrade di Kubernetes fanno paura, quindi continui a rimandarli.
  • Stai per adottare Kubernetes e vuoi prima un secondo parere.

Domande frequenti

Ci serve Kubernetes?
A molti team no. Se hai pochi servizi con traffico stabile, una piattaforma gestita come Cloud Run, App Engine, ECS o delle semplici VM costa meno da gestire ed è più facile trovare chi la sa usare. Kubernetes comincia a ripagare quando hai molti servizi, più team e un bisogno reale di scheduling, isolamento e del suo ecosistema.
GKE, EKS o Kubernetes self-managed?
Usa un control plane gestito, a meno di avere un ottimo motivo per non farlo. GKE ed EKS si occupano del control plane e di buona parte degli upgrade, che è proprio dove i cluster self-managed mangiano più tempo. Su GKE, Autopilot elimina anche la gestione dei nodi, in cambio di un po’ di flessibilità.
Come strutturare lo state di Terraform?
Dividi lo state per ambiente e per frequenza di modifica, così un plan tocca solo quello che serve. Tienilo in un backend remoto con locking, come un bucket GCS o S3. Evita un unico state gigante, ma evita anche di spezzarlo così tanto che ogni modifica ne coinvolge dieci.
Argo CD o Flux?
Fanno entrambi bene GitOps. Argo CD ha un’ottima interfaccia web ed è adatto ai team che vogliono vedere lo stato di sincronizzazione a colpo d’occhio. Flux è più leggero e si sposa bene con un flusso tutto basato su git e riga di comando. La domanda più importante è se ti serve davvero una riconciliazione continua, e a quella rispondiamo per prima.

Raccontaci cosa non funziona.

Bastano poche righe. Rispondiamo entro un giorno lavorativo e la prima call è gratuita.