Configurazione della risorsa StorageClass predefinita

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 .

Passaggi successivi