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

Disable hyperv dynamic memory for hyperv driver #2797

Merged
merged 1 commit into from
May 29, 2019

Conversation

shahiddev
Copy link
Contributor

@shahiddev shahiddev commented May 8, 2018

Disables hyper-v dynamic memory

Fixes issues #2331, #2326, #1766

@k8s-ci-robot k8s-ci-robot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label May 8, 2018
@k8s-ci-robot
Copy link
Contributor

Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please follow instructions at https://git.k8s.io/community/CLA.md#the-contributor-license-agreement to sign the CLA.

It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify. Thanks.


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 cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. label May 8, 2018
@minikube-bot
Copy link
Collaborator

Can one of the admins verify this patch?

@shahiddev shahiddev closed this May 8, 2018
@shahiddev shahiddev reopened this May 8, 2018
@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. and removed cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. labels May 8, 2018
@shahiddev
Copy link
Contributor Author

/assign @jimmidyson

@dlorenc
Copy link
Contributor

dlorenc commented May 10, 2018

@minikube-bot OK to test

@@ -23,21 +23,24 @@ type Driver struct {
CPU int
MacAddr string
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey,

Unfortunately we can't make changes directly to this vendor directory, they'll get overwritten on the next update of our dependencies.

Some ideas:

@shahiddev
Copy link
Contributor Author

Ah, silly mistake.
OK, let me take another look at this

@shahiddev shahiddev closed this May 10, 2018
@shahiddev
Copy link
Contributor Author

shahiddev commented Jun 4, 2018

I've got a PR to add support for the flag in Docker Machine merged now.
Does the vendor directory get updated on each release automatically or as part of someones PR?

@shahiddev
Copy link
Contributor Author

@dlorenc The latest Docker Machine now has my PR merged in it (https://github.com/docker/machine/releases/tag/v0.15.0)
How do I incorporate the updates into Minikube, are the vendor deps updated routinely as part of the release process or do I need to create a PR to do this?

@tstromberg tstromberg reopened this May 14, 2019
@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label May 14, 2019
@tstromberg
Copy link
Contributor

I just found this PR and it looks great!

Would it be possible to resolve the conflicts and merge it? I can also recreate it in a new PR, but I would rather let you keep the credit for the change.

Personally, I strongly prefer to disable dynamic memory by default, so that it behaves the same as other VM managers supported by minikube.

@tstromberg tstromberg self-requested a review May 14, 2019 16:58
@shahiddev
Copy link
Contributor Author

Hi @tstromberg I had tried to get the Docker Machine changes I made into the minikube project but there was some uncertainty around whether they wanted to keep on using Docker Machine, hence why things went quiet. I'd have been happy to try and surface those docker machine changes if that was settled?

@tstromberg
Copy link
Contributor

shahiddev@ - minikube will continue to use Docker Machine for the foreseeable future.

If this PR still requires a change to docker/machine, you can propose it to the fork we are using: https://github.com/machine-drivers/machine/blob/master/drivers/hyperv/hyperv.go - I'm a maintainer there and would be happy to review your change there.

Please let me know if I can help you in any way to get this merged.

@shahiddev
Copy link
Contributor Author

I think I managed to get my docker machine changes into the final release of Docker Machine before it went into maintenance so those should be in the fork. I'll try and get this sorted over the coming days depending on how busy Kubecon EU is :)

@tstromberg
Copy link
Contributor

I think I managed to get my docker machine changes into the final release of Docker Machine before it went into maintenance so those should be in the fork. I'll try and get this sorted over the coming days depending on how busy Kubecon EU is :)

Sounds great. Enjoy Barcelona!

@tstromberg
Copy link
Contributor

I happened to be looking at
https://github.com/machine-drivers/machine/blob/master/drivers/hyperv/hyperv.go - and it seems that DisableDynamicMemory is in fact an option.

I suggest that we disable just disable by default, as dynamically sized memory won't ever play well with Kubernetes job scheduling.

@shahiddev shahiddev closed this May 23, 2019
@k8s-ci-robot k8s-ci-robot added size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. approved Indicates a PR has been approved by an approver from all required OWNERS files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels May 23, 2019
@shahiddev
Copy link
Contributor Author

shahiddev commented May 23, 2019

I will re-open the PR, initially I wanted to reset my fork to the current upstream given the majority of the changes I had in the original PR weren't required and it was nearly a year behind upstream

@shahiddev shahiddev reopened this May 24, 2019
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label May 24, 2019
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: shahiddev
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: jimmidyson

If they are not already assigned, you can assign the PR to them by writing /assign @jimmidyson in a comment when ready.

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 /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot removed the approved Indicates a PR has been approved by an approver from all required OWNERS files. label May 24, 2019
@shahiddev
Copy link
Contributor Author

shahiddev commented May 24, 2019

I happened to be looking at
https://github.com/machine-drivers/machine/blob/master/drivers/hyperv/hyperv.go - and it seems that DisableDynamicMemory is in fact an option.

I suggest that we disable just disable by default, as dynamically sized memory won't ever play well with Kubernetes job scheduling.

As per your suggestion @tstromberg I opted to keep it simple and just set the disable hyper-v dynamic memory flag I had exposed on Docker Machine (rather than adding an additional command line flag and wiring that up to the flag).

@shahiddev shahiddev changed the title Add option to disable hyperv dynamic memory for hyperv driver Disable hyperv dynamic memory for hyperv driver May 24, 2019
@k8s-ci-robot k8s-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels May 25, 2019
@k8s-ci-robot k8s-ci-robot added size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels May 25, 2019
Copy link
Contributor

@tstromberg tstromberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice! Thank you for making this change!

@tstromberg tstromberg merged commit c83d5f7 into kubernetes:master May 29, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants