Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes删除hostPath创建的持久VOULME_Kubernetes_Persistent Volumes_Persistent Volume Claims - Fatal编程技术网

Kubernetes删除hostPath创建的持久VOULME

Kubernetes删除hostPath创建的持久VOULME,kubernetes,persistent-volumes,persistent-volume-claims,Kubernetes,Persistent Volumes,Persistent Volume Claims,我在docker桌面上创建了一个PV和一个PVC,即使移除了PV和PVC,文件仍然保留。当我重新创建它时,它会将相同的mysql数据库附加到新的POD上。如何手动删除主机路径创建的文件?我想一种方法是在偏好中重新设置Kubernetes,但必须有另一种更少核的选择 apiVersion: v1 kind: PersistentVolume metadata: name: mysql-pv-volume labels: type: local spec: storageClas

我在docker桌面上创建了一个PV和一个PVC,即使移除了PV和PVC,文件仍然保留。当我重新创建它时,它会将相同的mysql数据库附加到新的POD上。如何手动删除主机路径创建的文件?我想一种方法是在偏好中重新设置Kubernetes,但必须有另一种更少核的选择

apiVersion: v1
kind: PersistentVolume
metadata:
  name: mysql-pv-volume
  labels:
    type: local
spec:
  storageClassName: manual
  capacity:
    storage: 20Gi
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Delete
  hostPath:
    path: "/mnt/data"
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: mysql-pv-claim2
spec:
  storageClassName: manual
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 20Gi

hostPath
卷只是节点文件系统之一上的文件夹(在本例中为
/mnt/data
)。您只需从承载卷的节点中删除该文件夹。

根据“…
回收
回收策略对卷执行基本清理(
rm-rf/thevolume/*
),并使其再次可用于新的声明”,“…目前,只有NFS和HostPath支持回收”。所以,试着改变一下

persistentVolumeReclaimPolicy: Delete


如果您定义了任何需要检查的pod节点关联性。然后找出pod所在的节点。删除
PVC
an
PV
,然后从/mnt/data目录中删除数据

kubectl获得吊舱-o宽| grep

在这里,您将看到它被安排在哪个节点上

kubectl delete deploy或statefulset

kubectl获得pv、pvc

kubectl删除pv

kubectl删除pvc

现在转到该节点并从
/mnt/data

还有一种方法,您可以定义
persistentVolumeReclaimPolicy

要想
保留
删除

这一部分是有意义的,我被卡住的地方是如何到达节点?我知道windows docker在hyper-v的linux虚拟机上运行。碰巧知道它在macOS中从何处运行?@duffney我不熟悉这些系统,你知道你的节点上是否安装了ssh吗?我不这么认为,我无法通过kubeclt cmds显示的名称和IP访问。我用docker的姿势摆出来。必须有一种方法来访问docker desktop内部创建的软管。我用docker desktop找到了一个很好的解决方案。如果使用/tmp或使用docker for desktop创建新的共享驱动器,则可以进入并手动删除文件。我原以为删除卷时会删除数据,但本地卷和主机路径卷的情况并非如此。
persistentVolumeReclaimPolicy: Recycle