Archetipi di deployment di Google Cloud

Last reviewed 2023-11-03 UTC

In qualità di Cloud Architect o responsabile delle decisioni, quando prevedi di eseguire il deployment di un'applicazione in Google Cloud, devi scegliere un archetipo di deployment1 adatto alla tua applicazione. Questa guida descrive sei archetipi di deployment: a livello di zona, a livello di regione, multiregionale, globale, ibrido e multi-cloud, e presenta casi d'uso e considerazioni sulla progettazione per ogni archetipo di deployment. La guida fornisce anche un'analisi comparativa per aiutarti a scegliere gli archetipi di deployment che soddisfano i tuoi requisiti di disponibilità, costi, prestazioni ed efficienza operativa.

Cos'è un archetipo di deployment?

Un archetipo di deployment è un modello astratto indipendente dal provider che puoi utilizzare come base per creare architetture di deployment specifiche dell'applicazione che soddisfino i tuoi requisiti aziendali e tecnici. Ogni archetipo di deployment specifica una combinazione di domini in errore in cui può essere eseguita un'applicazione. Questi domini in errore possono essere una o più zone o regioni Google Cloud e possono estendersi per includere i tuoi data center on-premise o i domini in errore in altri cloud provider.

Il seguente diagramma mostra sei applicazioni di cui è stato eseguito il deployment in Google Cloud. Ogni applicazione utilizza un archetipo di deployment che soddisfa i suoi requisiti specifici.

Applicazioni in Google Cloud sottoposte a deployment utilizzando diversi archetipi di deployment.

Come mostra il diagramma precedente, in un'architettura che utilizza l'archetipo di deployment ibrido o multi-cloud, la topologia cloud si basa su uno degli archetipi di base: a livello di zona, a livello di regione, multiregionale o globale. In questo senso, gli archetipi di deployment ibrido e multi-cloud possono essere considerati come archetipi di deployment compositi che includono uno degli archetipi di base.

La scelta di un archetipo di deployment consente di semplificare le decisioni successive relative ai prodotti e alle funzionalità di Google Cloud da utilizzare. Ad esempio, per un'applicazione containerizzata a disponibilità elevata, se scegli l'archetipo di deployment a livello di regione, i cluster Google Kubernetes Engine (GKE) regionali sono più appropriati dei cluster GKE a livello di zona.

Quando scegli un archetipo di deployment per un'applicazione, devi considerare dei compromessi tra fattori quali disponibilità, costo e complessità operativa. Ad esempio, se un'applicazione serve gli utenti in più paesi e ha bisogno di un'alta disponibilità, puoi scegliere l'archetipo di deployment multiregionale. Tuttavia, per un'applicazione interna utilizzata da dipendenti di una singola area geografica, potresti dare la priorità al costo rispetto alla disponibilità e, di conseguenza, scegliere l'archetipo di deployment a livello di regione.

Panoramica degli archetipi di deployment

Le seguenti schede forniscono le definizioni degli archetipi di deployment e un riepilogo dei casi d'uso e le considerazioni sulla progettazione per ciascuno.

Zonale

L'applicazione viene eseguita all'interno di una singola zona Google Cloud, come mostrato nel seguente diagramma:

Archetipo di deployment a livello di zona
Casi d'uso
  • Ambienti di sviluppo e test.
  • Applicazioni che non richiedono un'alta disponibilità.
  • Networking a bassa latenza tra i componenti delle applicazioni.
  • Migrazione dei carichi di lavoro di base.
  • Applicazioni che utilizzano software limitato alla licenza.
Note sul layout
  • Tempo di riposo durante le interruzioni delle zone.

    Per la continuità aziendale, puoi eseguire il provisioning di una replica passiva dell'applicazione in un'altra zona nella stessa regione. In caso di interruzione di una zona, puoi ripristinare l'applicazione in produzione utilizzando la replica passiva.

Ulteriori informazioni

Consulta le seguenti sezioni:

Regionale

L'applicazione viene eseguita in modo indipendente in due o più zone all'interno di una singola regione Google Cloud, come mostrato nel seguente diagramma:

Archetipo di deployment a livello di regione
Casi d'uso
  • Applicazioni ad alta disponibilità che servono gli utenti all'interno di un'area geografica.
  • Conformità con i requisiti di residenza e sovranità dei dati.
Note sul layout
  • Tempo di riposo durante le interruzioni della regione.

    Per la continuità aziendale, puoi eseguire il backup dell'applicazione e dei dati in un'altra regione. In caso di interruzione di una regione, puoi utilizzare i backup nell'altra regione per ripristinare l'applicazione in produzione.

  • Costi e sforzi per eseguire il provisioning e gestire le risorse ridondanti.
Ulteriori informazioni

Consulta le seguenti sezioni:

Multiregionale

L'applicazione viene eseguita in modo indipendente in più zone in due o più regioni Google Cloud. Puoi utilizzare i criteri di routing DNS per instradare il traffico in entrata ai bilanciatori del carico a livello di regione. I bilanciatori del carico a livello di regione distribuiscono quindi il traffico alle repliche a livello di zona dell'applicazione, come mostrato nel seguente diagramma:

Archetipo di deployment per più regioni
Casi d'uso
  • Applicazione a disponibilità elevata con utenti dislocati in varie aree geografiche.
  • Applicazioni che richiedono un'esperienza a bassa latenza dell'utente finale.
  • Conformità ai requisiti di residenza dei dati e di sovranità mediante l'utilizzo di un criterio di routing DNS con recinti virtuali.
Note sul layout
  • Costo per trasferimento dei dati e replica dei dati tra regioni.
  • Complessità operativa.
Ulteriori informazioni

Consulta le seguenti sezioni:

Globale

L'applicazione viene eseguita nelle regioni Google Cloud di tutto il mondo, come stack distribuito a livello globale (senza rilevare la posizione) o come stack isolati a livello di regione. Un bilanciatore del carico anycast globale distribuisce il traffico nella regione più vicina all'utente. Anche altri componenti dello stack di applicazioni possono essere globali, ad esempio database, cache e archivio di oggetti.

Il seguente diagramma mostra la variante distribuita a livello globale dell'archetipo di deployment globale. Un bilanciatore del carico anycast globale inoltra le richieste a uno stack di applicazioni distribuito in più regioni e che utilizza un database replicato a livello globale.

Archetipo di deployment globale: stack distribuito a livello globale

Il seguente diagramma mostra una variante dell'archetipo di deployment globale con stack di applicazioni isolati a livello di regione. Un bilanciatore del carico anycast globale inoltra le richieste a uno stack di applicazioni in una delle regioni. Tutti gli stack di applicazioni utilizzano un unico database replicato a livello globale.

Archetipo di deployment globale: stack isolati a livello di regione
Casi d'uso
  • Applicazioni ad alta disponibilità per utenti dislocati in tutto il mondo.
  • Opportunità di ottimizzare i costi e semplificare le operazioni utilizzando risorse globali anziché più istanze di risorse a livello di regione.
Note sul layout Costi per il trasferimento dei dati e la replica dei dati tra regioni.
Ulteriori informazioni

Consulta le seguenti sezioni:

Ibrido

Il deployment di alcune parti dell'applicazione viene eseguito in Google Cloud, mentre altre vengono eseguite on-premise, come mostrato nel diagramma seguente. La topologia in Google Cloud può utilizzare l'archetipo di deployment a livello di zona, di regione, multiregionale o globale.

Archetipo di deployment ibrido
Casi d'uso
  • Sito per il ripristino di emergenza (RE) per i carichi di lavoro on-premise.
  • Sviluppo on-premise per applicazioni cloud.
  • Migrazione progressiva al cloud per le applicazioni legacy.
  • Miglioramento delle applicazioni on-premise con funzionalità cloud.
Note sul layout
  • Imposta l'impegno e la complessità operativa.
  • Costo delle risorse ridondanti.
Ulteriori informazioni

Consulta le seguenti sezioni:

Multi-cloud

Il deployment di alcune parti della tua applicazione viene eseguito in Google Cloud, mentre altre in altre piattaforme cloud, come illustrato nel seguente schema. La topologia in ogni piattaforma cloud può utilizzare l'archetipo di deployment a livello di zona, a livello di regione, multiregionale o globale.

Archetipo di deployment multi-cloud
Casi d'uso
  • Google Cloud come sito principale e un altro cloud come sito di RE.
  • Miglioramento delle applicazioni con le funzionalità avanzate di Google Cloud.
Note sul layout
  • Imposta l'impegno e la complessità operativa.
  • Costo delle risorse ridondanti e del traffico di rete tra cloud.
Ulteriori informazioni

Consulta le seguenti sezioni:

Collaboratori

Autore: Kumar Dhanagopal | Cross-Product Solution Developer

Altri collaboratori:


  1. Anna Berenberg e Brad Calder, Deployment Archetypes for Cloud Applications, ACM Computing Surveys, volume 55, numero 3, n. articolo: 61, pp. 1-48