Il nodo radice per la gestione delle risorse in Google Cloud è l'organizzazione. L'organizzazione Google Cloud offre una gerarchia delle risorse che fornisce una struttura di proprietà per le risorse e i punti di collegamento per i criteri dell'organizzazione e i controlli dell'accesso. La gerarchia delle risorse è composta da cartelle, progetti e risorse e definisce la struttura e l'utilizzo dei servizi Google Cloud all'interno di un'organizzazione.
Le risorse a un livello inferiore nella gerarchia ereditano criteri come i criteri di autorizzazione IAM e i criteri dell'organizzazione. Tutte le autorizzazioni di accesso sono negate per impostazione predefinita, finché non applichi i criteri di autorizzazione direttamente a una risorsa o la risorsa eredita i criteri di autorizzazione da un livello superiore nella gerarchia delle risorse.
Il seguente diagramma mostra le cartelle e i progetti di cui viene eseguito il deployment del progetto base.
Le seguenti sezioni descrivono le cartelle e i progetti nel diagramma.
Cartelle
Il progetto utilizza cartelle per raggruppare i progetti in base al loro ambiente. Questo raggruppamento logico viene utilizzato per applicare configurazioni come criteri di autorizzazione e criteri dell'organizzazione a livello di cartella, dopodiché tutte le risorse al suo interno ereditano i criteri. La seguente tabella descrive le cartelle che fanno parte del progetto base.
Cartella | Descrizione |
---|---|
bootstrap |
Contiene i progetti usati per il deployment dei componenti di base. |
common |
Contiene progetti con risorse condivise da tutti gli ambienti. |
production |
Contiene progetti con risorse di produzione. |
nonproduction |
Contiene una copia dell'ambiente di produzione per consentirti di testare i carichi di lavoro prima di promuoverli in produzione. |
development |
Contiene le risorse cloud utilizzate per lo sviluppo. |
networking |
Contiene le risorse di networking condivise da tutti gli ambienti. |
Progetti
Il progetto utilizza progetti per raggruppare le singole risorse in base alla loro funzionalità e ai limiti previsti per controllo dell'accesso#39;accesso. La seguente tabella descrive i progetti inclusi nel progetto.
Cartella | Progetto | Descrizione |
---|---|---|
bootstrap |
prj-b-cicd |
Contiene la pipeline di deployment utilizzata per creare i componenti di base dell'organizzazione. Per ulteriori informazioni, consulta la metodologia di deployment. |
prj-b-seed |
Contiene lo stato di Terraform dell'infrastruttura e l'account di servizio Terraform necessario per eseguire la pipeline. Per ulteriori informazioni, consulta la metodologia di deployment. | |
common |
prj-c-secrets |
Contiene secret a livello di organizzazione. Per maggiori informazioni, consulta la pagina relativa all'archiviazione delle credenziali dell'applicazione con Secret Manager. |
prj-c-logging |
Contiene le origini log aggregate per gli audit log. Per ulteriori informazioni, consulta Logging centralizzato per la sicurezza e l'audit. | |
prj-c-scc |
Contiene risorse per configurare gli avvisi di Security Command Center e altri tipi di monitoraggio della sicurezza personalizzati. Per saperne di più, consulta la pagina relativa al monitoraggio delle minacce con Security Command Center. | |
prj-c-billing-logs |
Contiene un set di dati BigQuery con le esportazioni della fatturazione dell'organizzazione. Per ulteriori informazioni, consulta la pagina relativa alla allocazione dei costi tra i centri di costo interni. | |
prj-c-infra-pipeline |
Contiene una pipeline di infrastruttura per il deployment di risorse come VM e database da utilizzare per i carichi di lavoro. Per ulteriori informazioni, consulta la sezione Livelli pipeline. | |
prj-c-kms |
Contiene chiavi di crittografia a livello di organizzazione. Per ulteriori informazioni, consulta Gestire le chiavi di crittografia. | |
networking |
prj-net-{env}-shared-base |
Contiene il progetto host per una rete VPC condiviso per i carichi di lavoro che non richiedono i Controlli di servizio VPC. Per ulteriori informazioni, consulta la sezione topologia di rete. |
prj-net-{env}-shared-restricted |
Contiene il progetto host per una rete VPC condiviso per i carichi di lavoro che richiedono i Controlli di servizio VPC. Per ulteriori informazioni, consulta la pagina relativa alla topologia di rete. | |
prj-net-interconnect |
Contiene le connessioni Cloud Interconnect che forniscono la connettività tra il tuo ambiente on-premise e Google Cloud. Per ulteriori informazioni, consulta la sezione Connettività ibrida. | |
prj-net-dns-hub |
Contiene risorse per un punto di comunicazione centrale tra il sistema DNS on-premise e Cloud DNS. Per ulteriori informazioni, consulta la pagina relativa alla configurazione del DNS centralizzato. | |
cartelle di ambiente (production,
non-production e development ) |
prj-{env}-monitoring |
Contiene un progetto di definizione dell'ambito per aggregare le metriche dei progetti in tale ambiente. Per ulteriori informazioni, consulta la sezione sugli avvisi per le metriche e le metriche delle prestazioni basate su log |
prj-{env}-secrets |
Contiene secret a livello di cartella. Per maggiori informazioni, vedi Archiviare e controllare le credenziali dell'applicazione con Secret Manager. | |
prj-{env}-kms |
Contiene chiavi di crittografia a livello di cartella. Per ulteriori informazioni, consulta Gestire le chiavi di crittografia. | |
progetti di applicazione | Contiene vari progetti in cui puoi creare risorse per le applicazioni. Per ulteriori informazioni, consulta Pattern di deployment dei progetti e livelli della pipeline. |
Governance per la proprietà delle risorse
Ti consigliamo di applicare etichette coerenti ai progetti per facilitare la governance e l'allocazione dei costi. La tabella seguente descrive le etichette di progetto aggiunte a ciascun progetto per la governance nel progetto base.
Etichetta | Descrizione |
---|---|
application |
Il nome leggibile dell'applicazione o del carico di lavoro associato al progetto. |
businesscode |
Un breve codice che descrive l'unità aziendale proprietaria del progetto. Il codice shared viene usato per i progetti comuni
che non sono esplicitamente associati a una business unit. |
billingcode |
Un codice utilizzato per fornire informazioni sullo storno di addebito. |
primarycontact |
Il nome utente del contatto principale responsabile del progetto. Poiché le etichette di progetto non possono includere caratteri speciali come la e commerciale (@), viene impostata sul nome utente senza il suffisso @example.com. |
secondarycontact |
Il nome utente del contatto secondario secondario responsabile del progetto. Poiché le etichette di progetto non possono includere caratteri speciali come @, imposta solo il nome utente senza il suffisso @example.com. |
environment |
Un valore che identifica il tipo di ambiente, come
bootstrap , common , production ,
non-production,development o network. |
envcode |
Un valore che identifica il tipo di ambiente, abbreviato in b , c , p , n , d o net . |
vpc |
L'ID della rete VPC che questo progetto dovrebbe utilizzare. |
Occasionalmente Google potrebbe inviare notifiche importanti, come sospensioni dell'account o aggiornamenti ai termini dei prodotti. Il progetto utilizza i contatti necessari per inviare queste notifiche ai gruppi che configuri durante il deployment. I contatti necessari sono configurati a livello di nodo organizzazione ed ereditati da tutti i progetti nell'organizzazione. Ti consigliamo di esaminare questi gruppi e assicurarti che le email siano monitorate in modo affidabile.
Contatti necessari viene utilizzato per uno scopo diverso rispetto ai campi primarycontact
e secondarycontact
configurati nelle etichette del progetto. I contatti nelle etichette di progetto sono destinati alla governance interna. Ad esempio, se identifichi risorse non conformi in un progetto dei carichi di lavoro e devi contattare i proprietari, puoi utilizzare il campo primarycontact
per trovare la persona o il team responsabile del carico di lavoro.
Passaggi successivi
- Scopri di più sul networking (prossimo documento di questa serie).