如何让多个 pods 访问 Kubernetes 中的现有 NFS 文件夹?
How to have multiple pods access an existing NFS folder in Kubernetes?
我在网络上有一个 TFRecords 文件夹,我想将其公开给多个 pods。该文件夹已通过 NFS 导出。
我尝试创建一个持久卷,然后创建一个持久卷声明。但是,这只是在 NFS 挂载中创建了一个文件夹,这是我不想要的。相反,我想让 Pod 访问 带有 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
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: nfs-tfrecord-pvc
namespace: default
spec:
accessModes:
- ReadWriteMany
storageClassName: nfs-tfrecord
resources:
requests:
storage: 1Gi
我明白了。问题是我以错误的方式看待问题。我不需要任何 配置 。相反,需要的是简单地将 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
我在网络上有一个 TFRecords 文件夹,我想将其公开给多个 pods。该文件夹已通过 NFS 导出。
我尝试创建一个持久卷,然后创建一个持久卷声明。但是,这只是在 NFS 挂载中创建了一个文件夹,这是我不想要的。相反,我想让 Pod 访问 带有 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
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: nfs-tfrecord-pvc
namespace: default
spec:
accessModes:
- ReadWriteMany
storageClassName: nfs-tfrecord
resources:
requests:
storage: 1Gi
我明白了。问题是我以错误的方式看待问题。我不需要任何 配置 。相反,需要的是简单地将 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