【发布时间】:2019-06-10 10:23:13
【问题描述】:
我有一个关于 Kubernetes 的问题。自动升级节点时,相关数据库被清除,这是什么原因?谢谢。
【问题讨论】:
标签: kubernetes yaml google-kubernetes-engine
我有一个关于 Kubernetes 的问题。自动升级节点时,相关数据库被清除,这是什么原因?谢谢。
【问题讨论】:
标签: kubernetes yaml google-kubernetes-engine
this answer 上对问题可能原因的解释似乎是正确的。默认情况下,回收策略设置为 删除。
我无法在 volumeClaimTemplates.spec 级别更改设置(我收到此错误:unknown field "persistentVolumeReclaimPolicy" in io.k8s.api.core.v1.PersistentVolumeClaimSpec)。
我发现允许的是通过定位并运行 existing PV 来更改回收策略:
kubectl patch pv <pv-name> -p '{"spec":{"persistentVolumeReclaimPolicy":"Retain"}}'
您还可以使用所需的reclaim policy 为新的 PV 或 PVC 创建一个新的 StorageClass。
【讨论】:
这取决于您的回收政策。 PersistentVolume 的回收策略告诉集群在释放其声明后如何处理该卷。当节点升级发生时,它可能会释放卷。
如果您想保留数据,您应该为您的案例设置零售回收政策。
apiVersion: v1
kind: PersistentVolume
metadata:
name: block-pv
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
【讨论】: