情境:我的PVC有问题。我需要用舵图来更新我们的监控。但是我们没有舵,所以我们必须使用舵机模板来创建我们的yaml文件,这样我们就能够用kubectl部署它。我们有时需要更新我们的舵机图表,所以我们需要经常重复这个过程。
问题:使用"Kubectl delete -f FILE_WITH_YAMLS.yaml && Kubectl create -f FILE_WITH_YAMLS.yaml ",它删除所有内容,甚至删除我们的PVC (+ PV)。但我不想删除PVC。
解决方案: 1.我的想法是禁止在我们的PVC上删除,这样我们就得到了删除它的警告。根据这一点:Kubernetes: Can't delete PersistentVolumeClaim (pvc)应该可以设置
Finalizers: [kubernetes.io/pvc-protection]但这不管用..。
我的PVC表单集群如下所示:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
annotations:
pv.kubernetes.io/bind-completed: "yes"
pv.kubernetes.io/bound-by-controller: "yes"
volume.beta.kubernetes.io/storage-provisioner: cinder.csi.openstack.org
creationTimestamp: "2020-05-11T07:15:11Z"
finalizers:
- kubernetes.io/pvc-protection
labels:
app: prometheus
chart: prometheus-10.4.0
component: server
heritage: Tiller
release: monitoring
name: monitoring-prometheus-server
namespace: monitoring
resourceVersion: "114848084"
selfLink: /api/v1/namespaces/monitoring/persistentvolumeclaims/monitoring-prometheus-server
uid: 3430de7d-d167-41c7-92cc-eb15803cdca7
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 15Gi
storageClassName: cinder
volumeMode: Filesystem
volumeName: pvc-3430de7d-d167-41c7-92cc-eb15803cdca7
status:
accessModes:
- ReadWriteOnce
capacity:
storage: 15Gi
phase: Bound谢谢你的帮助!
发布于 2020-05-11 12:29:57
我没有尝试这个解决方案,但可能会work.Label您想要删除的资源,比如delete=true ..etc。
之后,在delete命令中指定标签如下
kubectl delete -f *.yaml -l delete=truehttps://stackoverflow.com/questions/61725577
复制相似问题