-
Notifications
You must be signed in to change notification settings - Fork 40.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Flex volumes which implement getvolumename API are getting unmounted during run time. #44737
Comments
Investigation:
|
@chakri-nelluri and I discussed this. Proposed fix is to add a metadata file so that volume reconstruction can use that and recover complete volume spec instead of just the information in the mount path. CC @jingxu97 @kubernetes/sig-storage-bugs |
Automatic merge from submit-queue Remove broken getvolumename and pass PV or volume name to attach call What this PR does / why we need it: Flex getvolumename is broken in 1.6. It needs to be fixed comprehensively in 1.7 release. Removing the api in 1.6. Also pass PV or volume name to the driver during attach call. Detach uses PV or volume name, so plugin can use that information to map to PV. Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes # Fixes - #44737 Original PR: #46136 Moving to this PR and rebase to release-1.6
@chakri-nelluri, @shilpamayanna: Freeze date for 1.7 was June 1, so we missed the boat for the big fix (kubernetes/community#650). In the meantime is there anything temporary that needs to go in for 1.7 to mitigate this in the master/1.7 branches? |
CC @verult who's looking in to Flex volume issues. |
Automatic merge from submit-queue (batch tested with PRs 47204, 46808, 47432, 47400, 47099) Remove broken getvolumename and pass PV or volume name to attach call Cherry-picking #46249 to master What this PR does / why we need it: Flex getvolumename is broken in 1.6. It needs to be fixed comprehensively in 1.7 release. Removing the api in 1.6. Also pass PV or volume name to the driver during attach call. Detach uses PV or volume name, so plugin can use that information to map to PV. Which issue this PR fixes (optional, in fixes #(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes # Fixes - #44737
With #47400 this is complete for 1.7. Moving to 1.8 for "real fix" |
The current behavior (1.7.0) seems a bit broken/weird.
K8s would call:
But when detaching it call:
but the doc says:
So I would expect it to call:
So either the doc is wrong or something is broken. The current behavior means that I can't use a meaningful So:
|
This broken behavior is caused by: #47400 :/ |
Issue opened: #51407 We need a proper fix for this, the current behavior isn't ideal. |
Thanks @klausenbusk This is a doc issue. I will update it. If you have any other use case, please feel free to slack me @chakri-nelluri or reply here. I want to know more details. |
[MILESTONENOTIFIER] Milestone Removed Important: kind: Must specify exactly one of [ Removing it from the milestone. |
detach() should be called with at least the same parameters as the attach() call. |
Edit: I totally misunderstood this, sorry for the noise :/ |
This is already fixed as part of 47400 |
Kubernetes version: 1.6
Component/Area: Storage
Affected modules: Flex volume
Kubernetes version (use
kubectl version
):Client Version: version.Info{Major:"1", Minor:"6+", GitVersion:"v1.6.0-alpha.1.482+b2ea780731417d-dirty", GitCommit:"b2ea780731417da74d312bfce8ac560ae7248831", GitTreeState:"dirty", BuildDate:"2017-02-07T21:51:55Z", GoVersion:"go1.7.4", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"6+", GitVersion:"v1.6.1-1+00a638423087f6-dirty", GitCommit:"00a638423087f6e81819667f662f194a2a2d8da9", GitTreeState:"dirty", BuildDate:"2017-04-15T16:16:36Z", GoVersion:"go1.7.5", Compiler:"gc", Platform:"linux/amd64"}
What happened:
Flex volumes which implement getvolumename API are getting unmounted during run time.
What you expected to happen:
Volumes should not be unmounted.
How to reproduce it (as minimally and precisely as possible):
Use flex volume driver which implements getvolumename.
Anything else we need to know:
Workaround:
Temporary fix for 1.6:
The text was updated successfully, but these errors were encountered: