Best practice per organizzazioni aziendali

Questa guida introduce le best practice per aiutare i clienti aziendali come te nel tuo percorso verso Google Cloud. La guida non è un elenco completo di consigli. Il suo obiettivo è aiutare gli architetti aziendali e le parti interessate nella tecnologia a comprendere l'ambito delle attività e a pianificare di conseguenza. Ogni sezione fornisce azioni chiave e include link per ulteriori approfondimenti.

Prima di leggere questa guida, ti consigliamo di consultare la panoramica sulla piattaforma per comprendere l'intero panorama di Google Cloud.

Provalo

Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $ di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.

Inizia gratuitamente

Configurazione dell'organizzazione

Definisci la gerarchia delle risorse

Le risorse di Google Cloud sono strutturate in modo gerarchico. Questa gerarchia ti consente di mappare la struttura operativa della tua azienda a Google Cloud e di gestire il controllo dell'accesso e le autorizzazioni per i gruppi di risorse correlate. Il seguente diagramma mostra una gerarchia di esempio.

Struttura ad albero capovolta con risorse organizzate in modo gerarchico

Il nodo di primo livello della gerarchia è la risorsa dell'organizzazione, che rappresenta un'organizzazione (ad esempio una società). La risorsa Organizzazione fornisce visibilità e controllo centrali su tutte le risorse più in basso nella gerarchia.

Successivamente, nella gerarchia ci sono le cartelle. Puoi utilizzare le cartelle per isolare i requisiti per i diversi reparti e team dell'organizzazione principale. Analogamente, puoi utilizzare le cartelle per separare le risorse di produzione dalle risorse di sviluppo.

Alla fine della gerarchia ci sono i progetti. I progetti contengono le risorse di calcolo, archiviazione e networking che costituiscono le tue app. I progetti sono discussi più nel dettaglio più avanti in questo documento.

La struttura che definisci è flessibile e ti consente di adattarsi ai requisiti in continua evoluzione. Se hai appena iniziato il tuo percorso con Google Cloud, adotta la struttura più semplice che soddisfi i tuoi requisiti iniziali. Per informazioni dettagliate, consulta la panoramica di Resource Manager.

Crea un nodo organizzazione

Molte delle funzionalità supportate da Google Cloud richiedono un nodo organizzazione. Puoi creare un nodo Organizzazione che verrà mappato al tuo dominio Internet aziendale, ad esempio example.com, tramite Cloud Identity. Puoi eseguire la migrazione dei progetti e degli account di fatturazione Google Cloud esistenti nel nodo Organizzazione. Per maggiori dettagli, consulta l'articolo su come creare e gestire le organizzazioni.

Se hai bisogno di assistenza per la configurazione, consulta la Configurazione guidata dell'organizzazione.

Specifica la struttura del tuo progetto

Per utilizzare Google Cloud è necessario un progetto. Tutte le risorse Google Cloud, come le macchine virtuali Compute Engine e i bucket Cloud Storage, appartengono a un singolo progetto. Per ulteriori informazioni sui progetti, consulta la panoramica della piattaforma.

Sei tu a controllare l'ambito dei tuoi progetti. Un singolo progetto potrebbe contenere più app distinte o, al contrario, una singola app potrebbe includere più progetti. I progetti possono contenere risorse distribuite in più aree geografiche e aree geografiche.

È consigliabile avere un progetto per applicazione per ambiente. Ad esempio, se hai due applicazioni, "app1" e "app2", ognuno con un ambiente di sviluppo e produzione, avrai quattro progetti: app1-dev, app1-prod, app2-dev, app2-prod. In questo modo gli ambienti vengono isolati tra loro, pertanto le modifiche apportate al progetto di sviluppo non influiscono in modo accidentale sulla produzione e offrono un controllo migliore dell'accesso, dal momento che puoi (ad esempio) concedere a tutti gli sviluppatori l'accesso ai progetti di sviluppo, ma limitare l'accesso alla produzione alla pipeline CI/CD.

La struttura ideale del progetto dipende dai requisiti individuali e potrebbe evolversi nel tempo. Quando progetti la struttura dei progetti, determina se le risorse devono essere fatturate separatamente, quale livello di isolamento è richiesto e come sono organizzati i team che gestiscono le risorse e le app.

Automatizza la creazione dei progetti

Quando automatizza la creazione e la gestione dei tuoi progetti e delle tue risorse Google Cloud, ottieni vantaggi come coerenza, riproducibilità e verificabilità. Considerare la tua configurazione come codice ti consente di applicare la versione e gestire il ciclo di vita della configurazione insieme agli artefatti del software. L'automazione ti consente di supportare best practice come le convenzioni di denominazione e l'etichettatura delle risorse. Man mano che i tuoi requisiti si evolvono, l'automazione semplifica anche il refactoring dei progetti.

Per i progetti Google Cloud, utilizza Terraform o Config Controller. Utilizzando uno strumento automatico, puoi descrivere un set di risorse di Google Cloud che vuoi distribuire in modo coerente insieme. Google fornisce modelli di creazione di progetti di esempio per Terraform e Config Controller. Questi modelli permettono inoltre di impostare le autorizzazioni di controllo dell'accesso tramite IAM, in modo che i tuoi sviluppatori ricevano l'accesso appropriato come parte del processo di creazione del progetto.

Gestione di identità e accessi

Gestisci le tue identità Google

Google Cloud utilizza gli Account Google per l'autenticazione e la gestione degli accessi. Per accedere a Google Cloud, i tuoi sviluppatori e altri membri del team tecnico devono disporre di Account Google. Consigliamo di utilizzare Account Google completamente gestiti associati al nome di dominio aziendale tramite Cloud Identity. In questo modo, i tuoi sviluppatori potranno accedere a Google Cloud utilizzando i propri ID email aziendali e gli amministratori potranno visualizzare e controllare gli account tramite la Console di amministrazione. Le sezioni successive di questo documento descrivono come integrare la tua piattaforma di identità esistente con Cloud Identity.

Cloud Identity è una soluzione Identity-as-a-Service (IDaaS) autonoma. Offre ai clienti Cloud Platform l'accesso a molte delle funzionalità di gestione delle identità fornite da Google Workspace, l'insieme di app per la produttività sul luogo di lavoro di Google Cloud. Cloud Identity non richiede una licenza di Google Workspace. La registrazione a Cloud Identity fornisce un livello di gestione sugli Account Google associati al tuo nome di dominio aziendale. Tramite questo livello di gestione, puoi abilitare o disabilitare l'accesso ai servizi Google, incluso Google Cloud, per i tuoi dipendenti. La registrazione a Cloud Identity crea anche un nodo organizzazione per il tuo dominio, che consente di mappare la struttura e i controlli aziendali alle risorse Google Cloud tramite la gerarchia delle risorse.

Per saperne di più, vedi Soluzioni di Cloud Identity.

Integra il tuo provider di identità con Google Cloud

Se la tua organizzazione utilizza un provider di identità on-premise o di terze parti, sincronizza la tua directory degli utenti con Cloud Identity per consentire agli utenti di accedere a Google Cloud con le proprie credenziali aziendali. In questo modo, la tua piattaforma Identity rimane la fonte di riferimento, mentre Cloud Identity controlla il modo in cui i tuoi dipendenti accedono ai servizi Google.

Eseguire la migrazione degli account non gestiti

Se i membri del tuo dominio hanno utilizzato i loro indirizzi email aziendali per creare un Account Google personale, ad esempio per registrarsi a un servizio Google come YouTube o Blogger, valuta la possibilità di eseguire la migrazione di questi account in modo che possano essere gestiti anche utilizzando Cloud Identity. In alternativa, puoi forzare la modifica di questi account in modo da utilizzare un altro indirizzo email.

Per ulteriori informazioni su come eseguire la migrazione degli account o forzarne la ridenominazione, consulta la sezione Valutare gli account utente esistenti.

Controllo dell'accesso alle risorse

Devi autorizzare i tuoi sviluppatori e il personale IT a consumare risorse Google Cloud. Puoi utilizzare Identity and Access Management (IAM) per concedere l'accesso granulare a risorse Google Cloud specifiche e impedire l'accesso indesiderato ad altre risorse. In particolare, IAM consente di controllare l'accesso definendo chi (identità) ha quale accesso (ruolo) per quale risorsa.

Anziché assegnare direttamente le autorizzazioni, assegna i ruoli. I ruoli IAM sono raccolte di autorizzazioni. Ad esempio, il ruolo Visualizzatore dati BigQuery contiene le autorizzazioni per elencare, leggere ed eseguire query sulle tabelle BigQuery, ma non include le autorizzazioni per creare nuove tabelle o modificare i dati esistenti. IAM fornisce molti ruoli predefiniti per gestire un'ampia gamma di casi d'uso comuni. Consente inoltre di creare ruoli personalizzati.

Utilizza IAM per applicare il principio di sicurezza del privilegio minimo, quindi concedi solo l'accesso necessario alle tue risorse. IAM è un argomento fondamentale per le organizzazioni aziendali. Per ulteriori informazioni sulla gestione di identità e accessi, consulta le seguenti risorse:

Delegare la responsabilità con gruppi e account di servizio

Ti consigliamo di raccogliere gli utenti con le stesse responsabilità in gruppi e di assegnare ruoli IAM ai gruppi anziché ai singoli utenti. Ad esempio, puoi creare un "data scientist" e raggruppare e assegnare ruoli appropriati per consentire l'interazione con BigQuery e Cloud Storage. Quando un nuovo data scientist si unisce al tuo team, puoi semplicemente aggiungerli al gruppo ed erediteranno le autorizzazioni definite. Puoi creare e gestire i gruppi tramite la Console di amministrazione.

Consigliamo ai clienti aziendali di creare i seguenti sei gruppi:

Group Funzione
gcp-organization-admins Gli amministratori dell'organizzazione sono responsabili di organizzare la struttura delle risorse utilizzate dall'organizzazione.
gcp-network-admins Gli amministratori di rete sono responsabili della creazione di reti, subnet, regole firewall e dispositivi di rete come router Cloud, Cloud VPN e bilanciatori del carico cloud.
gcp-security-admins Gli amministratori della sicurezza sono responsabili di stabilire e gestire i criteri di sicurezza per l'intera organizzazione, inclusi la gestione degli accessi e i criteri di vincolo dell'organizzazione.
gcp-billing-admins Gli amministratori della fatturazione sono responsabili della configurazione degli account di fatturazione e del monitoraggio del loro utilizzo.
gcp-devops I professionisti DevOps creano o gestiscono pipeline end-to-end che supportano l'integrazione e la distribuzione continue, il monitoraggio e il provisioning del sistema.
gcp-developers Gli sviluppatori sono responsabili della progettazione, della programmazione e del test delle applicazioni.

Un account di servizio è un tipo speciale di Account Google che rappresenta un'identità o un'app di servizio Google Cloud anziché un singolo utente. Analogamente a quanto accade per gli utenti e i gruppi, agli account di servizio possono essere assegnati ruoli IAM per concedere l'accesso a risorse specifiche. Gli account di servizio vengono autenticati con una chiave anziché con una password. Google gestisce e ruota le chiavi degli account di servizio per il codice in esecuzione su Google Cloud. Ti consigliamo di utilizzare account di servizio per le interazioni server-server.

Definisci un criterio dell'organizzazione

Utilizza il Service Policy Service per ottenere un controllo centralizzato e programmatico sulle risorse cloud della tua organizzazione. IAM si concentra su chi, offrendo la possibilità di autorizzare utenti e gruppi a intraprendere azioni su risorse specifiche in base alle autorizzazioni. Un criterio dell'organizzazione si concentra su cosa, offrendo la possibilità di impostare restrizioni su risorse specifiche per determinare come possono essere configurate e utilizzate. Ad esempio, puoi definire un vincolo per impedire alle istanze di macchine virtuali di avere un indirizzo IP esterno.

Imposta i criteri sulle risorse nella gerarchia delle risorse. Tutti i discendenti di una risorsa ereditano i suoi criteri per impostazione predefinita. Puoi definire un set di base di vincoli che si applicano a tutti gli elementi della gerarchia collegando un criterio al nodo organizzazione di primo livello. Puoi quindi impostare criteri dell'organizzazione personalizzati sui nodi secondari, che sovrascrivono o uniscono con il criterio ereditato.

Networking e sicurezza

Utilizza VPC per definire la tua rete

Utilizza VPC e subnet per mappare la tua rete, per raggruppare e isolare le risorse correlate. Il Virtual Private Cloud (VPC) è una versione virtuale di una rete fisica. Le reti VPC forniscono un networking scalabile e flessibile per le istanze di macchine virtuali (VM) di Compute Engine e per i servizi che sfruttano le istanze di VM, tra cui Google Kubernetes Engine (GKE), Dataproc e Dataflow.

Le reti VPC sono risorse globali; un singolo VPC può includere più aree geografiche senza comunicare tramite la rete Internet pubblica. Ciò significa che puoi connettere e gestire le risorse distribuite in tutto il mondo da un singolo progetto Google Cloud e creare più reti VPC isolate in un singolo progetto.

Le reti VPC non definiscono intervalli di indirizzi IP. Ogni rete VPC è invece costituita da una o più partizioni dette subnetwork. A sua volta, ogni subnet definisce uno o più intervalli di indirizzi IP. Le subnet sono risorse di area geografica; ogni subnet è associata in modo esplicito a un'area geografica singola.

Quando crei un progetto, crei automaticamente anche una rete predefinita, non adatta agli ambienti di produzione. Crea invece reti VPC in modalità personalizzata. Per ulteriori informazioni, consulta le best practice e le architetture di riferimento per la progettazione di VPC.

Per maggiori dettagli su VPC, consulta la panoramica di VPC.

Gestire il traffico con regole firewall

Ogni rete VPC implementa un firewall virtuale distribuito. Configura le regole del firewall che consentono o negano il traffico da e verso le risorse collegate al VPC, incluse le istanze VM di Compute Engine e i cluster GKE. Le regole firewall vengono applicate a livello di rete virtuale, quindi aiutano a offrire una protezione efficace e un controllo del traffico indipendentemente dal sistema operativo utilizzato dalle istanze. Il firewall è stateful, il che significa che per i flussi consentiti, il traffico di ritorno è consentito automaticamente.

Le regole firewall sono specifiche di una determinata rete VPC. Le regole consentono di specificare il tipo di traffico, ad esempio porte e protocolli, e l'origine o la destinazione del traffico, inclusi indirizzi IP, subnet, tag e account di servizio. Ad esempio, puoi creare una regola in entrata per consentire a qualsiasi istanza VM associata a un determinato account di servizio di accettare traffico TCP sulla porta 80 proveniente da una specifica subnet di origine. Ogni VPC include automaticamente le regole firewall implicite e predefinite.

