使用client-go k8s调用Delete Pod,...时如何删除pvc的子路径文件夹

问题描述

我使用k8s / client-go库来控制和开发我的应用程序(https://github.com/kubernetes/client-go)。

使用持久卷声明的子路径时出现问题。 例如,我有两个容器,并将每个容器的数据装入永久卷声明(ORG1/DIR1)上的2个子路径ORG2/DIR2efs file上,详情如下:

apiVersion: v1
kind: Pod
metadata:
  name: my-lamp-site
spec:
    containers:
    - name: mysql
      image: mysql
      env:
      - name: MYSQL_ROOT_PASSWORD
        value: "rootpasswd"
      volumeMounts:
      - mountPath: /var/lib/mysql
        name: site-data
        subPath: ORG1/DIR1
    - name: php
      image: php:7.0-apache
      volumeMounts:
      - mountPath: /var/www/html
        name: site-data
        subPath: ORG1/DIR2
    volumes:
    - name: site-data
      persistentVolumeClaim:
        claimName: hpc-vinhha-test

当我打电话删除此Pod时,当前k8s仅删除pod,而核心lib并未删除persistent volume claim上pod的数据。因此,PVC的数据将变得越来越垃圾,变得越来越大。

删除广告连播后,我想删除子路径ORG1/DIR1ORG1/DIR2中的所有数据。

这是pvc的文件Yaml:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"v1","kind":"PersistentVolumeClaim","metadata":{"annotations":{},"name":"efs-claim","namespace":"default"},"spec":{"accessModes":["ReadWriteMany"],"resources":{"requests":{"storage":"5Gi"}},"storageClassName":"efs-sc"}}
    pv.kubernetes.io/bind-completed: "yes"
    pv.kubernetes.io/bound-by-controller: "yes"
  creationTimestamp: "2020-07-10T04:02:51Z"
  finalizers:
  - kubernetes.io/pvc-protection
  name: efs-claim
  namespace: default
  resourceVersion: "887409"
  selfLink: /api/v1/namespaces/default/persistentvolumeclaims/efs-claim
  uid: ab66c2f7-744c-4d6f-a508-2bc90f0b1897
spec:
  accessModes:
  - ReadWriteMany
  resources:
    requests:
      storage: 5Gi
  storageClassName: efs-sc
  volumeMode: Filesystem
  volumeName: efs-pv-shared
status:
  accessModes:
  - ReadWriteMany
  capacity:
    storage: 5Gi
  phase: Bound

所以,您能帮我解决这个问题吗?因为我是k8s和aws-efs的新手。所以,我对此没有太多经验:(

非常感谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...