-
Notifications
You must be signed in to change notification settings - Fork 14.6k
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
Added Rescheduler documentation #1170
Conversation
In addition to Kubernetes core components like api-server, scheduler, controller-manager running on a master machine | ||
there is a bunch of addons which due to various reasons have to run on a regular cluster node, not the master. | ||
Some of them are critical to have fully functional cluster: Heapster, DNS, UI. | ||
Users can break their cluster by evicting a critical addon (either manually or as a side effect of an other operation like upgrade) |
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 would re-phrase this as "Thus a cluster may stop working properly if a critical addon is evicted (either manually or as a side effect of another operation like upgrade) and becomes pending (for example when the cluster is highly utilized and either there are other pending pods that schedule into the space vacated by the evicted critical addon pod or the amount of resources available on the node changed for some other reason."
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.
Done
I'm not done reviewing but some other higher-priority stuff popped up, so this will be delayed. Please wait to make changes until I'm done reviewing, otherwise it will be too confusing. |
|
||
## Rescheduler: guaranteed scheduling of critical addons | ||
|
||
Rescheduler ensures that critical addons are always scheduled (assuming the cluster is big enough). |
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.
s/scheduled/running/
Instead of "assuming the cluster is big enough" I would say "assuming the cluster has enough resources to run the critical addon pods in the absence of regular pods"
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.
It's not exactly true. If there is a problem with downloading docker image for DNS, the pod won't be running and Rescheduler can't fix this situation.
Applied the second comment.
ok done reviewing now |
@davidopp 's comments addressed any issues I had for Docs LGTM. Once he gives his LGTM, I'm good, too. |
@davidopp comments addressed. 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.
A couple of small docs issues.
* TOC | ||
{:toc} | ||
|
||
# "Guaranteed" scheduling of critical addon pods |
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.
Addon -> add-on
Probably should be a global replacement throughout the document.
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.
Done
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.
Done
## Critical addons | ||
|
||
In addition to Kubernetes core components like api-server, scheduler, controller-manager running on a master machine | ||
there are a number of addons which due to various reasons have to run on a regular cluster node, not the master. |
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.
"which due to various reasons" -> "which, for various reasons, must run on a regular cluster node (rather than the Kubernetes master)."
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.
Done
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.
Done
|
||
In addition to Kubernetes core components like api-server, scheduler, controller-manager running on a master machine | ||
there are a number of addons which due to various reasons have to run on a regular cluster node, not the master. | ||
Some of them are critical to have a fully functional cluster: Heapster, DNS, UI. |
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.
"Some of these add-ons are critical to a fully functional cluster, such as Heapster, DNS, and UI."
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.
Done
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.
Done
In addition to Kubernetes core components like api-server, scheduler, controller-manager running on a master machine | ||
there are a number of addons which due to various reasons have to run on a regular cluster node, not the master. | ||
Some of them are critical to have a fully functional cluster: Heapster, DNS, UI. | ||
Thus a cluster may stop working properly if a critical addon is evicted (either manually or as a side effect of another operation like upgrade) |
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.
remove "Thus" and capitalize "A cluster".
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.
done
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.
Done
* on running cluster by deleting its manifest from master node | ||
(default path `/etc/kubernetes/manifests/rescheduler.manifest`) | ||
|
||
### Marking addon as crticical |
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.
crticical -> critical
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.
Done
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.
Done
Comments applied. PTAL |
Thank you, @piosz ! Merging now. |
* Add heroes for July and August (kubernetes#304) Signed-off-by: Christian Mejlak <[email protected]>
Signed-off-by: HongJu Jeong <[email protected]>
ref kubernetes/enhancements#62, kubernetes/kubernetes#29023
This change is