-
Notifications
You must be signed in to change notification settings - Fork 38.7k
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
Automated cherry pick of #102059: Bump k8s.io/utils #101862: Retry detaching FibreChannel volume few times #102656
Conversation
@jsafrane: This cherry pick PR is for a release branch and has not yet been approved by Release Managers. To merge this cherry pick, it must first be approved ( AFTER it has been approved by code owners, please ping the kubernetes/release-managers team in a comment to request a cherry pick review. (For details on the patch release process and schedule, see the Patch Releases page.) 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. |
/kind bug |
Updated k8s.io/utils to the same SHA as today's k/k master. |
/lgtm |
I can confirm this change is limited to fc and iscsi volume plugins. /approve |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jsafrane, liggitt The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
aec7814
to
ba5f038
Compare
ba5f038
to
385024a
Compare
To get io/ConsistentRead updates.
We've seen clusters where 3 attempts were not enough. Bumping to 10. The slowdown should be negligible and it will reduce retry attempts in the upper layers of kubelet.
…ruction iSCSI and FC volume plugins do not implement real 3rd party attach/detach. If reconstruction fails with an error on a FC or iSCSI volume, it will not be unmounted from the volume global dir and at the same time it will be marked as unused, to be available to be mounted on another node. The volume can then be mounted on several nodes, resulting in volume corruption. The other block based volume plugins implement attach/detach that either makes the volume stuck (can't be detached) or will be force-detached from a node before attaching it somewhere else.
Move reporting of GetReliableMountRefs error to the volume plugins that have more context about severity of the error.
Run hack/update-vendor.sh to get the new file.
When UnmountDevice() of a FibreChannel volume fails after unmounting the device and before the device is fully cleaned up, subsequent UnmountDevice() retry won't find the device mounted and return without retrying the device cleanup. Therefore implement its own retry inside UnmountDevice() to make sure that the volume devices are either fully cleaned or the error is serius enough that even 1 minute of trying does not help.
385024a
to
b973d29
Compare
/lgtm |
Cherry pick of #102059 #101862 on release-1.21.
#102059: Retry reading /proc/mounts when unable to get a consistent read
#101862: Retry detaching FibreChannel volume few times
For details on the cherry pick process, see the cherry pick requests page.
Note:
k8s.io/utils
master tok/k
release-1.21
branch, which sounds scary, but in the end there were just one extra file k8s.io/utils/pointer/pointer.go changed.hack/update-vendor.sh
to get everything from k8s.io/utils.Release note manually copied from the PRs above: