Google Cloud: la Gerarchia delle Risorse
Source: Dev.to
TL;DR
- Google Cloud è organizzato in una gerarchia a 4 livelli: Organizzazione → Cartelle → Progetti → Risorse.
- Le policy sono ereditate: le regole impostate a un livello superiore si applicano automaticamente a tutti i livelli inferiori.
- Un progetto ha tre identificatori distinti: Nome (descrittivo e modificabile), ID Progetto (unico, immutabile, usato da API/CLI) e Numero Progetto (identificatore numerico interno).
Il Nodo Organizzazione: Dove Inizia il Controllo
Il nodo Organizzazione è la radice della gerarchia e consente l’uso delle Cartelle, indispensabili in ambienti aziendali. Qui si definiscono le regole che valgono per tutta l’azienda.
Ruoli chiave a livello di Organizzazione
roles/resourcemanager.organizationAdmin– Organization Policy Administrator: gestisce le policy di sicurezza a livello globale.roles/resourcemanager.projectCreator– Project Creator: autorizza la creazione di nuovi progetti.
Nota: questi ruoli hanno un impatto su tutto l’ambiente cloud e vanno assegnati con molta attenzione.
Cartelle (Folders)
Le Cartelle riflettono la struttura dell’azienda (team, dipartimenti, linee di business, ambienti) e sono fondamentali per mantenere ordine nel tempo.
Vantaggi principali
- Delegare l’amministrazione
- Un team può gestire i propri progetti senza accedere al resto dell’organizzazione.
- Applicare policy coerenti
- Le cartelle sono il punto ideale per definire regole comuni (sicurezza, accesso, limiti), evitando configurazioni manuali progetto per progetto.
Progetti
I progetti sono il centro della vita operativa in Google Cloud: ogni azione (creare una VM, abilitare un’API, assegnare permessi) avviene all’interno di un progetto.
Concetti fondamentali
- I servizi Google Cloud vengono abilitati a livello di progetto.
- La fatturazione è associata ai progetti.
- Ogni risorsa appartiene a un solo progetto (non esistono risorse “orfane”).
- I progetti possono essere gestiti programmaticamente tramite la Resource Manager API.
Identificatori di un progetto
| Identificatore | Descrizione | Caratteristiche |
|---|---|---|
| Nome Progetto | Etichetta descrittiva per gli esseri umani (es. Sito Web E‑commerce) | Modificabile, non unico |
| ID Progetto | Identificatore unico a livello globale | Immutabile, usato da API, CLI e automazioni |
| Numero Progetto | Identificatore numerico generato da Google | Usato internamente, può comparire in configurazioni avanzate (es. IAM) |
Risorse
Le risorse (VM, bucket, database, ecc.) appartengono a un singolo progetto e ereditano le policy definite a livello di Organizzazione, Cartella o Progetto.
Ereditarietà delle policy
- Una policy a livello di Organizzazione si applica a tutto l’albero.
- Una policy a livello di Cartella si applica a tutti i progetti contenuti.
- Una policy a livello di Progetto si applica a tutte le sue risorse.
Questo meccanismo riduce le configurazioni manuali, diminuisce gli errori e aumenta il controllo.
Perché la gerarchia è importante
- Coerenza: applicare policy in modo uniforme su tutta l’infrastruttura.
- Delegazione: assegnare responsabilità a team specifici senza perdere il controllo centrale.
- Sicurezza e costi: mantenere sotto controllo gli accessi e le spese grazie a regole ereditate.
Imparare presto questo concetto ti farà risparmiare molti problemi in futuro.
Buon lavoro sul cloud! 💪