Panoramica di Storage per i cluster GKE


Questo documento illustra le opzioni di archiviazione supportate da GKE e alcune considerazioni chiave per selezionare l'opzione migliore per le tue esigenze aziendali.

GKE supporta le integrazioni e i tipi di archiviazione seguenti:

Archiviazione a blocchi (Persistent Disk)

I volumi dei Persistent Disk sono dispositivi di archiviazione di rete durevoli gestiti da Compute Engine a cui i cluster GKE possono accedere come se si trattasse di dischi fisici su un computer o un server. Quando i cluster richiedono ulteriore spazio di archiviazione, puoi collegare più volumi di Persistent Disk ai nodi o ridimensionare i volumi di Persistent Disk esistenti. Puoi consentire a GKE di eseguire il provisioning dinamico dei PersistentVolume supportati da Persistent Disk oppure puoi eseguire il provisioning manuale dei dischi.

Questa opzione di archiviazione è supportata nei cluster GKE Autopilot e Standard.

Per impostazione predefinita, i volumi dei Persistent Disk sono risorse di zona (conservate in una singola zona all'interno di una regione). Puoi creare volumi di Persistent Disk a livello di regione (tenuti in due zone nella stessa regione). Puoi anche collegare un volume di Persistent Disk in sola lettura a più nodi contemporaneamente. Questa operazione è supportata per volumi di Persistent Disk a livello di zona e di regione.

L'archiviazione su Persistent Disk su GKE è permanente, il che significa che i dati archiviati sui tuoi dischi continueranno a esistere anche se il pod che lo utilizza viene arrestato.

Perché utilizzare l'archiviazione su Persistent Disk

Puoi utilizzare l'archiviazione su disco permanente se i tuoi cluster richiedono l'accesso a un'archiviazione a blocchi durevole e ad alte prestazioni e a disponibilità elevata. Un volume di un Persistent Disk è in genere collegato a un singolo pod. Questa opzione di archiviazione supporta la modalità di accesso ReadWriteOnce. GKE offre supporto per la configurazione dei volumi di Persistent Disk con una gamma di opzioni di latenza e prestazioni, tra cui:

  • Disco permanente bilanciato: adatto per applicazioni aziendali standard. Questa opzione offre un equilibrio tra prestazioni e costi. È supportato da unità a stato solido (SSD). Questa è l'opzione predefinita per il provisioning del volume dinamico su cluster e nodi che eseguono GKE 1.24 o versioni successive.
  • Disco permanente a prestazioni: adatto per analisi con scale out, database e memorizzazione nella cache permanente. Questa opzione è ideale per carichi di lavoro sensibili alle prestazioni. È supportato da unità a stato solido (SSD).
  • Disco permanente standard: adatto per grandi carichi di lavoro di big data e computing. Questa opzione è il tipo di disco più conveniente. È supportato da dischi rigidi standard (HDD).
  • Extreme Persistent Disk: adatto per applicazioni aziendali come SAP HANA e Oracle. che offre le massime prestazioni per soddisfare le esigenze dei più grandi database in memoria. Supportato da unità a stato solido (SSD). Per le applicazioni critiche per le prestazioni, in cui Persistent Disk non offre prestazioni sufficienti, utilizza i dischi Hyperdisk Extreme.

Per iniziare a utilizzare questa opzione di archiviazione, consulta queste risorse:

Archiviazione a blocchi (Google Cloud Hyperdisk)

I volumi Hyperdisk utilizzano l'archiviazione a blocchi di nuova generazione di Google Cloud. I volumi Hyperdisk consentono di ottimizzare dinamicamente le prestazioni dell'archiviazione a blocchi in base al carico di lavoro. Puoi configurare le operazioni di I/O al secondo (IOPS) e la velocità effettiva in modo indipendente per le tue applicazioni e adattarti alle mutevoli esigenze di prestazioni nel tempo.

Questa opzione di archiviazione è supportata nei cluster GKE Autopilot e Standard. I volumi Hyperdisk sono risorse di zona, soggette a disponibilità a livello regionale. L'archiviazione Hyperdisk su GKE è permanente, ovvero i dati archiviati sui tuoi dischi continueranno a esistere anche se il pod che lo utilizza viene arrestato.

Perché utilizzare l'archiviazione Hyperdisk

Utilizza l'archiviazione Hyperdisk se hai bisogno di ridimensionare e regolare dinamicamente IOPS o velocità effettiva. Un volume Hyperdisk è in genere collegato a un singolo pod. Questa opzione di archiviazione supporta la modalità di accesso a ReadWriteOnce. In base alle tue esigenze di rapporto prezzo/prestazioni, puoi scegliere tra le seguenti opzioni di archiviazione Hyperdisk per GKE:

  • Velocità effettiva Hyperdisk: ottimizzata per una velocità effettiva elevata ed economica, con velocità effettiva fino a 3 GB/s (dimensione I/O ≥128 kB). Questa è una buona opzione se il tuo caso d'uso ha come target l'analisi con scale out (ad esempio Hadoop o Kafka), per il ripristino di dati freddi da server di backup e per carichi di lavoro sensibili ai costi orientati alla velocità effettiva. Questa opzione di archiviazione è supportata sui cluster GKE Autopilot e Standard.
  • Hyperdisk Extreme: ottimizzato per le prestazioni IOPS, con oltre 320.000 IOPS con provisioning e velocità effettiva di oltre 4,8 GB/s. È una buona opzione se stai eseguendo il deployment di carichi di lavoro ad alte prestazioni, come i sistemi di gestione dei database. Questa opzione di archiviazione è supportata solo per i cluster Standard.

Per iniziare a utilizzare questa opzione di archiviazione, consulta queste risorse:

Archiviazione a blocchi temporanea e non elaborata (SSD locale)

I dischi SSD locali sono unità fisiche collegate direttamente ai nodi. Possono offrire un rendimento migliore, ma sono temporanei. Ogni volume SSD locale è collegato a un nodo specifico. Non puoi spostare il volume su un nodo diverso.

Questa opzione di archiviazione è supportata sui cluster GKE Standard. Il supporto della modalità Autopilot per gli SSD locali è disponibile in anteprima sulle macchine A2 Ultra A100, su cluster e pool di nodi che eseguono GKE 1.27 e versioni successive.

L'archiviazione temporanea supportata dall'archiviazione SSD locale su GKE è legata al ciclo di vita di un pod. Quando il pod viene arrestato, viene eliminato anche lo spazio di archiviazione temporaneo associato al pod.

Perché utilizzare l'SSD locale

L'utilizzo dell'archiviazione SSD locale nei cluster GKE è ideale se hai bisogno di memorizzazione nella cache hot per database e per analisi in tempo reale o archiviazione temporanea ottimizzata per Flash con latenze più basse. L'archiviazione SSD locale può essere particolarmente efficace come livello di memorizzazione nella cache per i casi d'uso di AI/ML, elaborazione batch, analisi e database in memoria.

Per iniziare a utilizzare questa opzione di archiviazione, consulta queste risorse:

Archiviazione di file

Filestore fornisce un file system condiviso basato su cloud per i dati non strutturati, con accesso al file system di rete (NFS). Le istanze Filestore funzionano come file server su Google Cloud e forniscono uno spazio di archiviazione durevole con accesso ReadWriteMany per i tuoi cluster GKE. Le istanze Filestore sono disaccoppiate dall'host e richiedono operazioni manuali minime. I failover dei carichi di lavoro sono senza interruzioni perché non occorrono operazioni dell'infrastruttura per collegare o scollegare volumi.

Questa opzione di archiviazione è supportata nei cluster GKE Autopilot e Standard. Lo spazio di archiviazione Filestore con il livello di servizio enterprise viene impostato in modo predefinito sulla disponibilità a livello regionale, mentre gli altri livelli di servizio hanno una disponibilità a livello di zona. L'archiviazione Filestore su GKE è permanente, vale a dire che i dati archiviati nelle tue istanze rimarranno invariati anche se il pod che lo utilizza viene arrestato.

Perché utilizzare l'archiviazione Filestore

Utilizza l'archiviazione Filestore se le tue applicazioni richiedono l'accesso al file system di rete (NFS) e più lettori e scrittori. Questa opzione di archiviazione è adatta se il tuo caso d'uso prevede sistemi di gestione dei contenuti, migrazione delle applicazioni, analisi dei dati, rendering ed elaborazione di contenuti multimediali.

Per una maggiore efficienza in termini di costi, Filestore multishares per GKE consente di condividere un'istanza di livello enterprise di Filestore di almeno 10 GiB con un massimo di 80 PersistentVolume.

Per iniziare a utilizzare questa opzione di archiviazione, consulta queste risorse:

Archiviazione di oggetti (Cloud Storage FUSE)

Cloud Storage è un archivio di oggetti per dati binari e di oggetti, BLOB e dati non strutturati. Il driver CSI di Cloud Storage FUSE gestisce l'integrazione di Cloud Storage FUSE con le API Kubernetes per utilizzare i bucket Cloud Storage esistenti come volumi. Puoi utilizzare il driver CSI di Cloud Storage FUSE per montare i bucket come file system sui nodi GKE.

Il driver CSI di Cloud Storage FUSE supporta le modalità di accesso ReadWriteMany, ReadOnlyMany e ReadWriteOnce sui cluster GKE Autopilot e Standard. Gli oggetti di Cloud Storage hanno disponibilità a livello di regione. I dati di Cloud Storage su GKE sono permanenti, ovvero i dati archiviati nei tuoi bucket rimarranno invariati anche se il pod che li utilizza viene arrestato.

Perché utilizzare Cloud Storage FUSE

L'opzione Cloud Storage FUSE è adatta se hai bisogno della semantica del file davanti a Cloud Storage per garantire la portabilità. Cloud Storage FUSE è inoltre una scelta comune per gli sviluppatori che vogliono archiviare e accedere all'addestramento di machine learning (ML) e modellare i dati come oggetti in Cloud Storage.

Per iniziare a utilizzare questa opzione di archiviazione, consulta queste risorse:

Database gestiti

Un database gestito, come Cloud SQL o Spanner, offre un overhead operativo ridotto ed è ottimizzato per l'infrastruttura di Google Cloud. La manutenzione e il funzionamento dei database gestiti richiedono un impegno minore rispetto a un database di cui esegui il deployment direttamente in Kubernetes.

Perché utilizzare i database gestiti

L'utilizzo di un database gestito di Google Cloud consente ai carichi di lavoro stateful su GKE di accedere ai dati permanenti, automatizzando al contempo le attività di manutenzione come backup, patch e scalabilità. Puoi creare un database e la tua app, e lasciare che sia Google Cloud a scalarla. Tuttavia, ciò significa anche che potresti non avere accesso alla versione esatta di un database, a un'estensione o alla versione esatta del database che vuoi.

GKE fornisce il supporto per la connessione ai servizi di database gestiti di Google Cloud, tra cui:

Per iniziare a utilizzare questa opzione di archiviazione, consulta queste risorse:

Artefatti build (Artifact Registry)

Artifact Registry è un gestore di repository per immagini container, pacchetti di sistemi operativi e pacchetti di linguaggio creati e distribuiti da te.

Perché utilizzare Artifact Registry

Artifact Registry è un'opzione adatta per l'archiviazione di immagini container private, grafici Helm e altri artefatti delle build.

Per eseguire il pull di immagini dai repository Docker di Artifact Registry a GKE, consulta Eseguire il deployment in Google Kubernetes Engine nella documentazione di Artifact Registry.

Passaggi successivi