Se la tua app è ospitata in GKE, esistono alcune considerazioni per la gestione del traffico di rete e la configurazione delle regole firewall. Ad esempio, puoi creare un criterio di rete per controllare le comunicazioni interne all'interno del cluster GKE. Puoi anche utilizzare un mesh di servizi come Istio per gestire e proteggere ulteriormente la comunicazione con il tuo cluster. Per maggiori dettagli, vedi Concetti di rete di GKE.

Limita accesso esterno

Quando crei una risorsa Google Cloud che utilizza VPC, scegli una rete e una subnet in cui posizionare la risorsa. Alla risorsa viene assegnato un indirizzo IP interno da uno degli intervalli IP associati alla subnet. Le risorse in una rete VPC possono comunicare tra loro tramite indirizzi IP interni, a condizione che le regole firewall lo consentano.

Per comunicare con Internet, le risorse devono avere un indirizzo IP pubblico esterno o devono utilizzare Cloud NAT. Analogamente, le risorse devono disporre di un indirizzo IP esterno per connettersi ad altre risorse esterne alla stessa rete VPC, a meno che le reti non siano connesse in qualche modo, ad esempio tramite una VPN. Per ulteriori dettagli, consulta la documentazione relativa agli indirizzi IP.

Limita l'accesso a Internet alle sole risorse che ne hanno bisogno. Le risorse con solo indirizzo IP interno privato possono comunque accedere a molti servizi e API Google tramite l'accesso privato Google. Questo accesso privato consente alle risorse di interagire con i servizi Google e Google Cloud chiave rimanendo isolati da Internet.

Centralizza il controllo di rete

Utilizza una rete VPC condivisa per connetterti a una rete VPC comune. Le risorse in quei progetti possono comunicare tra loro in modo sicuro ed efficiente attraverso i confini dei progetti utilizzando IP interni. Puoi gestire le risorse di rete condivise, come subnet, route e firewall, da un progetto host centrale, in modo da applicare e applicare criteri di rete coerenti tra i progetti.

Con i controlli VPC condiviso e IAM, puoi separare l'amministrazione della rete dall'amministrazione dei progetti. Questa separazione ti aiuta a implementare il principio del privilegio minimo. Ad esempio, un team di rete centralizzato può amministrare la rete senza alcuna autorizzazione nei progetti partecipanti. Analogamente, gli amministratori del progetto possono gestire le risorse del progetto senza alcuna autorizzazione per manipolare la rete condivisa.

Connetti la rete aziendale

Molte aziende devono connettere l'infrastruttura on-premise esistente alle proprie risorse Google Cloud. Valuta i requisiti di larghezza di banda, latenza e SLA (accordo sul livello del servizio) per scegliere l'opzione di connessione migliore:

  • Se hai bisogno di connessioni di livello enterprise a bassa latenza e alta disponibilità che ti consentano di trasferire dati in modo affidabile tra le reti on-premise e le reti VPC senza attraversare le connessioni a Internet per Google Cloud, utilizza Cloud Interconnect:

    • Dedicated Interconnect fornisce una connessione fisica diretta tra la tua rete on-premise e la rete Google,
    • Partner Interconnect fornisce connettività tra le reti on-premise e le reti VPC Google Cloud attraverso un provider di servizi supportato.
  • Se non hai bisogno di bassa latenza e alta disponibilità di Cloud Interconnect o se stai semplicemente iniziando il tuo percorso verso il cloud, utilizza Cloud VPN per configurare i tunnel VPN IPsec criptati tra la tua rete on-premise e il VPC. Rispetto a una connessione privata diretta, un tunnel IPsec VPN ha costi e costi inferiori.

Proteggi le tue app e i tuoi dati

Google Cloud offre solide funzionalità di sicurezza in tutta l'infrastruttura e nei servizi, dalla sicurezza fisica dei data center e dall'hardware personalizzato per la sicurezza ai team dedicati di ricercatori. Tuttavia, la protezione delle tue risorse Google Cloud è una responsabilità condivisa. Devi adottare le misure appropriate per garantire che le tue app e i tuoi dati siano protetti.

Oltre alle regole firewall e all'isolamento VPC, utilizza questi strumenti aggiuntivi per contribuire a proteggere e proteggere le tue app:

  • Utilizza i controlli di servizio VPC per definire un perimetro di sicurezza attorno alle risorse Google Cloud per applicare vincoli ai dati all'interno di un VPC e ridurre i rischi di esfiltrazione di dati.
  • Utilizza un bilanciatore del carico HTTP(S) globale di Google Cloud per supportare l'alta disponibilità e la scalabilità per i tuoi servizi rivolti a Internet.
  • Integra Google Cloud Armor con il bilanciatore del carico HTTP(S) per fornire protezione dagli attacchi DDoS e controllare l'accesso agli indirizzi IP attendibili o non attendibili sul perimetro della rete.
  • Controlla l'accesso alle app utilizzando Identity-Aware Proxy (IAP) per verificare l'identità dell'utente e il contesto della richiesta per determinare se un utente deve essere autorizzato ad accedere.

Google Cloud contribuisce a proteggere i tuoi dati applicando la crittografia sia in transito che a riposo. I dati inattivi sono criptati per impostazione predefinita tramite chiavi di crittografia gestite da Google. Per i dati sensibili, puoi gestire le tue chiavi in Google Cloud. Se hai bisogno di un maggiore controllo, puoi fornire le tue chiavi di crittografia gestite all'esterno di Google Cloud. Poiché la gestione o la gestione delle proprie chiavi genera un sovraccarico, consigliamo di utilizzare questo approccio solo per dati davvero sensibili. Per maggiori dettagli, consulta la pagina sulla crittografia dei dati inattivi.

Logging, monitoraggio e operazioni

Centralizza il logging e il monitoraggio

Le aziende eseguono in genere più app, pipeline di dati e altri processi, spesso su piattaforme diverse. Garantire l'integrità di queste app e processi è una responsabilità principale sia per gli sviluppatori che per i team operativi. Per garantire l'integrità, ti consigliamo di utilizzare Cloud Logging e Cloud Monitoring per gestire logging, monitoraggio, debug, tracciamento, profilazione e altro ancora.

I log sono una fonte primaria di informazioni di diagnostica sull'integrità delle app e dei processi. Cloud Logging per archiviare, visualizzare, cercare, analizzare e creare avvisi su dati di log ed eventi. Logging si integra in modo nativo con molti servizi Google Cloud. Per le applicazioni ospitate su Compute Engine o sulle istanze di macchine virtuali Amazon Elastic Compute Cloud (EC2), puoi installare un agente di logging per inoltrare automaticamente i log a Cloud Logging. Cloud Logging fornisce inoltre un'API che può essere utilizzata per scrivere log da qualsiasi origine, incluse le applicazioni in esecuzione on-premise. Usa Logging per centralizzare i log di tutte le tue app.

Oltre a utilizzare i log, in genere è necessario monitorare altri aspetti delle app e dei sistemi per garantire un funzionamento affidabile. Usa Cloud Monitoring per avere visibilità su prestazioni, uptime e integrità complessiva delle tue app e dell'infrastruttura. Monitoring importa eventi, metriche e metadati e genera insight tramite dashboard, grafici e avvisi. Monitoring supporta metriche preconfigurate provenienti da diverse origini Google Cloud e di terze parti. Con Monitoring puoi anche definire metriche personalizzate. Ad esempio, puoi utilizzare le metriche per definire criteri di avviso in modo che i team operativi siano informati di comportamenti o tendenze insoliti. Monitoring offre inoltre dashboard flessibili e strumenti di visualizzazione avanzati per identificare i problemi emergenti.

Configura un audit trail

Oltre all'acquisizione di log a livello di app e di processo, potresti dover monitorare e mantenere i dettagli di come gli sviluppatori e i team IT interagiscono con le risorse Google Cloud. Utilizza gli audit log di Cloud per rispondere a domande come "chi ha fatto cosa, dove e quando" nei tuoi progetti Google Cloud. Per un elenco dei servizi di Google Cloud che scrivono gli audit log, consulta la sezione Servizi Google con audit log. Utilizza i controlli IAM per limitare gli utenti autorizzati a visualizzare i log di controllo.

Gli audit log di Cloud acquisiscono diversi tipi di attività. I log dell'attività amministratore contengono le voci di log delle chiamate API o di altre azioni amministrative che modificano la configurazione o i metadati delle risorse. I log delle attività di amministrazione sono sempre abilitati. I log di controllo di accesso ai dati registrano le chiamate API che creano, modificano o leggono i dati forniti dall'utente. Gli audit log di accesso ai dati sono disabilitati per impostazione predefinita perché sono molto grandi. Puoi configurare quali servizi Google Cloud producono log di accesso ai dati.

Per informazioni più dettagliate sul controllo, consulta gli audit log di Cloud.

Esportare i log

I log contengono i log di app e audit per un periodo di tempo limitato. Per ottemperare a obblighi di conformità, potrebbe essere necessario conservare i log per periodi più lunghi. In alternativa, puoi conservare i log per l'analisi storica.

Puoi instradare i log a Cloud Storage, BigQuery e Pub/Sub. I filtri ti consentono di includere o escludere risorse dall'esportazione. Ad esempio, puoi esportare tutti i log di Compute Engine escludendo però quelli di Cloud Load Balancing.

L'esportazione dei log dipende dal caso d'uso specifico. Molte aziende esportano in più destinazioni. In generale, per adempiere agli obblighi di conformità, utilizza Cloud Storage per l'archiviazione a lungo termine. Se devi analizzare i log, utilizza BigQuery, poiché supporta query SQL e un vasto ecosistema di strumenti di terze parti.

Per ulteriori dettagli sulle esportazioni dei log, consulta Pattern di progettazione per l'esportazione da Logging.

Adottare DevOps ed esplorare Site Reliability Engineering

Per migliorare l'agilità e ridurre il time to market di app e funzionalità, devi abbattere le barriere tra team di sviluppo, operativi, di networking e di sicurezza. Per farlo, sono necessari processi, cultura e strumenti che vengono collettivamente definiti DevOps.

Google Cloud fornisce una gamma di servizi per aiutarti ad adottare le pratiche DevOps. Le funzionalità includono repository di codice sorgente integrati, strumenti di distribuzione continua, funzionalità di monitoraggio avanzate tramite Cloud Monitoring e supporto efficace per gli strumenti open source. Per maggiori dettagli, consulta le soluzioni DevOps di Google Cloud.

Site Reliability Engineering (SRE) è un insieme di pratiche strettamente legate a DevOps. Queste pratiche si sono evolute dal team SRE che gestisce l'infrastruttura di produzione di Google, Sebbene la creazione di una funzione SRE dedicata non rientri nell'ambito di molte aziende, consigliamo di consultare i libri SRE per apprendere pratiche che possono contribuire a dare forma alla tua strategia operativa.

Architettura cloud

Pianificare la migrazione

La migrazione di app e infrastruttura on-premise nel cloud richiede una valutazione e una pianificazione attenta. Devi valutare le varie strategie di migrazione, da lift and shift a trasformazione e spostamento, per ogni singola app. Google Cloud fornisce strumenti che aiutano a eseguire la migrazione delle macchine virtuali, a trasferire i dati e a modernizzare i carichi di lavoro. Per maggiori dettagli, consulta il Centro migrazione.

A causa di vincoli normativi, tecnici o finanziari, potrebbe non essere possibile o addirittura preferibile spostare alcune app nel cloud pubblico. Di conseguenza, potresti dover distribuire e integrare i carichi di lavoro tra la tua infrastruttura on-premise e Google Cloud. Questa configurazione è detta cloud ibrida. Per ulteriori dettagli sui carichi di lavoro ibridi, consulta la pagina relativa al cloud ibrido e i pattern e le best practice per le soluzioni ibride e multi-cloud.

Preferisci servizi gestiti

I fattori chiave dell'adozione del cloud stanno riducendo l'overhead IT e aumentano l'efficienza, consentendoti di concentrarti sulla tua attività principale. Oltre ad adottare le pratiche DevOps e aumentare l'automazione, dovresti utilizzare i servizi gestiti di Google Cloud per ridurre l'onere operativo e il costo totale di proprietà (TCO).

Invece di installare, supportare e gestire in modo indipendente tutte le parti di uno stack di applicazioni, puoi utilizzare i servizi gestiti per consumare parti dello stack di applicazioni come servizi. Ad esempio, anziché installare e gestire autonomamente un database MySQL su un'istanza VM, puoi utilizzare un database MySQL fornito da Cloud SQL. Puoi quindi fare affidamento su Google Cloud per gestire l'infrastruttura sottostante e automatizzare backup, aggiornamenti e replica.

Ti consigliamo di valutare lo SLA (accordo sul livello del servizio) fornito da ciascun servizio gestito.

Google Cloud offre servizi gestiti e opzioni serverless per molti componenti e casi d'uso comuni delle app, dai database gestiti agli strumenti di elaborazione dei big data. Molti di questi servizi gestiti supportano i framework e le piattaforme open source più utilizzati, per permetterti di realizzare i vantaggi del TCO sollevando e trasferendo nel cloud le app esistenti che sfruttano queste piattaforme open source.

Progettazione ad alta disponibilità

Per mantenere il tempo di attività per le app mission critical, progetta le app resilienti che gestiscono con attenzione gli errori o le variazioni impreviste del carico. L'alta disponibilità è la capacità di un'app di rimanere adattabile e continuare a funzionare nonostante i guasti dei componenti nel sistema. Le architetture ad alta disponibilità in genere comportano la distribuzione di risorse di calcolo, il bilanciamento del carico e la replica dei dati. La portata dei provisioning ad alta disponibilità potrebbe variare in base all'app. Per ulteriori informazioni sui concetti di disponibilità, consulta la documentazione di aree geografiche e aree geografiche.

Come minimo, devi distribuire risorse di calcolo, come istanze VM di Compute Engine e cluster GKE tra le zone disponibili in un'area geografica per proteggerti da errori di una determinata zona. Per migliorare ulteriormente la disponibilità delle risorse di calcolo, puoi distribuirle in modo analogo tra più aree geografiche distribuite in modo da ridurre la perdita di un'intera area geografica. Per indicazioni su dove creare le risorse di calcolo, consulta le best practice per la scelta dell'area geografica per Compute Engine.

Google Cloud offre diverse varianti di bilanciamento del carico. Il bilanciatore del carico HTTP(S) viene spesso utilizzato per esporre le app rivolte a Internet. Questo bilanciatore del carico fornisce il bilanciamento globale, che consente la distribuzione del carico tra aree geografiche in diverse aree geografiche. Se una zona o un'area geografica non è più disponibile, il bilanciatore del carico indirizza il traffico a una zona con capacità disponibile. Per ulteriori dettagli, consulta la sezione Ottimizzazioni della capacità delle applicazioni con bilanciamento del carico globale.

Valuta anche la disponibilità quando scegli l'archiviazione dei tuoi dati. Alcuni servizi per l'archiviazione dei dati di Google Cloud consentono di replicare i dati tra zone in un'unica area geografica. Altri servizi replicano automaticamente i dati in più aree geografiche in un'area geografica, ma potrebbero richiedere un compromesso sulla latenza o sul modello di coerenza. Il servizio di archiviazione dati più appropriato varia in base ai requisiti delle app e della disponibilità.

Pianifica la tua strategia di ripristino di emergenza

Oltre a progettare un servizio ad alta disponibilità, dovresti creare un piano per mantenere la continuità aziendale in caso di interruzione su larga scala o disastri naturali. Il ripristino di emergenza è la capacità di ripristino da incidenti rari ma principali. Quando le disposizioni relative all'alta disponibilità non sono efficaci o non sono disponibili, potrebbe essere necessario avviare il ripristino di emergenza.

La creazione di un piano RE efficace richiede una pianificazione e test. Ti consigliamo di risolvere i piani DR in anticipo. Per ulteriori dettagli, consulta la guida alla pianificazione del ripristino di emergenza e gli articoli correlati.

Risorse

Fatturazione e gestione

Scopri come vengono addebitate le risorse

Google Cloud opera in base a un modello di consumo. Gli addebiti vengono effettuati in base alla quantità di risorse o prodotti utilizzati in un determinato periodo di pagamento. Per utilizzare i prodotti Google Cloud, devi abilitare un account di fatturazione Cloud. I prodotti misurano il consumo in diversi modi, ad esempio:

  • Per quanto tempo (quanti secondi sono stati in esecuzione una macchina)
  • Come volume (quantità di dati archiviati)
  • Poiché il numero di operazioni eseguite
  • Come varianti di questi concetti

Assicurati di comprendere come funziona la fatturazione per i componenti nel tuo sistema, in modo da poter quantificare accuratamente i tuoi costi. Ogni prodotto fornisce informazioni dettagliate sui prezzi nella relativa documentazione. Molti prodotti offrono un livello gratuito in cui il costo di qualsiasi consumo inferiore a una determinata soglia viene accreditato sul tuo account di fatturazione, in modo da non incorrere in addebiti. Le risorse utilizzate oltre quanto offerto dal Livello gratuito vengono addebitate sul tuo account di fatturazione.

Per ulteriori dettagli sulla filosofia, le innovazioni e gli sconti dei prezzi Google Cloud, consulta la pagina Prezzi.

Configura i controlli di fatturazione

Tutte le risorse Google Cloud, inclusi VM di Compute Engine, bucket Cloud Storage e set di dati BigQuery, devono essere associate a un progetto Google Cloud. Per consumare le risorse, incluse quelle incluse nel livello gratuito, un progetto deve essere associato a un account di fatturazione. Esiste una relazione di tipo one-to-many tra un account di fatturazione e i progetti; un progetto può essere associato a un solo account di fatturazione, ma un account di fatturazione può essere associato a molti progetti.

Un account di fatturazione definisce chi paga per le risorse in un set di progetti. Un account di fatturazione può essere di due tipi: un account self-service (online) a pagamento automatico o un account con fatturazione mensile non automatica. Gli account self-service (online) includono uno strumento di pagamento, come una carta di credito, a cui gli addebiti vengono addebitati automaticamente. I conti fatturati vengono pagati con assegno o bonifico bancario. Se vuoi determinare il tipo di account di fatturazione che utilizzi, consulta Individuare il tipo di account di fatturazione e il ciclo di fatturazione.

Puoi definire gli account di fatturazione a livello di organizzazione, in cui puoi collegare i progetti sotto il nodo Organizzazione agli account di fatturazione. Puoi avere più account di fatturazione nella tua organizzazione, anche se consigliamo di creare un solo account di fatturazione centrale.

IAM fornisce un set di controlli solidi per limitare il modo in cui i diversi utenti possono amministrare e interagire con la fatturazione. Questi controlli ti aiutano ad applicare il principio del privilegio minimo e a distinguere chiaramente i ruoli. Ad esempio, puoi separare l'autorizzazione per creare account di fatturazione dall'autorizzazione per collegare i progetti a un determinato account di fatturazione.

Per una discussione dettagliata sui concetti e sulla configurazione della fatturazione, consulta l'elenco di controllo per le operazioni preliminari di fatturazione.

Analizzare ed esportare il conto

Gli utenti con le autorizzazioni appropriate possono visualizzare un'analisi dettagliata dei costi, la cronologia delle transazioni e altro in Cloud Console. Le informazioni sono presenti per ogni account di fatturazione. La console contiene anche report di fatturazione interattivi che ti consentono di filtrare e suddividere i costi per progetto, prodotto e intervallo di tempo. La funzionalità Cloud Console è spesso sufficiente per i clienti con configurazioni Google Cloud meno complicate.

Tuttavia, se in genere hai bisogno di analisi e rapporti personalizzati sulla tua spesa cloud, ti consigliamo di attivare le esportazioni giornaliere dei dati di fatturazione Cloud in un set di dati BigQuery. I dati esportati includono le etichette applicate alle risorse.

