kubernetes: Memory pressure shouldn't hard evict static pods
If a node runs out of memory, we kill something. Then if there is memory pressure, we don’t admit best effort (https://github.com/kubernetes/kubernetes/blob/master/pkg/kubelet/eviction/eviction_manager.go#L110). Maybe we can admit static-pods, even if they’re best effort?
@kubernetes/sig-node if we can’t differentiate static from non-static, maybe we can use the scheduler.alpha.kubernetes.io/critical-pod
annotation?
About this issue
- Original URL
- State: closed
- Created 8 years ago
- Comments: 47 (46 by maintainers)
Commits related to this issue
- kubelet/eviction: always admit static pods Fixes #38322 This assumes that all static pods are important to the point that eviction denials do not apply to them. — committed to euank/kubernetes by euank 8 years ago
- Merge pull request #39114 from dchen1107/kube-proxy Automatic merge from submit-queue (batch tested with PRs 39114, 36004) assign -998 as the oom_score_adj for critical pods (e.g. kube-proxy) I als... — committed to kubernetes/kubernetes by deleted user 8 years ago
- Merge pull request #39146 from Crassirostris/make-fluentd-critical Automatic merge from submit-queue Make fluentd pods critical Related to https://github.com/kubernetes/kubernetes/issues/38322 M... — committed to kubernetes/kubernetes by deleted user 8 years ago
- Merge pull request #39059 from bprashanth/static_evict Automatic merge from submit-queue Don't evict static pods A follow up to https://github.com/kubernetes/kubernetes/pull/38914, the desired beha... — committed to kubernetes/kubernetes by deleted user 8 years ago
@thockin @davidopp @dchen1107 @erictune @janetkuo and myself discussed this issue further today. Following is the summary:
The primary problems we addressed are as follows:
In the short term,
We decided to have only two levels of priority (Critical & QoS) instead of three (Static, Critical and QoS) for evictions. This is to align with the long term plan.
This short term solution will solve problems
1
&3
mentioned above.Now for the long term,
3
. ETA: Design in v1.6, Alpha (or beta?) in v1.72
. ETA1
. ETA: TBD (based on availability of the feature)@derekwaynecarr @liggitt @smarterclayton does this satisfy your needs?