Introduction


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

PersistentVolume (PV)


Rôle et utilisation des PersistentVolumes dans Kubernetes

  1. 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.



  2. 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

  1. 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.



  2. 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

  1. 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.



  2. 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.

  3. 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

  1. 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.



  2. 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.

Date de publication: 2023-06-03T09:40:00+08:00
Date de modification: 2024-11-29T09:40:04
Auteur:
  • Martin LEKPA : Tech Lead et formateur Observabilité