Panoramica delle opzioni di archiviazione

Crea spazio di archiviazione permanente per i carichi di lavoro in esecuzione su GKE su AWS con oggetti Kubernetes.

Utilizzo dell'archiviazione permanente nei workload GKE su AWS

In GKE su AWS, utilizzi le risorse Kubernetes PersistentVolume (PV), PersistentVolumeClaim (PVC) e StorageClass per fornire spazio di archiviazione permanente di file e blocchi ai workload. Puoi creare snapshot dell'archiviazione permanente con le risorse VolumeSnapshot e VolumeSnapshotClass. Gli snapshot vengono archiviati nel tuo account AWS.

StorageClass

I cluster hanno una StorageClass Kubernetes con provisioning dinamico dello spazio di archiviazione stateful per i carichi di lavoro sui volumi AWS Elastic Block Storage (EBS). Puoi anche utilizzare una StorageClass personalizzata per provisionare altri tipi di volumi. Queste opzioni sono descritte nella sezione seguente.

VolumeSnapshotClass

I cluster hanno una VolumeSnapshotClass Kubernetes predefinita che crea snapshot dello spazio di archiviazione stateful sui volumi EBS.

Configurazione dello spazio di archiviazione del cluster

Se vuoi eseguire il provisioning dei volumi di archiviazione con una classe StorageClass non predefinita, puoi creare una classe StorageClass personalizzata in un cluster che utilizza parametri diversi o un driver di archiviazione diverso. Poi, puoi impostare la risorsa StorageClass predefinita o configurare i tuoi carichi di lavoro in modo che utilizzino la risorsa StorageClass. Ad esempio, puoi utilizzare Fai riferimento a StorageClass in un StatefulSet per impostare un nome StorageClass specifico.

Utilizzo delle istantanee del volume

Puoi utilizzare la risorsa VolumeSnapshot per creare snapshot dei volumi di archiviazione. Dopodiché, puoi eseguire il provisioning di nuovi volumi permanenti da questi snapshot. Per saperne di più, consulta Snapshot di un PersistentVolume.

Elastic Block Storage (EBS)

GKE su AWS gestisce i volumi EBS di AWS con aws-ebs-csi-driver.

La versione del driver CSI EBS è associata a una versione di Kubernetes di GKE su AWS. Quando esegui l'upgrade della versione del cluster, la nuova versione del driver viene applicata automaticamente. Questa versione è in genere l'ultimo driver disponibile al momento del rilascio della versione di GKE su AWS.

Il driver preinstallato con GKE su AWS fornisce le seguenti StorageClass per impostazione predefinita:

  • standard-rwo (predefinito): utilizzato per il provisioning dei volumi EBS gp2.
  • premium-rwo: Utilizzato per il provisioning dei volumi EBS io1.

I volumi EBS supportano la modalità di accesso ReadWriteOnce di Kubernetes.

Volumi EBS preesistenti

Puoi eseguire il provisioning dei volumi EBS esistenti nei tuoi carichi di lavoro GKE su AWS. Consulta la sezione Importazione di un volume EBS esistente per esempi su come utilizzare i volumi EBS in GKE su AWS.

Elastic File System (EFS)

GKE su AWS supporta il montaggio di file system EFS e punti di accesso preesistenti. Per saperne di più, consulta Utilizzare un file system EFS.

Opzioni di archiviazione aggiuntive

Altri sistemi di archiviazione di terze parti possono essere utilizzati con GKE su AWS tramite driver CSI (Container Storage Interface) di terze parti (consigliato) o plug-in di volumi Kubernetes in-tree.

Driver CSI

La Container Storage Interface (CSI) è un'API standard aperta che consente a Kubernetes di collegare sistemi di archiviazione arbitrari a carichi di lavoro containerizzati. Un elenco non esaustivo di driver CSI è disponibile nella documentazione per gli sviluppatori di Kubernetes CSI. GKE su AWS supporta CSI v1.x.

Per utilizzare un driver CSI nel cluster, devi installare un driver CSI fornito dal fornitore di spazio di archiviazione. Puoi quindi configurare i carichi di lavoro in modo che utilizzino l'oggetto StorageClass del driver o impostare l'oggetto StorageClass predefinito.

Driver di archiviazione specifici

Con GKE su AWS possono essere utilizzati i seguenti driver di volumi.

FSx for Lustre (FSX)

GKE su AWS non gestisce direttamente i volumi FSx. Puoi installare manualmente il aws-fsx-csi-driver, ma l'assistenza non è disponibile da Google.

Plug-in di volumi in-tree di Kubernetes

Kubernetes viene fornito con plug-in di volumi in-tree (integrati). I driver in-tree supportati includono:

  • configMap
  • emptyDir
  • hostPath
  • nfs
  • previsto
  • secret

Passaggi successivi