Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Kubernetes NFS PersistentVolumeClaim has status Pending

I am trying to configure my Kubernetes cluster to use a local NFS server for persistent volumes.

I set up the PersistentVolume as follows:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: hq-storage-u4
  namespace: my-ns
spec:
  capacity:
    storage: 10Ti
  accessModes:
    - ReadWriteMany
  persistentVolumeReclaimPolicy: Retain
  nfs:
    path: /data/u4
    server: 10.30.136.79
    readOnly: false

The PV looks OK in kubectl

$ kubectl get pv
NAME            CAPACITY   ACCESSMODES   RECLAIMPOLICY   STATUS     CLAIM             STORAGECLASS   REASON    AGE
hq-storage-u4   10Ti       RWX           Retain          Released   my-ns/pv-50g                               49m

I then try to create the PersistentVolumeClaim:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: pvc-50gb
  namespace: my-ns
spec:
  accessModes:
  - ReadWriteMany
  resources:
     requests:
       storage: 5Gi

Kubectl shows the pvc status is Pending

$ kubectl get pvc
NAME       STATUS    VOLUME    CAPACITY   ACCESSMODES   STORAGECLASS   AGE
pvc-50gb   Pending                                                     16m

When I try to add the volume to a deployment, I get the error:

[SchedulerPredicates failed due to PersistentVolumeClaim is not bound: "pvc-50gb", which is unexpected., SchedulerPredicates failed due to PersistentVolumeClaim is not bound: "pvc-50gb", which is unexpected., SchedulerPredicates failed due to PersistentVolumeClaim is not bound: "pvc-50gb", which is unexpected.]

How to I get the pvc to a working state?

like image 777
zoidberg Avatar asked Oct 28 '25 05:10

zoidberg


1 Answers

It turned out that I needed to put the IP (I also put the path) in quotes. After fixing that, the pvc goes to status Bound, and the pod can mount correctly.

like image 103
zoidberg Avatar answered Oct 29 '25 20:10

zoidberg