Les fichiers manifestes suivants décrivent les champs de pilote CSI compatibles dans les ressources StorageClass et Persistent Volume.
Classe de stockage
Le fichier manifeste suivant inclut tous les champs compatibles dans la classe de stockage.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: lustre-csi-example-storage-class
provisioner: lustre.csi.storage.gke.io
parameters:
network: VPC_NETWORK # optional
filesystem: LUSTRE_FILESYSTEM_NAME # optional
labels: KEY_1=VALUE_1,KEY_2=VALUE_2,...,KEY_N=VALUE_N # optional
description: DESCRIPTION # optional
perUnitStorageThroughput: 125 | 250 | 500 | 1000 # required
volumeBindingMode: WaitForFirstConsumer | Immediate # default is Immediate
allowedTopologies:
- matchLabelExpressions:
- key: topology.gke.io/zone
values:
- ZONE_1
- ZONE_2
mountOptions:
- LUSTRE_MOUNT_OPTIONS
Remplacez les valeurs suivantes :
network(facultatif) : réseau de cloud privé virtuel (VPC) dans lequel créer l'instance Managed Lustre. Si cette propriété n'est pas spécifiée, le réseau par défaut est utilisé.Pour créer une instance Managed Lustre dans un réseau VPC partagé, vous devez fournir le nom complet du réseau. Par exemple,
projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME.filesystem: spécifie lefsnamede l'instance Managed Lustre. Ce paramètre est utilisé pour le provisionnement dynamique. Lefsnamedoit être une chaîne alphanumérique de huit caractères maximum, commençant par un caractère alphabétique. Si vous ne fournissez pas de valeur, le pilote CSI génère unfsnameau format"lfsNNNNN"(par exemple,"lfs97603").labels(facultatif) : Managed Lustre est compatible avec les libellés par instance, sous forme de mappage de paires clé/valeur. Le pilote CSI Managed Lustre vous permet d'associer des libellés fournis par l'utilisateur à l'instance.description(facultatif) : description de l'instance. Doit comporter 2 048 caractères ou moins.perUnitStorageThroughput: spécifie le débit de stockage par unité (Mo/s/Tio) pour l'instance. Les valeurs acceptées sont125,250,500et1000. La valeur par défaut est1000.allowTopologies(facultatif) : les instances Managed Lustre sont des ressources zonales. Si cette propriété n'est pas spécifiée, l'instance Managed Lustre est créée dans la même zone que le pod de pilote de contrôleur CSI, et le mode de liaison de volume est défini par défaut surImmediate.Si
WaitForFirstConsumerest spécifié, la topologie est définie sur l'emplacement où le pod est planifié. Toutefois, ce paramètre peut entraîner le blocage des pods pendant qu'ils attendent qu'un volume soit provisionné.Le pilote CSI Managed Lustre est compatible avec la fonctionnalité de topologie pour s'assurer que les volumes persistants et les pods sont placés dans les topologies autorisées, en fonction de la topologie fournie dans la StorageClass.
mountOptions(facultatif) : spécifie les options d'installationmount.lustre. Les volumes Managed Lustre héritent de ces options d'installation de la StorageClass dans le champpv.spec.mountOptions.
Volume persistant
Le fichier manifeste suivant inclut tous les champs compatibles dans le volume persistant.
apiVersion: v1
kind: PersistentVolume
metadata:
name: preprov-pv
annotations:
pv.kubernetes.io/provisioned-by: lustre.csi.storage.gke.io
spec:
mountOptions:
- LUSTRE_MOUNT_OPTIONS
...
storageClassName: ""
capacity:
storage: CAPACITY
accessModes:
- ReadWriteMany
persistentVolumeReclaimPolicy: Retain
volumeMode: Filesystem
csi:
driver: lustre.csi.storage.gke.io
volumeHandle: EXISTING_LUSTRE_INSTANCE_NAME
volumeAttributes:
ip: EXISTING_LUSTRE_IP_ADDRESS
filesystem: EXISTING_LUSTRE_FSNAME
Remplacez les valeurs suivantes :
capacity.storage: capacité de l'instance Managed Lustre. Reportez-vous à la section Niveaux de performances pour connaître les capacités minimales et maximales d'instance compatibles.mountOptions: spécifie les options d'installationmount.lustre. Cette valeur est héritée du champmountOptionsdans la StorageClass.csi.volumeHandle: identifiant exclusif pour une instance Managed Lustre. Doit utiliser le format suivant : PROJECT_ID/LOCATION/INSTANCE_NAME.csi.volumeAttributes.ip: adresse IP de l'instance Managed Lustre, utilisée pour l'installation.csi.volumeAttributes.filesystem: nom du système de fichiers de l'instance Managed Lustre, qui est un identifiant de huit caractères.