Questo argomento spiega come installare un driver di archiviazione Container Storage Interface (CSI) sui tuoi cluster.
Panoramica
Per impostazione predefinita, GKE su AWS esegue il provisioning di volumi EBS AWS utilizzando il valore predefinito di StorageClass. Se i carichi di lavoro richiedono l'utilizzo di un altro tipo di volume di archiviazione, puoi installare un driver CSI compatibile per consentire l'accesso.
Container Storage Interface
(CSI) è un'API standard aperta che consente ai carichi di lavoro Kubernetes di accedere a sistemi di archiviazione conformi. CSI consente inoltre l'utilizzo di moderne funzionalità di archiviazione, come il ridimensionamento e gli snapshot.
Dopo aver installato un driver CSI, devi creare un oggetto StorageClass di Kubernetes. Imposta il driver CSI come provisioner per StorageClass. Quindi puoi impostare StorageClass come predefinito o configurare i tuoi carichi di lavoro per l'utilizzo dell'oggetto StorageClass. Per un esempio di come creare uno StatefulSet con un oggetto StorageClass personalizzato, consulta Utilizzo di StorageClass con i carichi di lavoro.
Installa il driver CSI di un fornitore
È responsabilità dei fornitori di servizi di archiviazione fornire istruzioni di installazione per i driver CSI. Consulta l'elenco dei driver CSI nella documentazione di CSI.
Segui le istruzioni di installazione del driver CSI e poi continua con i passaggi successivi in questa pagina.
Verifica l'installazione del driver
Dopo aver installato un driver CSI, puoi verificare l'installazione eseguendo questi 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:
Creare un oggetto StorageClass personalizzato che faccia riferimento al driver nel campo
provisioner
.Per eseguire il provisioning dello spazio di archiviazione, puoi:
- Riferimento al valore StorageClass nella specifica
volumeClaimTemplates
di uno StatefulSet. - Impostalo come StorageClass predefinito del cluster.
- Riferimento al valore StorageClass nella specifica
Considerazioni relative a StorageClass supportato da un driver CSI
Quando crei un oggetto StorageClass, considera quanto segue:
Controlla la documentazione del driver CSI per conoscere i parametri specifici del driver forniti a StorageClass, incluso il nome del provisioner.
Devi assegnare un nome all'oggetto StorageClass in base alle sue proprietà (come
fast
ohighly-replicated
), anziché in base al nome del driver o dell'appliance specifico alla base. Quando assegni un nome a un oggetto StorageClass in base alle sue proprietà, puoi creare oggetti StorageClass con lo stesso nome in cluster e ambienti diversi. Quindi, configura i carichi di lavoro in modo che utilizzino lo stesso oggetto StorageClass.
Passaggi successivi
- Crea un oggetto StorageClass che faccia riferimento al driver CSI.