如何让多个POD访问Kubernetes中的现有NFS文件夹?

如何让多个POD访问Kubernetes中的现有NFS文件夹?,kubernetes,nfs,Kubernetes,Nfs,我在网络上有一个TFRecords文件夹,我想将其公开给多个POD。该文件夹已通过NFS导出 我尝试创建一个持久卷,然后创建一个持久卷声明。但是,这只是在NFS装载中创建了一个文件夹,我不希望这样。相反,我想访问包含TFRecords的文件夹 我已经列出了PV和PVC的清单 apiVersion: v1 kind: PersistentVolume metadata: name: nfs-tfrecord-pv spec: capacity: storage: 30Gi ac

我在网络上有一个TFRecords文件夹,我想将其公开给多个POD。该文件夹已通过NFS导出

我尝试创建一个持久卷,然后创建一个持久卷声明。但是,这只是在NFS装载中创建了一个文件夹,我不希望这样。相反,我想访问包含TFRecords的文件夹

我已经列出了PV和PVC的清单

apiVersion: v1
kind: PersistentVolume
metadata:
  name: nfs-tfrecord-pv
spec:
  capacity:
    storage: 30Gi
  accessModes:
    - ReadWriteMany
  persistentVolumeReclaimPolicy: Retain
  nfs:
    path: /media/veracrypt1/
    server: 1.2.3.4
    readOnly: false

我想出来了。问题是我用错误的方式看待问题。我不需要任何资源调配。相反,只需在容器中装载NFS卷:

kind: Pod
apiVersion: v1
metadata:
  name: pod-using-nfs
spec:
  containers:
    - name: app
      image: alpine
      volumeMounts:
      - name: data
        mountPath: /mnt/data
      command: ["/bin/sh"]
      args: ["-c", "sleep 500000"]
  volumes:
  - name: data
    nfs:
      server: 1.2.3.4
      path: /media/foo/DATA

是否在群集上安装了nfs客户端供应器?是。所有的pod都可以看到共享的空文件夹。那么你在nfs根目录的配置中设置了什么路径呢。例如,默认值为
/srv
我将其设置为/mmt/data
kind: Pod
apiVersion: v1
metadata:
  name: pod-using-nfs
spec:
  containers:
    - name: app
      image: alpine
      volumeMounts:
      - name: data
        mountPath: /mnt/data
      command: ["/bin/sh"]
      args: ["-c", "sleep 500000"]
  volumes:
  - name: data
    nfs:
      server: 1.2.3.4
      path: /media/foo/DATA