Volumes et Stockage 20 min de lecture

PersistentVolumeClaims et StorageClass

PersistentVolumeClaim (PVC)

Un PVC est une demande de stockage par un utilisateur. Kubernetes lie automatiquement le PVC a un PV disponible.

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: data-claim
spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 5Gi

Utiliser un PVC dans un Pod

spec:
  containers:
  - name: app
    image: postgres
    volumeMounts:
    - name: data
      mountPath: /var/lib/postgresql/data
  volumes:
  - name: data
    persistentVolumeClaim:
      claimName: data-claim

StorageClass

Les StorageClass permettent le provisioning dynamique de volumes.

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: fast-ssd
provisioner: kubernetes.io/aws-ebs
parameters:
  type: gp3
  iops: "3000"

PVC avec StorageClass

spec:
  accessModes:
  - ReadWriteOnce
  storageClassName: fast-ssd
  resources:
    requests:
      storage: 10Gi
Access Modes : ReadWriteOnce (1 nœud), ReadOnlyMany (plusieurs nœuds lecture), ReadWriteMany (plusieurs nœuds ecriture).