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 EBS AWS utilizzando la risorsa StorageClass. 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.
L'Container Storage Interface (CSI)
è un'API standard aperta che consente ai carichi di lavoro Kubernetes di accedere ai sistemi di archiviazione conformi. CSI consente anche l'utilizzo di funzionalità di archiviazione moderne come il ridimensionamento e gli snapshot.
Dopo aver installato un driver CSI, devi creare una risorsa Kubernetes StorageClass. Imposta il driver CSI come provisioner per la risorsa StorageClass. Poi puoi impostare la risorsa StorageClass come predefinita, o configurare i carichi di lavoro per utilizzarla. Per un esempio di come creare uno StatefulSet con una risorsa StorageClass personalizzata, consulta Utilizzo di StorageClass con i 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 del 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 una risorsa StorageClass personalizzata che faccia riferimento al driver nel campo
provisioner.Per eseguire il provisioning dello spazio di archiviazione, puoi:
- Fare riferimento alla risorsa StorageClass nella
StatefulSet's
volumeClaimTemplatesdi uno StatefulSet. - Impostarla come risorsa StorageClass predefinita del cluster.
- Fare riferimento alla risorsa StorageClass nella
StatefulSet's
Considerazioni per la risorsa StorageClass supportata da un driver CSI
Quando crei una risorsa StorageClass, tieni presente quanto segue:
Consulta la documentazione del driver CSI per parametri specifici del driver che fornisci alla risorsa StorageClass, incluso il nome del provisioner.
Dovresti assegnare alla risorsa StorageClass un nome in base alle sue proprietà (ad esempio
fastohighly-replicated), anziché in base al nome del driver o dell'appliance specifici sottostanti. Quando assegni un nome a una risorsa StorageClass in base alle sue proprietà, puoi creare risorse StorageClass con lo stesso nome in cluster e ambienti diversi. Quindi configura i carichi di lavoro per utilizzare la stessa risorsa StorageClass.
Passaggi successivi
- Crea una risorsa StorageClass che faccia riferimento al driver CSI.