Un cluster utente creato con Google Distributed Cloud (solo software) per VMware ha una o più StorageClass e uno di questi è designato come StorageClass predefinito. Questa pagina mostra come impostare il valore predefinito di StorageClass per un cluster utente. Per maggiori informazioni informazioni, consulta la sezione Archiviazione.
Questa pagina è rivolta agli specialisti di Storage che configurano e gestiscono lo spazio di archiviazione le prestazioni, l'utilizzo e le spese. Per scoprire di più sui ruoli comuni ed esempi a cui facciamo riferimento nei contenuti di Google Cloud, Ruoli e attività utente comuni di GKE Enterprise.
Trovare la classe di archiviazione predefinita
Elenca tutti i tipi di archiviazione:
kubectl --kubeconfig USER_CLUSTER_KUBECONFIG get storageclasses
Nell'output, puoi vedere quale StorageClass è predefinito. Ad esempio, nel
risultato seguente puoi vedere che un oggetto StorageClass denominato standard-rwo
è
la StorageClass predefinita:
standard kubernetes.io/vsphere-volume standard-rwo (default) csi.vsphere.vmware.com
Quando richiedi l'archiviazione, puoi specificare un oggetto StorageClass. Se non specifichi un oggetto StorageClass, viene utilizzato il valore predefinito. Ad esempio, supponiamo che crea un PersistentVolumeClaim che non specifica un oggetto StorageClass. Il controller del volume soddisferà la rivendicazione in base alla StorageClass predefinita.
Modifica della classe di archiviazione predefinita
In qualità di amministratore del cluster, potresti voler modificare la classe di archiviazione predefinita. Quindi tutte le richieste per l'archiviazione che non specificano un valore da soddisfare in base al livello di archiviazione di tua scelta. Questa sezione descrive la procedura per modificare l'impostazione predefinita.
Esegui il deployment di un nuovo sistema di archiviazione
Esegui il deployment di un nuovo sistema di archiviazione e di eventuali componenti software per l'integrazione del nuovo meccanismo di archiviazione con un cluster Kubernetes. Ad esempio, potresti dover installare un driver CSI nel cluster.
Questo passaggio dipende dal fornitore di servizi di archiviazione che utilizzi. Per i conducenti CSI, i fornitori deve fornire istruzioni per eseguire il deployment del driver CSI in un ambiente in un cluster Kubernetes. La documentazione di un driver CSI deve includere anche i parametri specifici del driver che fornisci in StorageClass, incluso il nome del provisioner.
Quando crei un StorageClass per la nuova appliance, devi assegnare un nome al StorageClass in base alle relative proprietà (ad esempio "veloce" o "molto replicato"), anziché al nome del driver o dell'appliance specifico sottostante. In questo modo sarà più facile definire criteri di archiviazione coerenti tra i cluster ambienti cloud-native.
Rimuovi l'annotazione predefinita dalla classe di archiviazione predefinita
Apri StorageClass predefinito in un editor di testo:
kubectl --kubeconfig [USER_CLUSTER_KUBECONFIG] edit storageclass \ DEFAULT_STORAGE_CLASS
Nell'editor di testo, rimuovi la porzione
Annotazione storageclass.kubernetes.io/is-default-class: "true"
. Chiudi il
editor di testo.
Per verificare che l'annotazione sia stata rimossa, inserisci questo comando:
kubectl --kubeconfig [USER_CLUSTER_KUBECONFIG] get storageclass \ DEFAULT_STORAGE_CLASS --output yaml
Crea un nuovo oggetto StorageClass
Crea un manifest per un nuovo oggetto StorageClass.
Includi l'annotazione storageclass.kubernetes.io/is-default-class: "true"
.
Ad esempio:
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: annotations: storageclass.kubernetes.io/is-default-class: "true" ... name: my-storage-class ... parameters: ... provisioner: [MY_PROVISIONER] ...
Salva il manifest come file YAML e crea il nuovo StorageClass:
kubectl --kubeconfig [CLUSTER_KUBECONFIG] apply -f [MANIFEST_FILE]
dove [MANIFEST_FILE] è il percorso del nuovo manifest StorageClass .