Questo argomento spiega come installare un driver di archiviazione Container Storage Interface (CSI) sui cluster.
Panoramica
Per impostazione predefinita, GKE su AWS esegue il provisioning dei volumi AWS EBS utilizzando l'oggetto StorageClass predefinito. Se i tuoi carichi di lavoro devono utilizzare un altro tipo di volume di archiviazione, puoi installare un driver CSI compatibile per fornire l'accesso.
Container Storage Interface
(CSI)
è un'API standard aperta che consente ai workload Kubernetes di accedere a sistemi di archiviazione conformi. CSI consente inoltre l'utilizzo di funzionalità di archiviazione moderne come
il ridimensionamento e gli snapshot.
Dopo aver installato un driver CSI, devi creare una StorageClass di Kubernetes. Hai impostato il driver CSI come provisioner per StorageClass. Poi puoi impostare StorageClass come predefinita o configurare i tuoi carichi di lavoro in modo che la utilizzino. Per un esempio di come creare un StatefulSet con una StorageClass personalizzata, consulta Utilizzo di StorageClasses con i tuoi carichi di lavoro.
Installare il driver CSI di un fornitore
I fornitori di spazio di archiviazione sono responsabili della fornitura delle istruzioni di installazione per i propri driver CSI. Consulta l'elenco dei driver CSI nella documentazione CSI.
Segui le istruzioni di installazione per il driver CSI, quindi continua con i passaggi successivi in questa pagina.
Verificare l'installazione del driver
Dopo aver installato un driver CSI, puoi verificarne l'installazione eseguendo i seguenti comandi.
kubectl get csinodes \
-o jsonpath='{range .items[*]} {.metadata.name}{": "} {range .spec.drivers[*]} {.name}{"\n"} {end}{end}'
Come utilizzare un driver CSI
Per utilizzare un driver CSI:
Crea un oggetto StorageClass personalizzato che fa riferimento al driver nel campo
provisioner
.Per eseguire il provisioning dello spazio di archiviazione, puoi:
- Fai riferimento a StorageClass in una specifica
volumeClaimTemplates
di StatefulSet. - Impostala come StorageClass predefinita del cluster.
- Fai riferimento a StorageClass in una specifica
Considerazioni per StorageClass supportata da un driver CSI
Quando crei una StorageClass, tieni presente quanto segue:
Consulta la documentazione del driver CSI per i parametri specifici del driver che fornisci a StorageClass, incluso il nome del provisioner.
Devi denominare StorageClass in base alle sue proprietà (ad esempio
fast
ohighly-replicated
), anziché in base al nome del driver o dell'appliance specifici. Quando assegni un nome a una StorageClass in base alle sue proprietà, puoi creare StorageClass con lo stesso nome in cluster e ambienti diversi. Poi configura i tuoi carichi di lavoro in modo che utilizzino la stessa StorageClass.
Passaggi successivi
- Crea una StorageClass che faccia riferimento al driver CSI.