ポッドが削除され、再度デプロイされると、永続ボリュームは既存のデータを保持しません。
Pod が削除されると、マッピングされた永続ボリュームのステータスがReleasedに変わります。後で同じポッドが再デプロイされたとき、同じ既存の PV はAvailable状態ではないため、使用できません。
https://kubernetes.io/docs/concepts/storage/persistent-volumes/#retainで提案されているように、リリースさ
れた PV を削除しようとしましたが、ステータスがAvailableで同じ PV を作成しました。これは再作成された Podにバインドされていますが、古いデータが欠落しています。
ポッドが削除されて再作成されたときに、古いデータで同じ PV を要求するにはどうすればよいですか?
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: local-storage
annotations:
storageclass.kubernetes.io/is-default-class: "true"
provisioner: kubernetes.io/no-provisioner
allowVolumeExpansion: true
volumeBindingMode: WaitForFirstConsumer
-------------------------------
apiVersion: v1
kind: PersistentVolume
metadata:
name: app-pv
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: local-storage
local:
path: /data
nodeAffinity:
required:
nodeSelectorTerms:
- matchExpressions:
- key: role
operator: In
values:
- data