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

Vertical scaling #3

Open
wants to merge 44 commits into
base: vertical-scaling
Choose a base branch
from

Conversation

huzhengchuan
Copy link
Owner

What this PR does / why we need it:

Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #

Special notes for your reviewer:

Release note:


Peng Du and others added 30 commits September 19, 2018 10:17
added check against qos change from resource patch
(2) added check against pod QOS change as a result of (1)
(3) updated unit tests
…nnotation

(2) fixed the duplicated update issue in (1)
(3) added unit tests
(1) enabled job and pod resource change via patch 
(2) added check against qos change as a result of (1)
…engdu

(1) added job controller changes to convert job spec resource update to annotation
(2) fixed the duplicated update issue in (1)
(3) added unit tests
* Kubelet changes to support vertical scaling

* Kubelet changes for vertical scaling - code review feedback fixes
* Scheduler changes to support vertical resources scaling

* Scheduler changes to support vertical resources scaling - code review fixes
…ce spec

(2) added oomKillDisable annotation, passed down to pod level cgroup file memory.oom_control

Tested on a local environment
added cgroup updates and oomKillDisable annotation
vertical scaling feature gate in apiserver and controller
tested using a manual e2e test
added vertical scaling feature gate to kubelet (related unit tests too)
…city (#31)

Added unit-tests and fixes to address CR comments.
added resource quota control for pod resource update
* Add pod resource resize status to pod conditions

* Handle InPlaceOnly policy through pod status update

* Restore running pod resource values on resizing failure
* Update cached pod resources values on resizing updates
 - scheduler caches the initial pod that gets Added, and deletes cached Pod.
   So subsequent pod resource updates makes cached pod resource values to become stale.
   This fix updates cached pod resource values so the delete deducts the correct values.x

* Addressed code review comments, minor fixes.
#35)

* fixed the issue when pod resource is updated to decrease, resource quota
is not updated immediately

* added missing vertical scaling feature gates

* fixed pod count issue per Vinay's PR comment
vinaykul and others added 14 commits October 22, 2018 16:57
…ry resize retry. (#38)

* Allow controller to process new resize requests after a failed request, add rudimentary resize retry.
…izing. Refactor code. (#40)

* Respect the pod disruption budget when rescheduling pods. Refactor code.

* Add unit test for checkPodDisruptionBudgetOk function.
…heduler support of vertical scaling. (#41)

* Update policy to allow scheduler to update pod. Add comprehensive unit tests for scheduler.

* kubelet unit tests enhancement to cover vertical scaling policies.
…43)

* Cleanup event logs. Refactor resize action handling and add unit test for it.

* Update container status hash upon successful UpdateContainerResoruces.

* Remove action annotation set by processResizing when rescheduling pod.
added retry for resource update failure
…on load, retry latest template.spec values on completion. (#46)
* added resource in place update to deployment

* removed unused lines

* added testing info

* fixed deployment resource update retry

* added check against qos change for deployment spec udpate

* added unit tests for deployment resource update and qos changes

* addressed Vinay's PR comments

* added error checking for PatchPodResourceAnnotation

* Added patch to the controller policy to allow patching pod in the "default" namespace

Thanks @vinay!

* added test cases for JD

* added test for restart policy

* added test case for InPlacePreferred

put testing scripts into a separate place

* added a doc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants