a persistent volume is a volume that is not delete when a pods is down
ci dessous un example de pv sur du stockage local
apiVersion: v1
kind: PersistentVolume
metadata:
name: local-pv # name of the pv
spec:
capacity:
storage: 10Gi # size of the storage
accessModes:
- ReadWriteOnce # un seul pods peut ecrire sur le stockage
persistentVolumeReclaimPolicy: Retain # quand le pvc est delete le volume est conservé
storageClassName: local-storage # le type de classs de stockage ici local
local:
path: /mnt/disque1/mysql-data # Chemin local sur le nœud
nodeAffinity:
required:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/hostname
operator: In
values:
- nom-du-noeud
this type of pv is not a godd practice cause de storage is not for all the node
a good practice is to use pv with HA storage like nfs ceph ....
apiVersion: v1
kind: PersistentVolume
metadata:
name: mysql-pv
spec:
capacity:
storage: 5Gi
accessModes:
- ReadWriteMany # many pods can write or read the data
nfs:
server: 192.168.1.108 # IP de ton serveur NFS
path: /nfs/mysql-portfolio # sous-dossier sur le partage NFS
persistentVolumeReclaimPolicy: Retain