nfs provisioner too old and needs an update
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Kubernetes Worker Charm |
Triaged
|
Medium
|
Unassigned |
Bug Description
I followed this page [1] to set up nfs with my k8s 1.25.
However the nfs client provisioner is too old and deprecated.
When creating a pvc, it is always pending.
Checking the provisioner log, it is complaining about selfLink being empty.
E0331 06:53:31.562497 1 controller.go:1004] provision "controller-
This issue [2] suggests we can fix that by adding "--feature-
But the value RemoveSelfLink is always true from 1.24 [3][4] and can't be set to false.
So according to some comments of [2] I changed to "gcr.io/
It seems nfs-subdir-
My deployment looks like [6], and my storage class is like [7].
Please update templates/
[1] https:/
[2] https:/
[3] https:/
[4] https:/
[5] https:/
[6] https:/
[7] https:/
Indeed, the nfs provisioner in kubernetes-worker is ancient and poorly maintained. The nfs-subdir- external- provisioner that you deployed seems like a fine replacement. I suspect that the NFS CSI driver[1] might be a better long term solution.
I also think that kubernetes-worker should not be responsible for this. I recommend we deprecate the NFS provisioner in kubernetes-worker and replace it with a better alternative (maybe a new charm) that deploys an external NFS provisioner.
[1]: https:/ /github. com/kubernetes- csi/csi- driver- nfs