Exercise 9.5 - Dynamic provision of a volume
I am following Exercise 9.5 but I cannot get it to work.
$ k get sc NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE nfs-client cluster.local/nfs-subdir-external-provisioner Delete Immediate true 25m
On Step 6 I don't get the PVC:
$ k get pv,pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS VOLUMEATTRIBUTESCLASS AGE persistentvolumeclaim/pvc-one Pending
I suppose I am missing something:
$ k describe pvc Name: pvc-one Namespace: default StorageClass: nfs-client Status: Pending ... Normal ExternalProvisioning 15s (x16 over 3m50s) persistentvolume-controller Waiting for a volume to be created either by the external provisioner 'cluster.local/nfs-subdir-external-provisioner' or manually by the system administrator. If volume creation is delayed, please verify that the provisioner is running and correctly registered.
$ helm list
NAME NAMESPACE REVISION UPDATED STATUS CHART
APP VERSION
nfs-subdir-external-provisioner default 1 2024-10-13 20:54:32.64658104 +0000 UTC deployed nfs-subdir-external-provisioner-4.0
4.0.2
Is there any extra step that I have missed to have a provisioner?
Comments
-
Hello,
You've got the pvc => persistentvolumeclaim/pvc-one. But this pvc can't find a suitable physicalVolume. You need to create one on the nfs server.
0 -
Hi @ilmx,
Make sure that NFS installation and configuration steps have been completed on both cp and worker nodes, per instructions included in lab exercise 9.2.
Also, ensure you are consistent with the naming convention of the NFS server across the entire lab 9 - so either use the
k8scpalias in all steps involved, or the cp-node hostname, or simply use the cp-node private IP address; but do not mix them as they may prevent the provisioner agent from generating the necessary artifacts.Regards,
-Chris0 -
Thanks for the comment but I am still not able to find the issue....
I followed 9.2. The working node can access the NSF directory:
$ showmount -e k8scp Export list for k8scp: /opt/sfw * $ sudo mount k8scp:/opt/sfw /mnt $ ls /mnt/ bigfile default-pvc-one-pvc-d966635f-b195-462d-9030-99e13c2226ef hello.txt
I deleted the
default-pvc-one...directory just in case, but didn't help.
And I have repeated the steps with similar (un)success:$ helm install nfs-subdir-external-provisioner nfs-subdir-external-provisioner/nfs-subdir-external-provisioner --set nfs.server=k8scp --set nfs.path=/opt/sfw/ NAME: nfs-subdir-external-provisioner LAST DEPLOYED: Wed Oct 16 21:15:29 2024 NAMESPACE: default STATUS: deployed REVISION: 1 TEST SUITE: None $ kubectl get sc NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE nfs-client cluster.local/nfs-subdir-external-provisioner Delete Immediate true 9s $ kubectl get pv,pvc -A No resources found $ cd lesson9/ /lesson9$ k create -f pvc-sc.yml persistentvolumeclaim/pvc-one created /lesson9$ kubectl get pv,pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS VOLUMEATTRIBUTESCLASS AGE persistentvolumeclaim/pvc-one Pending nfs-client <unset> 6s /lesson9$ k describe pvc Name: pvc-one Namespace: default StorageClass: nfs-client Status: Pending Volume: Labels: <none> Annotations: volume.beta.kubernetes.io/storage-provisioner: cluster.local/nfs-subdir-external-provisioner volume.kubernetes.io/storage-provisioner: cluster.local/nfs-subdir-external-provisioner Finalizers: [kubernetes.io/pvc-protection] Capacity: Access Modes: VolumeMode: Filesystem Used By: <none> Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal ExternalProvisioning 4s (x5 over 42s) persistentvolume-controller Waiting for a volume to be created either by the external provisioner 'cluster.local/nfs-subdir-external-provisioner' or manually by the system administrator. If volume creation is delayed, please verify that the provisioner is running and correctly registered.I am addressing the CP with the
k8scpalias.0 -
Hi @ilmx,
The
default-pvc-one-pvc-d966635f-b195-462d-9030-99e13c2226efdirectory was the storage backend of the PV object that should have been created by the NFS provisioner. What is unclear is the reason why the PV object creation never fully finalized.I attempted to reproduce the issue, but I am unable to. I am looking back at the earlier issues you reported and I am wondering whether all the fixes and workarounds did not eventually impact your cluster overall.
Upon launching the nfs-provisioner, any events that are out of the ordinary while the
nfs-subdir-external-provisioner-...Pod is scheduled and deployed?kubectl describe po nfs-subdir-external-provisioner-...Assuming a new PVC launch event, while waiting for the PV backend to be provisioned and PV object created, what are the logs of the nfs-provisioner Pod recording?
kubectl logs -f nfs-subdir-external-provisioner-...The optional
-fflag will follow/stream the logs.Regards,
-Chris0
Categories
- All Categories
- 177 LFX Mentorship
- 177 LFX Mentorship: Linux Kernel
- 750 Linux Foundation IT Professional Programs
- 373 Cloud Engineer IT Professional Program
- 169 Advanced Cloud Engineer IT Professional Program
- 74 DevOps IT Professional Program - Discontinued
- 4 DevOps & GitOps IT Professional Program
- 99 Cloud Native Developer IT Professional Program
- 7.6K Training Courses & Learning Paths
- 1 AI & ML Training
- 1 Blockchain & Decentralized Identity Training
- 3 Cloud & Containers Training
- 1 Cybersecurity Training
- 2 DevOps & Site-Reliability Training
- 1 Linux Kernel Development Training
- 1 Networking Training
- 1 Open Source Best Practice Training
- 1 System Administration Training
- 1 System Engineering Training
- 1 Web & Application Development Training
- 792 Hardware
- 202 Drivers
- 68 I/O Devices
- 37 Monitors
- 95 Multimedia
- 173 Networking
- 91 Printers & Scanners
- 87 Storage
- 769 Linux Distributions
- 81 Debian
- 68 Fedora
- 22 Linux Mint
- 13 Mageia
- 24 openSUSE
- 150 Red Hat Enterprise
- 31 Slackware
- 13 SUSE Enterprise
- 356 Ubuntu
- 465 Linux System Administration
- 31 Cloud Computing
- 73 Command Line/Scripting
- Github systems admin projects
- 98 Linux Security
- 78 Network Management
- 101 System Management
- 46 Web Management
- 106 Mobile Computing
- 18 Android
- 73 Development
- 1.2K New to Linux
- 1K Getting Started with Linux
- 392 Off Topic
- 121 Introductions
- 181 Small Talk
- 29 Study Material
- 955 Programming and Development
- 310 Kernel Development
- 627 Software Development
- 983 Software
- 375 Applications
- 182 Command Line
- 5 Compiling/Installing
- 68 Games
- 317 Installation
- Archived
- 2 LFD140 Class Forum
Upcoming Training
-
August 20, 2018
Kubernetes Administration (LFS458)
-
August 20, 2018
Linux System Administration (LFS301)
-
August 27, 2018
Open Source Virtualization (LFS462)
-
August 27, 2018
Linux Kernel Debugging and Security (LFD440)
