Closed Ntr0 closed 5 years ago
@kubernetes/sig-storage-bugs
@Ntr0: Reiterating the mentions to trigger a notification: @kubernetes/sig-storage-bugs
I'm unsure increasing PV size is a supported sequence. cc @gnufied
me neither. And I would be fine with the solution, that it is not supported. But then NodeExpandVolume should not be called, right?
When you manually increase the PV size without expanding the underlying volume, you have basically broken the contract of a PV. PV should always store actual size of the volume since PV has no PV.Status.Size
field.
Calling NodeExpandVolume
is right thing to do because PV has bigger size than what is stored in PVC's status.
Alright, thanks for the clarification.
What happened: Deployed a csi driver with volume expansion capability (online). Defined following storage class:
Created a pvc:
Increasing the requested storage parameter in the pvc works as expected: First ControllerExpandVolume is called, then NodeExpandVolume. But increasing the storage size in the underlying pv has the effect, that only NodeExpandVolume is called, (which of course does not work, since ControllerExpandVolume is required beforehands). What you expected to happen: If it is actually allowed to change the persistent volume, than ControllerExpandVolume must be called.
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:
kubectl version
): 1.15.0cat /etc/os-release
): CentOS 7uname -a
): 3.10.0-957.12.1.el7.x86_64 #1 SMP Mon Apr 29 14:59:59 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux