-
Notifications
You must be signed in to change notification settings - Fork 4k
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
Enhancement proposal to add minReplicas per VPA Object (see #4560) #4566
Conversation
c53b89a
to
0ea89f7
Compare
This PR may require API review. If so, when the changes are ready, complete the pre-review checklist and request an API review. Status of requested reviews is tracked in the API Review project. |
As per yesterday's SIG meeting: @jbartosik , @wangchen615, you might be interested in looking into this. |
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.
Generally looks good to me, I left some small comments about phrasing.
vertical-pod-autoscaler/enhancements/4566-min-replicas/README.md
Outdated
Show resolved
Hide resolved
vertical-pod-autoscaler/enhancements/4566-min-replicas/README.md
Outdated
Show resolved
Hide resolved
change is to set global `--min-replicas` flag to `1` and Pod Disruption Budget | ||
to protect single-replica workloads from being disrupted, if needed. | ||
|
||
While this would end up in a very similar (if not identical) cluster behaviour, |
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.
I think cluster behavior is different.
With this KEP we can protect 1 pod controllers from eviction by default (and can override that per-VPA).
With the alternative described in this section we evict 1-pod controllers by default (and can override that per-controller).
I'd rephrase to something like:
While this allows the same configuration for each individual controller it changes the default behavior to an unsafe one. As a result it requires cluster-wide coordination...
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.
Took an attempt at simplifying, PTAL.
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.
Just some minor issues. I like the idea, thanks.
vertical-pod-autoscaler/enhancements/4566-min-replicas/README.md
Outdated
Show resolved
Hide resolved
vertical-pod-autoscaler/enhancements/4566-min-replicas/README.md
Outdated
Show resolved
Hide resolved
vertical-pod-autoscaler/enhancements/4566-min-replicas/README.md
Outdated
Show resolved
Hide resolved
vertical-pod-autoscaler/enhancements/4566-min-replicas/README.md
Outdated
Show resolved
Hide resolved
|
||
### Test Plan | ||
|
||
Add automated tests that update VPA objects, altering the value of |
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.
Do you mean Add e2e tests?
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.
Actually they're already there in PR #4560, please have a look at e2e/v1/actuation.go. The testEvictsSingletonPod verifies exactly the behaviour described here: no eviction w/o minReplicas being set and eviction happening after minReplicas is set to 1.
Added 'E2E' in the KEP to make it clear.
0ea89f7
to
c664d4e
Compare
@jbartosik , @wangchen615 . hopefully all your comments are addressed. Thanks for the review :-) |
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.
Looks good to me.
I'm not giving the label yet because that would merge the PR and I want to give others some time to take a look. (feel free to ping me if you think it's time to merge but I didn't give the label yet)
/retest
@wangchen615 please let me know you want to take another look (a comment telling me I should wait more is enough). If this PR doesn't get any more comments I'll give it LGTM and it'll merge on Monday (2022-01-17) during my work hours. I'd like to merge this, then #4560 then do a release #4404. I want to make a release next week. Or if we need more discussion on this I'd like to know that by Monday so that I can go ahead and release without waiting for this. |
@jbartosik I already went through it. It looked good to me. No more comments. |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jbartosik, kgolab, wangchen615 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.
Thanks :)
/lgtm
Which component this PR applies to?
vertical-pod-autoscaler (VPA API)
What type of PR is this?
/kind documentation
/kind feature
/kind api-change
What this PR does / why we need it:
To allow for API review before merging (or rejecting) #4560.