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

问题描述 投票:0回答:2

在我的Mongo Helm Chart中,我使用PVC作为Persistence卷。我正在使用图表来安装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绑定到我的新helm图表安装,以便即使在删除我的Helm Chart后我的数据仍应保持不变?

mongodb kubernetes persistence kubernetes-helm kubernetes-pvc
2个回答

0
投票

我找到了一个解决方法。我创建了一个独立于头盔图的PVC,并在deployment.yaml文件中使用它。 如果存在现有声明,则只使用现有声明,否则创建新声明。

 {{- if .Values.persistence.enabled }}
      {{- if .Values.persistence.existingClaim }}
        persistentVolumeClaim:
          claimName: {{ .Values.persistence.existingClaim }}
      {{- else}}
        persistentVolumeClaim:
          claimName: {{ (include "mongodb.fullname" .) }}
      {{- end}}  
© www.soinside.com 2019 - 2024. All rights reserved.