保留持久卷并使用PV进行新的Helm安装

时间:2019-03-22 13:19:49

标签: mongodb kubernetes persistence kubernetes-helm kubernetes-pvc

在我的Mongo Helm Chart中,我正在使用PVC作为持久性卷。我正在使用图表安装Mongo。当我删除图表时,我的PV被删除。因此,我找到了一些修补程序。

kubectl patch pv <your-pv-name> -p '{"spec":{"persistentVolumeReclaimPolicy":"Retain"}}'

此后,仅删除已发布

中的状态就不会删除我的PV
pvc-fc29a491-499a-11e9-a426-42010a800ff9   8Gi        RWO            Retain           Released      default/myapp-mongodb           standard                 3d

如何将该PV绑定到新的头盔图安装上,以便即使删除头盔图后我的数据也应保持不变?

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

我找到了一种解决方法。我创建了一个独立于头盔图表的PVC,并且仅在我的deployment.yaml文件中使用了它。
如果有现有的索赔,请使用现有的索赔,否则创建一个新的索赔。

 {{- if .Values.persistence.enabled }}
      {{- if .Values.persistence.existingClaim }}
        persistentVolumeClaim:
          claimName: {{ .Values.persistence.existingClaim }}
      {{- else}}
        persistentVolumeClaim:
          claimName: {{ (include "mongodb.fullname" .) }}
      {{- end}}