Questa pagina descrive il funzionamento di Google Distributed Cloud, incluse informazioni su infrastruttura, hardware, archiviazione e funzionalità di networking.
Google Distributed Cloud è costituito dai seguenti componenti:
- L'infrastruttura Distributed Cloud. Google fornisce, esegue il deployment e gestisce l'hardware Distributed Cloud, inclusa la gestione remota da parte di un team Google dedicato.
- Il servizio Distributed Cloud. Questo servizio ti consente di gestire i cluster e i pool di nodi Distributed Cloud utilizzando Google Cloud CLI e l'API Distributed Cloud Edge Container.
I cluster Distributed Cloud sono registrati nel tuo parco risorse e puoi utilizzare lo strumento a riga di comando Kubernetes
kubectlper interagire con loro.
Infrastruttura Distributed Cloud
Google fornisce, esegue il deployment, gestisce e mantiene un rack di hardware dedicato che esegue la tua zona Distributed Cloud. Questo hardware è costituito da server montati su rack e due switch top-of-rack (ToR) che interconnettono le macchine con la tua rete locale. I nodi Distributed Cloud che eseguono i tuoi carichi di lavoro vengono eseguiti esclusivamente su questo hardware.
L'hardware esegue un numero di nodi raggruppati in pool di nodi, che puoi assegnare ai cluster all'interno della zona Distributed Cloud. Puoi configurare la tua rete in modo che i carichi di lavoro in esecuzione sui cluster Distributed Cloud siano disponibili solo per gli utenti locali o accessibili da internet. Puoi anche configurare la rete in modo da consentire solo ai nodi Distributed Cloud di utilizzare le risorse locali o di comunicare con i carichi di lavoro, ad esempio le istanze di macchine virtuali (VM) di Compute Engine e i pod Kubernetes in esecuzione in una rete Virtual Private Cloud (VPC) tramite una connessione di rete Cloud VPN sicura a una rete VPC.
Gestione di Distributed Cloud
I nodi Distributed Cloud non sono risorse autonome e devono rimanere connessi a Google Cloud per la gestione e il monitoraggio del piano di controllo. I nodi del control plane Distributed Cloud sono ospitati nella regione Google Cloud designata. I nodi Distributed Cloud on-premise richiedono una connessione di rete costante a Google Cloud.
Google gestisce da remoto le macchine fisiche e gli switch ToR che costituiscono l'installazione di Distributed Cloud. Ciò include l'installazione di aggiornamenti software e patch di sicurezza e la risoluzione dei problemi di configurazione. L'amministratore di rete può anche monitorare l'integrità e le prestazioni dei cluster e dei nodi Distributed Cloud e collaborare con Google per risolvere eventuali problemi.
Dopo che Google ha eseguito il deployment dell'hardware Distributed Cloud nella posizione designata, l'amministratore del cluster può iniziare a configurare il cluster Distributed Cloud in modo simile a un cluster Kubernetes convenzionale. Possono assegnare macchine a pool di nodi e pool di nodi a cluster e concedere l'accesso ai proprietari delle applicazioni in base ai requisiti dei loro ruoli. L'amministratore del cluster deve, tuttavia, tenere presente i limiti di elaborazione e archiviazione delle macchine nel rack Distributed Cloud e pianificare di conseguenza la configurazione del cluster e del workload.
Distributed Cloud fornisce un'API per la configurazione di cluster e node pool.
Accesso alla zona Distributed Cloud
Puoi configurare la rete per consentire il livello di accesso desiderato alla tua zona Distributed Cloud, sia dalla rete locale sia da internet.
Puoi anche concedere alla tua zona Distributed Cloud l'accesso ai serviziGoogle Cloud connettendola alla tua rete VPC. Distributed Cloud utilizza Cloud VPN per connettersi agli endpoint di servizio Google. L'amministratore di rete deve configurare la rete per consentirlo.
Personas di Distributed Cloud
Le seguenti figure sono coinvolte nel deployment e nel funzionamento della tua zona Distributed Cloud:
Tecnico sul campo di Google. Consegna, installa e attiva l'hardware Distributed Cloud nella posizione designata. L'amministratore di rete collabora con i tecnici Google per collegare l'hardware alla fonte di alimentazione e alla rete.
Google site reliability engineer (SRE). Monitora e gestisce l'hardware Distributed Cloud. Ciò include la risoluzione dei problemi di configurazione, l'installazione di patch e aggiornamenti e la manutenzione della sicurezza.
Amministratore di rete. Configura e gestisce la connettività di rete e controllo dell'accessoo tra l'hardware Distributed Cloud e la tua rete locale. Ciò include la configurazione delle regole di routing e firewall per garantire che tutti i tipi di traffico di rete richiesti possano fluire liberamente tra l'hardware Distributed Cloud, Google Cloud, i client che utilizzano i carichi di lavoro Distributed Cloud, i repository di dati interni ed esterni e così via. L'amministratore di rete deve avere accesso alla console Google Cloud per monitorare lo stato delle macchine Distributed Cloud. L'amministratore di rete configura anche le funzionalità di rete Distributed Cloud.
Amministratore cluster. Esegue il deployment e la manutenzione dei cluster Distributed Cloud all'interno della tua organizzazione. Ciò include la configurazione di autorizzazioni, logging e provisioning dei carichi di lavoro per ogni cluster. L'amministratore del cluster assegna i nodi ai node pool e i node pool ai cluster Distributed Cloud. L'amministratore del cluster deve comprendere le differenze operative tra il cluster Distributed Cloud e un cluster Kubernetes tradizionale, ad esempio le funzionalità di elaborazione e archiviazione dell'hardware Distributed Cloud, per configurare e distribuire correttamente i workload.
Proprietario dell'applicazione. Un ingegnere software responsabile dello sviluppo e/o del deployment e del monitoraggio di un'applicazione in esecuzione su un cluster Distributed Cloud. I proprietari delle applicazioni che possiedono applicazioni su un cluster Distributed Cloud devono comprendere i limiti di dimensioni e posizione dei cluster, nonché le conseguenze del deployment di un'applicazione all'edge, come prestazioni e latenza.
Hardware Distributed Cloud
La Figura 1 mostra una tipica configurazione di Distributed Cloud.
I componenti di un'installazione di Distributed Cloud sono i seguenti:
Google Cloud. Il traffico tra l'installazione di Distributed Cloud e Google Cloud include il traffico di gestione hardware, il traffico del control plane e il traffico Cloud VPN verso i servizi Google Cloude i carichi di lavoro che esegui lì. Può includere anche il traffico VPC, se applicabile.
Internet. Il traffico di gestione e del control plane criptato tra l'installazione di Distributed Cloud e Google Cloud viene trasferito su internet. Distributed Cloud non supporta le connessioni a internet tramite proxy.
Rete locale. La rete locale esterna al rack Distributed Cloud che connette i router edge di peering a internet.
Router edge di peering. I router di rete locale che si interfacciano con gli switch ToR di Distributed Cloud. A seconda della posizione fisica che scegli per l'installazione di Distributed Cloud, i router di peering edge possono essere di proprietà e gestiti dalla tua organizzazione o dalla tua struttura di colocation. Devi configurare questi router per utilizzare il protocollo Border Gateway Protocol (BGP) per il peering con gli switch ToR e annunciare una route predefinita all'hardware Distributed Cloud. Devi anche configurare questi router, nonché tutti i firewall corrispondenti, per consentire il traffico di gestione dei dispositivi di Google, il traffico del control plane Distributed Cloud e il traffico Cloud VPN, se applicabile.
A seconda dei requisiti della tua attività, puoi configurare questi router come segue:
- Consenti ai nodi Distributed Cloud di accedere a internet utilizzando la Network Address Translation (NAT) pubblica o l'esposizione diretta a indirizzi IP pubblici.
- Consenti una connessione VPN alla tua rete VPC e a tutti i serviziGoogle Cloud che preferisci.
Switch top-of-rack (ToR). Gli switch di livello 3 che collegano le macchine all'interno del rack e si interfacciano con la tua rete locale. Questi switch sono speaker BGP e gestiscono il traffico di rete tra il rack Distributed Cloud e le tue apparecchiature di rete locali. Si connettono ai router di peering perimetrali utilizzando i bundle Link Aggregation Control Protocol (LACP).
Macchine. Le macchine fisiche che eseguono il software Distributed Cloud ed eseguono i tuoi carichi di lavoro. Ogni macchina fisica è un nodo all'interno del cluster Distributed Cloud.
Servizio Distributed Cloud
Il servizio Distributed Cloud viene eseguito su Google Cloud e funge da control plane per i nodi e i cluster in esecuzione sull'hardware Distributed Cloud. Distributed Cloud deve essere in grado di connettersi a Google Cloud in qualsiasi momento e non può funzionare senza questa connessione.
Questo control plane crea un'istanza e configura la tua zona Distributed Cloud. Il data center Google specifico a cui si connette l'hardware Distributed Cloud per la gestione viene scelto in base alla sua vicinanza all'installazione di Distributed Cloud.
Una zona Distributed Cloud è costituita da diverse macchine pari al numero di macchine fisiche installate nel rack Distributed Cloud. Puoi assegnare queste macchine, istanziate come nodi Kubernetes, a un pool di nodi e il pool di nodi a un cluster Distributed Cloud.
La Figura 2 mostra l'organizzazione logica delle entità Distributed Cloud.
Le entità sono le seguenti:
Google Cloud region. La Google Cloud regione per la tua zona Distributed Cloud è determinata dalla posizione del data center Google più vicino alla tua installazione Distributed Cloud.
Control plane Kubernetes cloud. Il piano di controllo Kubernetes per ogni cluster Distributed Cloud viene eseguito per impostazione predefinita in remoto in un data center Google nella regione Google Cloud a cui è assegnato il cluster Distributed Cloud. In questo modo, Distributed Cloud può usufruire di un control plane sicuro e ad alta disponibilità senza occupare capacità di elaborazione sulle macchine fisiche Distributed Cloud.
Control plane locale di Kubernetes. A partire dalla versione 1.5.0 di Google Distributed Cloud, hai la possibilità di configurare un cluster Distributed Cloud in modo che utilizzi un control plane locale anziché il control plane cloud predefinito. Un cluster del control plane locale può entrare in modalità di sopravvivenza quando la connessione a Google Cloud viene temporaneamente persa, consentendo ai tuoi workload di continuare a essere eseguiti finché la connessione non viene ripristinata. Per saperne di più, vedi Modalità di sopravvivenza.
Zona Distributed Cloud. Un'astrazione logica che rappresenta l'hardware Distributed Cloud installato nel rack Distributed Cloud. Una zona Distributed Cloud copre un singolo rack di hardware Distributed Cloud. Le macchine fisiche nella zona vengono istanziate come macchine Distributed Cloud nella console Google Cloud . Le macchine in una zona Distributed Cloud condividono una singola infrastruttura di rete o un singolo dominio di errore. Google crea le tue macchine prima di consegnare l'hardware Distributed Cloud. Non puoi creare, eliminare o modificare le macchine Distributed Cloud.
Nodo. Un nodo è una risorsa Kubernetes che istanzia una macchina fisica Distributed Cloud nel realm Kubernetes quando crei upool di nodiol, rendendola disponibile per l'esecuzione dei carichi di lavoro assegnando pool di nodiool a un cluster Distributed Cloud. Il piano di controllo Kubernetes per ogni nodo viene eseguito su Google Cloud.
Node pool. Un raggruppamento logico di nodi Distributed Cloud all'interno di una singola zona Distributed Cloud che consente di assegnare nodi Distributed Cloud ai cluster Distributed Cloud.
Cluster. Un cluster Distributed Cloud composto da un control plane e da uno o più pool di nodi.
Connessione VPN. Un tunnel VPN a una rete VPC in esecuzione in un progettoGoogle Cloud . Questo tunnel consente ai tuoi carichi di lavoro Distributed Cloud di accedere alle risorse Compute Engine connesse a quella rete VPC. Prima di poter creare una connessione VPN, devi creare almeno un pool di nodi nella tua zona.
Archiviazione
Distributed Cloud fornisce 3,3 TiB di spazio di archiviazione per macchina fisica nel rack Distributed Cloud. Questo spazio di archiviazione è configurato come volumi logici Linux. Quando crei un cluster, Distributed Cloud crea uno o più PersistentVolume e li espone come volumi a blocchi che puoi assegnare a un carico di lavoro utilizzando PersistentVolumeClaims. Tieni presente che questi PersistentVolume non garantiscono la durabilità dei dati e sono adatti solo ai dati effimeri. Per informazioni sull'utilizzo dei volumi a blocchi, consulta PersistentVolumeClaim che richiede un volume a blocchi non elaborato.
Sicurezza dello spazio di archiviazione
Distributed Cloud utilizza LUKS per criptare lo spazio di archiviazione locale della macchina e supporta le chiavi di crittografia gestite dal cliente (CMEK). Per saperne di più, consulta le best practice per la sicurezza.
Integrazione di Symcloud Storage
Puoi configurare Distributed Cloud in modo che utilizzi Rakuten Symcloud Storage, che funge da livello di astrazione dell'archiviazione locale su ogni nodo Distributed Cloud e rende disponibile l'archiviazione locale ai carichi di lavoro in esecuzione su altri nodi Distributed Cloud.
Per saperne di più, consulta Configura Distributed Cloud per Symcloud Storage.
Networking
Questa sezione descrive i requisiti e le funzionalità di connettività di rete di Distributed Cloud.
Google preconfigura alcuni componenti di rete virtuale Distributed Cloud per l'installazione prima di spedire l'hardware Distributed Cloud. Non puoi modificare le impostazioni preconfigurate dopo la consegna dell'hardware.
La Figura 3 mostra la topologia della rete virtuale Distributed Cloud.
I componenti della rete virtuale Distributed Cloud sono i seguenti:
Rete. Una rete virtuale con uno spazio di indirizzi privati nella tua zona Distributed Cloud. Una rete è isolata a livello 3 dalle altre reti virtuali all'interno della zona e può contenere una o più subnet. La rete virtuale copre tutte le macchine fisiche nel rack Distributed Cloud. Una singola zona Distributed Cloud supporta un massimo di 20 reti.
Subnet. Una subnet VLAN di livello 2 e livello 3 all'interno di una rete Distributed Cloud. Una subnet ha un proprio dominio di trasmissione e uno o più intervalli di indirizzi IPv4 a tua scelta. Le subnet all'interno della stessa rete sono isolate a livello 2, ma possono comunicare tra loro a livello 3. I nodi in subnet diverse all'interno della stessa rete possono comunicare tra loro utilizzando i rispettivi indirizzi IP. Tuttavia, i nodi nelle subnet all'interno di reti diverse non possono comunicare tra loro.
Router. Un'istanza di router virtuale che gestisce il traffico all'interno di una rete Distributed Cloud. L'amministratore di rete utilizza un router per configurare una sessione di peering BGP su un collegamento di interconnessione tra una rete Distributed Cloud e la tua rete locale, in modo che i pod Distributed Cloud possano annunciare i prefissi di rete sulla tua rete locale. Per impostazione predefinita, i router riannunciano le route ricevute dalle subnet di Distributed Cloud. Distributed Cloud supporta un router per rete.
Interconnessione. Un collegamento logico in bundle tra una rete Distributed Cloud e la tua rete locale. Un'interconnessione è costituita da uno o più link fisici. Durante l'avvio iniziale, Google crea gli interconnessioni che hai richiesto quando hai ordinato Distributed Cloud. Le interconnessioni non possono essere create, modificate o rimosse dopo che il rack Distributed Cloud è attivo e funzionante. Per impostazione predefinita, Google crea quattro interconnessioni per fornire alta disponibilità per l'installazione.
Collegamento di interconnessione. Un collegamento virtuale tra un'interconnessione e un router che isola la rete Distributed Cloud corrispondente dalla tua rete locale. Il traffico che scorre attraverso un collegamento di interconnessione può essere non taggato o taggato con un ID VLAN a tua scelta. Crea allegati di interconnessione in base ai requisiti aziendali.
I componenti di rete di Distributed Cloud condividono somiglianze con i loro equivalenti Google Cloud con le seguenti differenze:
I componenti di rete di Distributed Cloud sono locali alla zona Distributed Cloud in cui vengono istanziati.
Una rete Distributed Cloud non ha connettività diretta a una rete VPC.
Per impostazione predefinita, le reti Distributed Cloud non hanno connettività tra loro in diverse zone Distributed Cloud. Hai la possibilità di configurare esplicitamente il networking tra zone.
L'amministratore di rete configura i componenti di rete Distributed Cloud, ad eccezione degli interconnessioni, che vengono configurati da Google prima della spedizione dell'hardware Distributed Cloud.
L'amministratore di rete deve disporre del ruolo Edge Network Admin (roles/edgenetwork.admin) nel progetto di destinazione Google Cloud , mentre gli sviluppatori di applicazioni che eseguono il deployment dei carichi di lavoro su Distributed Cloud devono disporre del ruolo Edge Network Viewer (roles/edgenetwork.viewer) nel progetto di destinazione Google Cloud .
Connettività alla rete locale
Per il traffico in uscita verso le risorse della tua rete locale, i pod in un cluster Distributed Cloud utilizzano le route predefinite annunciate dai router edge di peering. Distributed Cloud utilizza il NAT integrato per connettere i pod a queste risorse.
Per il traffico in entrata dalle risorse sulla tua rete locale, l'amministratore di rete deve configurare criteri di routing che corrispondano ai requisiti aziendali per controllare l'accesso ai pod in ciascuno dei tuoi cluster Distributed Cloud. Ciò significa, come minimo, completare i passaggi descritti in Configurazione del firewall e configurare policy aggiuntive in base ai requisiti dei tuoi carichi di lavoro. Ad esempio, puoi configurare criteri di autorizzazione/negazione per singole subnet di nodi o indirizzi IP virtuali esposti dal bilanciatore del carico integrato in Distributed Cloud. I blocchi CIDR di Distributed Cloud Pod e Distributed Cloud Service non sono direttamente accessibili.
Connettività a internet
Per il traffico in uscita verso le risorse su internet, i pod in un cluster Distributed Cloud utilizzano la route predefinita annunciata dai router agli switch ToR di Distributed Cloud. Ciò significa, come minimo, completare i passaggi descritti in Configurazione firewall e configurare ulteriori criteri in base ai requisiti dei tuoi carichi di lavoro. Distributed Cloud utilizza la NAT integrata per connettere i pod a queste risorse. Se vuoi, puoi configurare un tuo livello di NAT sopra il livello integrato in Distributed Cloud.
Per il traffico in entrata, devi configurare i router WAN in base ai requisiti della tua attività. Questi requisiti determinano il livello di accesso che devi fornire da internet pubblico ai pod nei tuoi cluster Distributed Cloud. Distributed Cloud utilizza il NAT integrato per i blocchi CIDR dei pod e i blocchi CIDR di gestione dei servizi, pertanto questi blocchi CIDR non sono accessibili da internet.
Connettività a una rete VPC
Distributed Cloud include una soluzione VPN integrata che ti consente di connettere un cluster Distributed Cloud direttamente a un'istanza VPC se questa si trova nello stesso progettoGoogle Cloud del cluster Distributed Cloud.
Se utilizzi Cloud Interconnect per connettere la tua rete locale a un'istanza VPC, i tuoi cluster Distributed Cloud possono raggiungere l'istanza utilizzando il peering eBGP standard in direzione nord. I router di peering edge devono essere in grado di raggiungere i prefissi VPC appropriati e i router Cloud Interconnect devono annunciare correttamente i prefissi Distributed Cloud, ad esempio le subnet di bilanciamento del carico, gestione e sistema Distributed Cloud.
Dopo aver stabilito una connessione VPN tra il cluster Distributed Cloud e la rete VPC, per impostazione predefinita si applicano le seguenti regole di connettività:
- La tua rete VPC può accedere a tutti i pod nel cluster Distributed Cloud.
- Tutti i pod nel cluster Distributed Cloud possono accedere a tutti i pod nei cluster VPC nativi. Per i cluster basati sulle route, devi configurare manualmente le route annunciate personalizzate.
- Tutti i pod nel cluster Distributed Cloud possono accedere alle subnet delle macchine virtuali nella tua rete VPC.
Connettività con Google Cloud API e servizi
Dopo aver configurato una connessione VPN alla tua rete VPC, i carichi di lavoro in esecuzione nell'installazione di Distributed Cloud possono accedere ad API e servizi. Google Cloud
Se le esigenze della tua attività lo richiedono, puoi configurare anche le seguenti funzionalità:
- Accesso privato Google per accedere alle API e ai servizi Google Cloud
- Private Service Connect per utilizzare endpoint di servizio privati per accedere alle API Google Cloud
Sicurezza della rete
I requisiti aziendali e le norme di sicurezza di rete della tua organizzazione dettano i passaggi necessari per proteggere il traffico di rete in entrata e in uscita dalla tua installazione di Distributed Cloud. Per saperne di più, consulta le best practice per la sicurezza.
Altre funzionalità di networking
Distributed Cloud supporta le seguenti funzionalità di networking:
Supporto di rete ad alte prestazioni
Distributed Cloud supporta l'esecuzione di carichi di lavoro che richiedono le migliori prestazioni di networking possibili. A questo scopo, Distributed Cloud viene fornito con un operatore di funzioni di rete specializzato e un insieme di CustomResourceDefinitions (CRD) di Kubernetes che implementano le funzionalità richieste per l'esecuzione di carichi di lavoro ad alte prestazioni.
Distributed Cloud supporta anche la virtualizzazione delle interfacce di rete utilizzando SR-IOV.
Supporto dei carichi di lavoro delle macchine virtuali
Distributed Cloud può eseguire carichi di lavoro in macchine virtuali oltre che in container. Per saperne di più, consulta Gestire le macchine virtuali.
Per scoprire in che modo le macchine virtuali fungono da componente essenziale della piattaforma Google Distributed Cloud, consulta Estendere GKE Enterprise per gestire le VM edge on-premise.
Supporto dei workload GPU
Distributed Cloud può eseguire carichi di lavoro basati su GPU sulle GPU NVIDIA Tesla T4. Devi specificare questo requisito quando ordini l'hardware Distributed Cloud. Per saperne di più, consulta Gestire i carichi di lavoro GPU.