Skip to content
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 #52131 #52575 upstream release 1.8 #54023

Conversation

divyenpatel
Copy link
Member

@divyenpatel divyenpatel commented Oct 16, 2017

Cherry pick of #52131, #52575 on release-1.8

#52131: Implement bulk polling of volumes for vSphere
#52575: Unable to detach the vSphere volume from Powered off node

@BaluDontu

Release note:

BulkVerifyVolumes() implementation for vSphere Cloud Provider
Fixed volume detachment from powered off node

@k8s-ci-robot k8s-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Oct 16, 2017
@k8s-ci-robot
Copy link
Contributor

Hi @divyenpatel. Thanks for your PR.

I'm waiting for a kubernetes member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

I understand the commands that are listed here.

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. I understand the commands that are listed here.

@k8s-ci-robot k8s-ci-robot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Oct 16, 2017
@k8s-github-robot k8s-github-robot added the do-not-merge/cherry-pick-not-approved Indicates that a PR is not yet approved to merge into a release branch. label Oct 16, 2017
@k8s-ci-robot k8s-ci-robot added release-note-none Denotes a PR that doesn't merit a release note. and removed do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. labels Oct 17, 2017
@jsafrane
Copy link
Member

/ok-to-test

@k8s-ci-robot k8s-ci-robot removed the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Oct 18, 2017
@jsafrane
Copy link
Member

/lgtm
/approve no-issue

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Oct 18, 2017
@luomiao
Copy link

luomiao commented Oct 18, 2017

/approve

@k8s-github-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: divyenpatel, jsafrane, luomiao

Associated issue: 52131

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these OWNERS Files:

You can indicate your approval by writing /approve in a comment
You can cancel your approval by writing /approve cancel in a comment

@k8s-github-robot k8s-github-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 18, 2017
@jpbetz
Copy link
Contributor

jpbetz commented Oct 20, 2017

#52131 contains significant feature development. Cherrypicks for patch releases should be restricted to bug fixes and security fixes. See https://github.com/kubernetes/sig-release/blob/master/ephemera/README.md#patch-release-manager

@divyenpatel
Copy link
Member Author

@jpbetz bulk polling of volumes adds significant performance improvement for vsphere cloud provider. Interfaces were added long back in release 1.6 - #41306 and development made in the PR - #52131 is just an implementation for bulk polling and internal vsphere cloud provider library changes to support this feature.

We have a customer ask (vmware-archive#175) to get this feature in official kubernetes release 1.8 / 1.7.

@tusharnt @BaluDontu

@jpbetz
Copy link
Contributor

jpbetz commented Oct 23, 2017

@divyenpatel Let's get a clean test run and discuss. We'll also need an appropriate release-note. None doesn't sound right to me.

@divyenpatel
Copy link
Member Author

/test pull-kubernetes-unit

@k8s-ci-robot k8s-ci-robot added release-note Denotes a PR that will be considered when it comes time to generate release notes. and removed release-note-none Denotes a PR that doesn't merit a release note. labels Oct 23, 2017
@BaluDontu
Copy link
Contributor

BaluDontu commented Oct 23, 2017

@jpbetz Without bulk polling of volumes implementation for vSphere cloud provider, there is a huge performance overhead on vCenter from vSphere cloud provider. In the existing implementation, vSphere cloud provider makes 1 call to VC per volume to check if disk is attached. If there are many volumes, it would make multiple VC calls to check if the disk is attached. By default VolumesAreAttached() is called for every 1 minute. This would very much create a huge overhead on vCenter just to verify if disks are attached. Also, it would delay other operations - create/delete/attach/detach as VC would queue them to service each request.

So, having this PR which implements BulkVerifyVolumes() API makes only single call to VC irrespective of the number of the volumes attached to kubernetes nodes. So, for every minute there would only one VC call. As @divyenpatel suggested, customers ran into these issues and I think we should have this fix cherry-picked into 1.8/1.7 release branches.

@jpbetz
Copy link
Contributor

jpbetz commented Oct 23, 2017

cc @wojtek-t since this is also being proposed as a 1.7 patch

@jpbetz
Copy link
Contributor

jpbetz commented Oct 23, 2017

Since this is isolated to vSphere cloud provider code and there is precedence for allowing larger fixes/changes than normally allowed for patches to cloud provider specific code, I'm okay with merging this for 1.8.3. After 1.8.2 is release tomorrow, I'll add cherrypick-approved to this and we'll merge it.

@divyenpatel
Copy link
Member Author

@jpbetz Can you add cherrypick-approved to this PR. I have one more PR after this to cherry pick on 1.8.

@jpbetz jpbetz added the cherry-pick-approved Indicates a cherry-pick PR into a release branch has been approved by the release branch manager. label Oct 25, 2017
@k8s-github-robot k8s-github-robot removed the do-not-merge/cherry-pick-not-approved Indicates that a PR is not yet approved to merge into a release branch. label Oct 25, 2017
@fejta-bot
Copy link

/retest
This bot automatically retries jobs that failed/flaked on approved PRs (send feedback to @fejta).

Review the full test history for this PR.

@k8s-github-robot
Copy link

/test all [submit-queue is verifying that this PR is safe to merge]

@k8s-github-robot
Copy link

Automatic merge from submit-queue.

@k8s-github-robot k8s-github-robot merged commit 731fbf2 into kubernetes:release-1.8 Oct 26, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cherry-pick-approved Indicates a cherry-pick PR into a release branch has been approved by the release branch manager. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

9 participants