Il tempo è importante. Ti consigliamo di attivare le esportazioni in BigQuery nel momento in cui crei il tuo account di fatturazione Cloud. Il tuo set di dati BigQuery rispecchia solo i dati di fatturazione di Google Cloud a partire dalla data di configurazione dell'esportazione della fatturazione Cloud e successivamente. In altre parole, i dati di fatturazione di Google Cloud non vengono aggiunti in modo retroattivo, quindi non potrai visualizzare i dati di fatturazione Cloud prima di abilitare l'esportazione. Una volta che i dati di fatturazione sono stati caricati in BigQuery, i team finanziari possono analizzarli utilizzando SQL standard e strumenti che si integrano con BigQuery, ad esempio Data Studio.

Pianifica per i requisiti di capacità

I progetti Google Cloud hanno quote che limitano il consumo di una determinata risorsa o API. Le quote sono attive per proteggere la più ampia community di Google Cloud evitando picchi di utilizzo imprevisti. Ad esempio, le quote assicurano che un numero limitato di clienti o progetti non possa monopolizzare l'utilizzo dei core della CPU in una determinata area geografica o zona.

Pianifica in anticipo i requisiti di capacità dei progetti per evitare di limitare in modo imprevisto il consumo di risorse. Se le quote non sono sufficienti, puoi richiedere modifiche nella sezione Quote di Cloud Console. Se hai bisogno di una capacità elevata, contatta il tuo team di vendita di Google Cloud.

Implementare controlli dei costi

Quando i servizi cloud scalano, anche i costi aumentano. Google Cloud offre diversi metodi per limitare il consumo delle risorse e per avvisare le parti interessate di eventi di fatturazione pertinenti.

Puoi definire budget che generano avvisi quando la spesa raggiunge determinate soglie. Gli avvisi hanno la forma di email e, facoltativamente, possono generare messaggi Pub/Sub per le notifiche programmatiche. Puoi applicare il budget all'intero account di fatturazione o a un singolo progetto collegato all'account di fatturazione. Ad esempio, puoi creare un budget per generare avvisi quando la spesa mensile totale per un account di fatturazione raggiunge il 50, l'80 e il 100% dell'importo del budget specificato. Tenete presente che i budget non limitano la spesa, ma sono una funzione per generare avvisi. Per scoprire di più, consulta la documentazione sugli avvisi relativi al budget. Per ulteriori best practice, decisioni di progettazione e opzioni di configurazione che semplificano la gestione dei costi, consulta l'elenco di controllo delle operazioni preliminari di Cloud Billing

Puoi anche utilizzare le quote per limitare il consumo di una determinata risorsa. Ad esempio, puoi impostare una quota massima di query per giorno sull'API BigQuery per garantire che un progetto non spenda in eccesso su BigQuery.

Acquistare un pacchetto di assistenza

Google Cloud offre diversi modi per ricevere assistenza in caso di problemi, dai forum della community ai pacchetti di assistenza a pagamento. Per proteggere i carichi di lavoro aziendali critici, consigliamo di acquistare un pacchetto di assistenza Enterprise. Per informazioni dettagliate, visita il portale di assistenza di Google Cloud.

A seconda del livello di assistenza acquistato, la tua capacità di aumentare i ticket di assistenza potrebbe essere limitata a determinate persone. È buona norma quindi creare una stanza di deposito o una corte di sostegno. Questo approccio ti consente di evitare la duplicazione di biglietti e i problemi di comunicazione e di mantenere la comunicazione più chiara possibile con l'assistenza Google Cloud.

Ricevi assistenza dagli esperti

L'organizzazione dei servizi professionali (PSO) di Google Cloud offre servizi di consulenza per aiutarti nel tuo percorso verso Google Cloud. Contatta consulenti PSO, che possono fornire una vasta esperienza per informare il tuo team sulle best practice e sui principi guida per un'implementazione di successo. I servizi vengono forniti sotto forma di pacchetti per aiutarti a pianificare, eseguire il deployment, eseguire e ottimizzare i carichi di lavoro.

Google Cloud vanta inoltre un solido ecosistema di partner di Google Cloud, da grandi integratori di sistemi globali a partner con una profonda specializzazione in un'area specifica come il machine learning. I partner hanno dimostrato il successo dei clienti con Google Cloud e possono accelerare i tuoi progetti e migliorare i risultati aziendali. Consigliamo ai clienti aziendali di coinvolgere i partner per aiutarli a pianificare ed eseguire l'implementazione di Google Cloud.

Crea centri di eccellenza

Google continua a investire in questi prodotti e stiamo implementando continuamente nuove funzionalità. Può essere utile includere informazioni, esperienze e pattern della tua organizzazione in una knowledge base interna, ad esempio un wiki, un sito Google o un sito Intranet.

Analogamente, è buona norma nominare esperti e esperti di Google Cloud nella tua organizzazione. Sono disponibili diverse opzioni di formazione e certificazione per aiutare i campioni candidati a crescere nella loro area di competenza. I team possono tenerti al corrente delle ultime novità, degli annunci e delle storie dei clienti iscrivendosi al blog di Google Cloud.

Passaggi successivi