Cette page explique comment définir la StorageClass par défaut d'un cluster GKE sur Bare Metal.
Présentation
GKE sur Bare Metal peut s'intégrer au stockage de blocs ou de fichiers via l'un des mécanismes suivants:
StorageClass par défaut
Lorsque vous demandez un espace de stockage à l'aide d'un objet PersistentVolumeClaim (PVC), vous pouvez spécifier une ressource StorageClass. Si vous ne spécifiez pas de ressource StorageClass, la ressource StorageClass par défaut est utilisée si celle-ci est configurée dans le cluster. GKE sur Bare Metal ne configure pas de StorageClass par défaut. Par exemple, supposons que vous créiez un objet PVC qui ne spécifie pas de ressource StorageClass. Le contrôleur de volume traite la revendication en fonction de la ressource StorageClass par défaut.
Modifier la StorageClass par défaut
En tant qu'administrateur de cluster, vous souhaiterez peut-être modifier la classe de stockage par défaut. Ainsi, toutes les requêtes de stockage qui ne spécifient pas de StorageClass seront traitées en fonction de la ressource StorageClass de votre choix. Cette section décrit la procédure à suivre pour modifier la valeur par défaut.
Déployer un nouveau système de stockage
Vous pouvez déployer un nouveau système de stockage et tous les composants logiciels permettant d'intégrer le nouveau mécanisme de stockage à un cluster Kubernetes. Par exemple, vous devrez peut-être installer un pilote CSI dans le cluster.
Marquer toute ressource StorageClass définie par défaut comme étant non définie par défaut
Recherchez dans votre cluster la ressource StorageClass par défaut, s'il elle existe, et marquez-la comme ne correspondant pas à la valeur par défaut. Pour obtenir des instructions, consultez la section Modifier la ressource StorageClass par défaut.
Créer une ressource StorageClass
Créez un fichier manifeste pour une nouvelle ressource StorageClass.
Incluez l'annotation storageclass.kubernetes.io/is-default-class: "true"
.
Exemple :
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: annotations: storageclass.kubernetes.io/is-default-class: "true" ... name: my-storage-class ... parameters: ... provisioner: [MY_PROVISIONER] ...
Enregistrez votre fichier manifeste sous forme de fichier YAML, puis créez la ressource StorageClass :
kubectl --kubeconfig [CLUSTER_KUBECONFIG] apply -f [MANIFEST_FILE]
où [MANIFEST_FILE] est le chemin d'accès au fichier manifeste de votre nouvelle ressource StorageClass.