Skip to content

Commit c184f20

Browse files
committed
Create pod eviction concept and glossary entries
- Created glossary entries for manual and kubelet eviction - Created node-pressure-eviction.md and api-eviction.md - Merged content from eviction-policy.md and out-of-resource.md - Added note to kube-scheduler about node conditions - Deleted eviction-policy and out-of-resource.md - Redirected old topics - Change topic weights
1 parent e751578 commit c184f20

15 files changed

+531
-387
lines changed
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,37 @@
11
---
22
title: "Scheduling, Preemption and Eviction"
33
weight: 90
4+
content_type: concept
45
description: >
56
In Kubernetes, scheduling refers to making sure that Pods are matched to Nodes
67
so that the kubelet can run them. Preemption is the process of terminating
78
Pods with lower Priority so that Pods with higher Priority can schedule on
89
Nodes. Eviction is the process of proactively terminating one or more Pods on
910
resource-starved Nodes.
11+
no_list: true
1012
---
1113

14+
In Kubernetes, scheduling refers to making sure that {{<glossary_tooltip text="Pods" term_id="pod">}}
15+
are matched to {{<glossary_tooltip text="Nodes" term_id="node">}} so that the
16+
{{<glossary_tooltip text="kubelet" term_id="kubelet">}} can run them. Preemption
17+
is the process of terminating Pods with lower {{<glossary_tooltip text="Priority" term_id="pod-priority">}}
18+
so that Pods with higher Priority can schedule on Nodes. Eviction is the process
19+
of terminating one or more Pods on Nodes.
20+
21+
## Scheduling
22+
23+
* [Kubernetes Scheduler](/docs/concepts/scheduling-eviction/kube-scheduler/)
24+
* [Assigning Pods to Nodes](/docs/concepts/scheduling-eviction/assign-pod-node/)
25+
* [Pod Overhead](/docs/concepts/scheduling-eviction/pod-overhead/)
26+
* [Taints and Tolerations](/docs/concepts/scheduling-eviction/taint-and-toleration/)
27+
* [Scheduling Framework](/docs/concepts/scheduling-eviction/scheduling-framework)
28+
* [Scheduler Performance Tuning](/docs/concepts/scheduling-eviction/scheduler-perf-tuning/)
29+
* [Resource Bin Packing for Extended Resources](/docs/concepts/scheduling-eviction/resource-bin-packing/)
30+
31+
## Pod Disruption
32+
33+
{{<glossary_definition term_id="pod-disruption" length="all">}}
34+
35+
* [Pod Priority and Preemption](/docs/concepts/scheduling-eviction/pod-priority-preemption/)
36+
* [Node-pressure Eviction](/docs/concepts/scheduling-eviction/node-pressure-eviction/)
37+
* [API-initiated Eviction](/docs/concepts/scheduling-eviction/api-eviction/)
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
title: API-initiated Eviction
3+
content_type: concept
4+
weight: 70
5+
---
6+
7+
{{< glossary_definition term_id="api-eviction" length="short" >}} </br>
8+
9+
You can request eviction by directly calling the Eviction API
10+
using a client of the kube-apiserver, like the `kubectl drain` command.
11+
This creates an `Eviction` object, which causes the API server to terminate the Pod.
12+
13+
API-initiated evictions respect your configured [`PodDisruptionBudgets`](/docs/tasks/run-application/configure-pdb/)
14+
and [`terminationGracePeriodSeconds`](/docs/concepts/workloads/pods/pod-lifecycle#pod-termination).
15+
16+
## {{% heading "whatsnext" %}}
17+
18+
* Learn about [Node-pressure Eviction](/docs/concepts/scheduling-eviction/node-pressure-eviction/)
19+
* Learn about [Pod Priority and Preemption](/docs/concepts/scheduling-eviction/pod-priority-preemption/)

content/en/docs/concepts/scheduling-eviction/eviction-policy.md

Lines changed: 0 additions & 24 deletions
This file was deleted.

content/en/docs/concepts/scheduling-eviction/kube-scheduler.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,11 +77,9 @@ one of these at random.
7777
There are two supported ways to configure the filtering and scoring behavior
7878
of the scheduler:
7979

80-
8180
1. [Scheduling Policies](/docs/reference/scheduling/policies) allow you to configure _Predicates_ for filtering and _Priorities_ for scoring.
8281
1. [Scheduling Profiles](/docs/reference/scheduling/config/#profiles) allow you to configure Plugins that implement different scheduling stages, including: `QueueSort`, `Filter`, `Score`, `Bind`, `Reserve`, `Permit`, and others. You can also configure the kube-scheduler to run different profiles.
8382

84-
8583
## {{% heading "whatsnext" %}}
8684

8785
* Read about [scheduler performance tuning](/docs/concepts/scheduling-eviction/scheduler-perf-tuning/)

0 commit comments

Comments
 (0)