Publié le : 03/06/2023 à 03:40

Comparaison des PersistentVolumes et PersistentVolumeClaims, et leur relation avec les StorageClass dans Kubernetes

Introduction

Présentation des concepts PV, PVC et StorageClass dans Kubernetes

PersistentVolume (PV)

Rôle et utilisation des PersistentVolumes dans Kubernetes

Définition

Un PersistentVolume (PV) est une ressource de stockage réelle dans le cluster Kubernetes. Il représente une ressource physique, comme un disque réseau ou un disque cloud, disponible pour les applications du cluster.

Administration et configuration

Les administrateurs créent et gèrent les PVs manuellement ou automatiquement via des StorageClass. Un PV contient des spécifications de capacité, type de stockage (par exemple, NFS, disque cloud), et paramètres d'accès.

PersistentVolumeClaim (PVC)

Fonction et caractéristiques des PersistentVolumeClaims

Définition

Un PersistentVolumeClaim (PVC) est une demande de stockage persistante faite par une application ou un pod. Il définit les besoins de stockage, tels que la capacité et le mode d'accès, qu'une application peut utiliser.

Association avec un PV

Lorsqu'un PVC est créé, Kubernetes recherche un PV disponible qui correspond aux exigences de la PVC. Une fois associé, le PV est réservé à ce PVC tant qu'il est utilisé par une application.

StorageClass

Rôle des StorageClass dans la gestion dynamique des PV

Définition de StorageClass

Une StorageClass est une ressource Kubernetes définissant des paramètres de provisionnement pour le stockage dynamique. Elle permet d’automatiser la création de PVs en fonction des besoins des PVCs.

Provisionnement dynamique

Les StorageClass facilitent le provisionnement dynamique en créant automatiquement un PV lorsqu'une PVC correspond à cette StorageClass. Cela élimine le besoin de créer manuellement des PVs.

Configuration d'une StorageClass

Les StorageClass incluent des paramètres comme le `provisioner` (le plugin de stockage), `reclaimPolicy` (politique de suppression du volume après utilisation) et `allowVolumeExpansion` (pour autoriser le redimensionnement).

PV vs PVC vs StorageClass

Interaction entre PersistentVolumes, PersistentVolumeClaims et StorageClass

Processus de provisionnement

Lorsqu'une PVC avec une StorageClass spécifique est créée, Kubernetes utilise la StorageClass pour provisionner dynamiquement un PV qui satisfait les critères de la PVC. Ce PV est ensuite associé à la PVC.

Gestion du cycle de vie

Une fois la PVC supprimée, la `reclaimPolicy` de la StorageClass détermine le traitement du PV. Par exemple, `Delete` supprime le PV, tandis que `Retain` le conserve pour réutilisation.
Lien copié dans le presse-papiers !