Virtualizzazione delle zone


Questo documento spiega la virtualizzazione delle zone, ovvero il metodo utilizzato da Google per mappare le zone pubbliche a cluster di hardware fisico interno all'interno dei nostri data center. La virtualizzazione delle zone ci consente di espandere facilmente le nostre zone, eseguire l'upgrade dell'hardware e ritirare l'infrastruttura fisica senza alcun impatto per i clienti. Consulta questo argomento se le tue applicazioni sono distribuite su più progetti e se vuoi scoprire in che modo Google distribuisce le sue zone nell'infrastruttura fisica.

Le risorse Google Cloud sono ospitate in più regioni in tutto il mondo. Ogni regione è composta da tre o quattro zone. Le zone sono gruppi logici di risorse progettate per evitare errori correlati. Posizionare le risorse in più zone all'interno di una regione riduce il rischio di errori correlati dell'infrastruttura fisica e software che interessano le applicazioni. Collocare le risorse in diverse regioni offre un livello ancora più elevato di indipendenza dagli errori.

Per un elenco delle località geografiche di Google Cloud, consulta Regioni e zone. Per ulteriori informazioni sulla creazione di applicazioni resilienti, consulta la serie di soluzioni Google Cloud sulla pianificazione del ripristino di emergenza.

Cluster

Tutto l'hardware Google Cloud è organizzato in cluster. Un cluster rappresenta un insieme di risorse di calcolo, rete e archiviazione supportate dall'infrastruttura di edifici, alimentazione e raffreddamento. I componenti dell'infrastruttura supportano tipicamente un singolo cluster, garantendo che i cluster condividano poche dipendenze.

asia-east1 ha 3 zone e 3 cluster.

Figura 1: nella regione asia-east1 sono presenti tre zone. Ogni zona ha il proprio cluster con singole risorse.

Tuttavia, i componenti con affidabilità e ridondanza downstream dimostrate possono essere condivisi tra i cluster. Ad esempio, più cluster tipicamente condividono una sottostazione di rete di servizi pubblici perché le sottostazioni sono estremamente affidabili e i cluster utilizzano sistemi di alimentazione ridondanti. Google Cloud progetta la propria infrastruttura fisica per supportare gli accordi sul livello del servizio (SLA) e gli obiettivi sul livello del servizio (SLO) dei servizi Google Cloud.

Mappatura delle zone ai cluster

Quando un progetto utilizza una regione per la prima volta, Google Cloud seleziona un cluster univoco per ogni zona della regione, che è il cluster predefinito per le risorse zonali del progetto. Tuttavia, i vincoli hardware potrebbero comportare l'utilizzo di cluster aggiuntivi per la zona. Questa selezione è chiamata mappatura da zona a cluster. Le mappature delle zone ai cluster predefinite vengono selezionate su base di progetto in modo che ogni cliente possa usufruire delle stesse funzionalità e dello stesso rendimento. All'interno di un progetto, la mappatura tra una zona logica e un cluster fisico è coerente, ma un altro progetto potrebbe avere una mappatura zona-cluster completamente diversa in base alle risorse zonali del progetto. Un progetto non ha mai due zone mappate allo stesso cluster fisico.

Puoi allineare le mappature delle zone ai cluster tra i progetti utilizzando le reti Virtual Private Cloud (VPC). Google Cloud tenta di assegnare la stessa mappatura da zona a cluster a tutti i progetti che condividono una rete VPC. Mappe da zona a cluster coerenti nei tuoi progetti potrebbero essere auspicabili per errori atomici e prevedibili dei componenti dell'applicazione.

Zone virtualizzate

Con l'espansione delle regioni, ogni zona è supportata da più cluster. Il nostro obiettivo è raggruppare i cluster con infrastrutture condivise, come un edificio o un'infrastruttura di raffreddamento, in zone logiche in modo che i guasti dell'infrastruttura condivisa interessino una sola zona all'interno di una regione.

Le zone A e B di asia-east1 sono state estese a due cluster.

Figura 2 Due delle tre zone in asia-east1 sono state espanse e ora hanno due cluster.

I carichi di lavoro dei clienti vengono gestiti nel minor numero possibile di cluster. In genere, il carico di lavoro zonale è contenuto in un unico cluster. Tuttavia, le mappature da zona a cluster potrebbero includere cluster aggiuntivi nei casi in cui nel cluster principale della mappa non sia disponibile hardware specializzato o capacità aggiuntiva.

Le zone A e B di asia-east1 sono state estese a due cluster.

Figura 3 Mostra un diagramma della mappatura delle zone ai cluster per due progetti:

  • Il progetto Fizz ha due cluster mappati a asia-east1-a perché solo il cluster z supporta i carichi di lavoro GPU e solo il cluster y supporta i carichi di lavoro TPU.
  • I progetti Fizz e Buzz hanno cluster diversi mappati a asia-east1-b.

Sebbene la mappatura delle zone ai cluster raramente cambi, le modifiche si verificano con l'evoluzione delle esigenze di capacità e delle offerte hardware sottostanti. Ad esempio, i cluster vengono aggiunti a una zona per aumentare la capacità e rimossi da una zona quando vengono dismessi. Durante qualsiasi evento di manutenzione, Google tenta di limitare i tempi di inattività utilizzando la migrazione live, se possibile.

In caso di interruzione del servizio di un cluster, la zona logica associata al cluster viene segnalata come interrotta nella Dashboard dello stato di Google Cloud, tuttavia non tutte le risorse del cliente sono interessate, poiché la zona potrebbe essere composta da più cluster. Di conseguenza, alcuni clienti potrebbero non essere interessati da un singolo arresto anomalo del cluster. Consigliamo vivamente di adottare architetture multi-zonali per ridurre al minimo l'impatto delle interruzioni.

Reti condivise e zone virtualizzate

Le reti Virtual Private Cloud (VPC) sono reti virtualizzate che forniscono connettività tra le risorse all'interno di un progetto. Più progetti possono condividere una rete VPC per abilitare la connettività tra progetti e un'organizzazione può eseguire il peering di una rete VPC condivisa per abilitare la connettività tra organizzazioni. Il nostro algoritmo di mappatura della virtualizzazione delle zone tenta di assegnare la stessa mappa zona-cluster a tutti i progetti che condividono una rete VPC o estendono la loro rete VPC tramite il peering VPC. Questo vale anche quando i progetti si trovano in organizzazioni Google Cloud diverse. Man mano che la complessità della rete aumenta con il numero di progetti e VPC, mantenere una mappatura delle zone coerente diventa più difficile e pertanto non può essere garantita.

Passaggi successivi