Panoramica delle opzioni di archiviazione
Crea spazio di archiviazione permanente per i carichi di lavoro in esecuzione su GKE su Azure con oggetti Kubernetes.
Spazio di archiviazione del control plane
Quando crei un cluster, GKE su Azure esegue il provisioning dei dischi LRS SSD Premium per il control plane e i volumi etcd.
Utilizzare l'archiviazione permanente nei carichi di lavoro GKE su Azure
In GKE su Azure, 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 Azure.
StorageClass
I cluster hanno una StorageClass Kubernetes predefinita che esegue il provisioning dinamico dell'archiviazione stateful per i carichi di lavoro sui volumi di Azure Disk Storage (AzureDisk). Puoi anche utilizzare una StorageClass diversa per eseguire il provisioning di altri tipi di volumi. Queste opzioni sono descritte nella sezione seguente.
Account di archiviazione di Azure
GKE su Azure crea automaticamente un account di archiviazione Azure quando viene creato un cluster. Se vuoi utilizzare un account di archiviazione specifico, crea una classe di archiviazione personalizzata.
Configura lo storage del cluster
Se vuoi eseguire il provisioning dei volumi di archiviazione con un oggetto StorageClass non predefinito, puoi creare un nuovo StorageClass in un cluster che utilizza parametri diversi o un driver di archiviazione diverso. Dopodiché, puoi impostare StorageClass come predefinita del cluster o configurare i carichi di lavoro in modo che utilizzino StorageClass. Ad esempio, puoi utilizzare un StatefulSet per impostare un nome StorageClass specifico.
Archiviazione dischi Azure (AzureDisk)
GKE su Azure gestisce
i volumi Azure Disk
con
azuredisk-csi-driver
.
La versione del driver CSI è associata a una versione di GKE su Azure Kubernetes.
Quando esegui l'upgrade della versione del cluster, GKE su Azure aggiorna automaticamente la versione del driver. Questa versione è in genere l'ultimo driver
disponibile al momento del rilascio della versione di GKE su Azure. Il tipo di volume
Kubernetes legacy kubernetes.io/azure-disk
non è
supportato.
Il driver preinstallato con GKE su Azure fornisce le seguenti StorageClass per impostazione predefinita:
standard-rwo
(impostazione predefinita): utilizzato per il provisioning dei dischi SSD standard di Azure con LRSpremium-rwo
: Utilizzato per il provisioning di dischi Azure SSD Premium con LRS
I volumi di dischi Azure supportano la modalità di accesso ReadWriteOnce di Kubernetes.
Snapshot volume
Puoi utilizzare la risorsa VolumeSnapshot per creare snapshot dei volumi di archiviazione. Poi puoi provisionare nuovi volumi permanenti da questi snapshot.
Clonazione del volume
Puoi utilizzare la clonazione dei volumi CSI per clonare i volumi disco Azure esistenti. Per saperne di più, consulta l'esempio di clonazione del volume.
Ridimensionamento del volume
Puoi ridimensionare i volumi di dischi Azure scollegati con il ridimensionamento dei volumi. Per saperne di più, consulta l'esempio di ridimensionamento del volume. Il ridimensionamento mentre il volume è collegato e montato non è supportato.
Dischi condivisi Azure
Per i carichi di lavoro progettati per coordinare le scritture su un disco a blocchi non elaborati condiviso, GKE su Azure supporta i dischi condivisi di Azure. Per saperne di più, consulta Disco condiviso(lettura/scrittura multimodale) nella documentazione di CSI per i dischi Azure.
Archiviazione file di Azure (AzureFile)
GKE su Azure gestisce
i volumi di Azure Files
con il
azurefile-csi-driver
Il driver CSI è associato a una versione di GKE su Azure Kubernetes. 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 Azure. Il tipo di volume Kubernetes
kubernetes.io/azure-file
legacy non è supportato.
Il driver preinstallato con GKE su Azure fornisce le seguenti StorageClass per impostazione predefinita:
- standard-rwx: utilizzato per il provisioning SSD standard condivisioni file Azure con LRS
- premium-rwx: utilizzato per il provisioning delle condivisioni file Azure SSD premium con LRS
I volumi di file Azure utilizzano la modalità di accesso ReadWriteMany di Kubernetes.
Snapshot volume
Puoi utilizzare la risorsa VolumeSnapshot per creare snapshot dei volumi di Azure Files. Per saperne di più, consulta la documentazione della funzionalità di snapshot di Azure File. Per ripristinare uno snapshot, utilizza il portale Azure. Per saperne di più, vedi Panoramica degli snapshot delle condivisioni per Azure Files.
Ridimensionamento del volume
Puoi ridimensionare i volumi di File Azure con il ridimensionamento dei volumi. Per saperne di più, consulta l'esempio di ridimensionamento del volume.
Driver di archiviazione aggiuntivi
Altri sistemi di archiviazione di terze parti possono essere utilizzati con GKE su Azure tramite driver CSI (Container Storage Interface) di terze parti (opzione consigliata) 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 sviluppatori CSI di Kubernetes. GKE su Azure supporta CSI v1.x.
Per utilizzare un driver CSI nel cluster, devi installare il 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 impostarlo come StorageClass predefinita.
Driver di archiviazione specifici di Azure
Con GKE su Azure è possibile utilizzare i seguenti driver di volume:
GKE su Azure non gestisce direttamente l'archiviazione
Blob
di Azure. Puoi installare manualmente il driver CSI
blob-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
- Scopri di più sull'utilizzo di StorageClasses con i tuoi carichi di lavoro.
- Importa un volume di dischi Azure esistente in GKE su Azure.
- Leggi la documentazione del driver CSI Azure Disk o del driver CSI Azure File.
- Scopri di più sugli snapshot dei volumi in GKE.
- Leggi la documentazione sulle StorageClass di Kubernetes.
- Leggi l'annuncio del rilascio dell'interfaccia Container Storage Interface.