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
CSI failed to load vol_data.json because vol_data.json is removed #85280
Comments
/assign |
/sig node |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
Stale issues rot after 30d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
Rotten issues close after 30d of inactivity. Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
@fejta-bot: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
@fankangbest was there any change in this area that got merged? |
Issue still happens for us on RKE 1, Kubernetes v1.19.10 and Longhorn 1.3.1 |
/reopen |
@xenuser: You can't reopen an issue/PR unless you authored it or you are a collaborator. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
This issue still happens in 1.22.15 version of kubernetes |
What happened:
Pod is deleted with csi volume left on node, and kubelet runs with errors:
After kubelet restarting, orphan pod is found:
What you expected to happen:
How to reproduce it (as minimally and precisely as possible):
touch /var/lib/kubelet/pods/4d3f80f0-06d0-11ea-a936-08002715efc3/volumes/kubernetes.io~csi/pvc-45f3b32f-06d0-11ea-a936-08002715efc3/test
rm /var/lib/kubelet/pods/4d3f80f0-06d0-11ea-a936-08002715efc3/volumes/kubernetes.io~csi/pvc-45f3b32f-06d0-11ea-a936-08002715efc3/test
Anything else we need to know?:
To teardown a volume, removeMountDir() is called:
When there is something wrong to execute os.Remove(volPath), volume path is left on node. However, mount path and vol_data.json is deleted.
Kubelet will try to remove this volume again with NewUnmounter():
NewUnmounter will fail to load vol_data.json to construct unmounter because vol_data.json is deleted.
After restarting kubelet, PodResourcesAreReclaimed() will be passed to this pod because volume construction is failed. And pod will be removed by kubelet with a volume left on disk.
Environment:
kubectl version
):Client Version: version.Info{Major:"1", Minor:"14", GitVersion:"v1.14.3", GitCommit:"5e53fd6bc17c0dec8434817e69b04a25d8ae0ff0", GitTreeState:"archive", BuildDate:"2019-06-25T04:19:35Z", GoVersion:"go1.12.5", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"14", GitVersion:"v1.14.3", GitCommit:"5e53fd6bc17c0dec8434817e69b04a25d8ae0ff0", GitTreeState:"archive", BuildDate:"2019-11-12T11:16:36Z", GoVersion:"go1.12.5", Compiler:"gc", Platform:"linux/amd64"}
cat /etc/os-release
):NAME="Ubuntu"
VERSION="18.04.2 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.2 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
uname -a
):Linux ubuntu 4.15.0-66-generic cluster: allow providing KUBE_MASTER_IP env var #75-Ubuntu SMP Tue Oct 1 05:24:09 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
The text was updated successfully, but these errors were encountered: