# 调度、抢占和驱逐

LLMS index: [llms.txt](/llms.txt)

---

<!--
title: "Scheduling, Preemption and Eviction"
weight: 95
content_type: concept
no_list: true
-->

<!--
In Kubernetes, scheduling refers to making sure that <a class='glossary-tooltip' title='Pod 表示你的集群上一组正在运行的容器。' data-bs-toggle='tooltip' data-bs-placement='top' href='/zh-cn/docs/concepts/workloads/pods/' target='_blank' aria-label='Pods'>Pods</a>
are matched to <a class='glossary-tooltip' title='Kubernetes 中的工作机器称作节点。' data-bs-toggle='tooltip' data-bs-placement='top' href='/zh-cn/docs/concepts/architecture/nodes/' target='_blank' aria-label='Nodes'>Nodes</a> so that the
<a class='glossary-tooltip' title='一个在集群中每个节点上运行的代理。它保证容器都运行在 Pod 中。' data-bs-toggle='tooltip' data-bs-placement='top' href='/zh-cn/docs/reference/command-line-tools-reference/kubelet' target='_blank' aria-label='kubelet'>kubelet</a> can run them. Preemption
is the process of terminating Pods with lower <a class='glossary-tooltip' title='Pod 优先级表示一个 Pod 相对于其他 Pod 的重要性。' data-bs-toggle='tooltip' data-bs-placement='top' href='/zh-cn/docs/concepts/scheduling-eviction/pod-priority-preemption/#pod-priority' target='_blank' aria-label='Priority'>Priority</a>
so that Pods with higher Priority can schedule on Nodes. Eviction is the process
of terminating one or more Pods on Nodes.
-->
在 Kubernetes 中，调度（scheduling）指的是确保 <a class='glossary-tooltip' title='Pod 表示你的集群上一组正在运行的容器。' data-bs-toggle='tooltip' data-bs-placement='top' href='/zh-cn/docs/concepts/workloads/pods/' target='_blank' aria-label='Pod'>Pod</a>
匹配到合适的<a class='glossary-tooltip' title='Kubernetes 中的工作机器称作节点。' data-bs-toggle='tooltip' data-bs-placement='top' href='/zh-cn/docs/concepts/architecture/nodes/' target='_blank' aria-label='节点'>节点</a>，
以便 <a class='glossary-tooltip' title='一个在集群中每个节点上运行的代理。它保证容器都运行在 Pod 中。' data-bs-toggle='tooltip' data-bs-placement='top' href='/zh-cn/docs/reference/command-line-tools-reference/kubelet' target='_blank' aria-label='kubelet'>kubelet</a> 能够运行它们。
抢占（Preemption）指的是终止低<a class='glossary-tooltip' title='Pod 优先级表示一个 Pod 相对于其他 Pod 的重要性。' data-bs-toggle='tooltip' data-bs-placement='top' href='/zh-cn/docs/concepts/scheduling-eviction/pod-priority-preemption/#pod-priority' target='_blank' aria-label='优先级'>优先级</a>的
Pod 以便高优先级的 Pod 可以调度到 Node 上的过程。
驱逐（Eviction）是在资源匮乏的节点上，主动让一个或多个 Pod 失效的过程。

<!--
## Scheduling

* [Kubernetes Scheduler](/docs/concepts/scheduling-eviction/kube-scheduler/)
* [Assigning Pods to Nodes](/docs/concepts/scheduling-eviction/assign-pod-node/)
* [Pod Overhead](/docs/concepts/scheduling-eviction/pod-overhead/)
* [Pod Topology Spread Constraints](/docs/concepts/scheduling-eviction/topology-spread-constraints/)
* [Taints and Tolerations](/docs/concepts/scheduling-eviction/taint-and-toleration/)
* [Scheduling Framework](/docs/concepts/scheduling-eviction/scheduling-framework)
* [Dynamic Resource Allocation](/docs/concepts/scheduling-eviction/dynamic-resource-allocation)
* [Scheduler Performance Tuning](/docs/concepts/scheduling-eviction/scheduler-perf-tuning/)
* [Resource Bin Packing for Extended Resources](/docs/concepts/scheduling-eviction/resource-bin-packing/)
* [Pod Scheduling Readiness](/docs/concepts/scheduling-eviction/pod-scheduling-readiness/)
* [PodGroup Scheduling](/docs/concepts/scheduling-eviction/podgroup-scheduling/)
* [Gang Scheduling](/docs/concepts/scheduling-eviction/gang-scheduling/)
* [Topology-aware Scheduling](/docs/concepts/scheduling-eviction/topology-aware-scheduling/)
* [Workload-Aware preemption](/docs/concepts/scheduling-eviction/workload-aware-preemption/)
* [Descheduler](https://github.com/kubernetes-sigs/descheduler#descheduler-for-kubernetes)
* [Node Declared Features](/docs/concepts/scheduling-eviction/node-declared-features/)
-->
## 调度   {#scheduling}

* [Kubernetes 调度器](/zh-cn/docs/concepts/scheduling-eviction/kube-scheduler/)
* [将 Pod 指派到节点](/zh-cn/docs/concepts/scheduling-eviction/assign-pod-node/)
* [Pod 开销](/zh-cn/docs/concepts/scheduling-eviction/pod-overhead/)
* [Pod 拓扑分布约束](/zh-cn/docs/concepts/scheduling-eviction/topology-spread-constraints/)
* [污点和容忍度](/zh-cn/docs/concepts/scheduling-eviction/taint-and-toleration/)
* [动态资源分配](/zh-cn/docs/concepts/scheduling-eviction/dynamic-resource-allocation)
* [调度器性能调试](/zh-cn/docs/concepts/scheduling-eviction/scheduler-perf-tuning/)
* [扩展资源的资源装箱](/zh-cn/docs/concepts/scheduling-eviction/resource-bin-packing/)
* [Pod 调度就绪](/zh-cn/docs/concepts/scheduling-eviction/pod-scheduling-readiness/)
* [PodGroup 调度](/zh-cn/docs/concepts/scheduling-eviction/podgroup-scheduling/)
* [Gang 调度](/zh-cn/docs/concepts/scheduling-eviction/gang-scheduling/)
* [拓扑感知调度](/zh-cn/docs/concepts/scheduling-eviction/topology-aware-scheduling/)
* [工作负载感知抢占](/zh-cn/docs/concepts/scheduling-eviction/workload-aware-preemption/)
* [Descheduler](https://github.com/kubernetes-sigs/descheduler#descheduler-for-kubernetes)
* [节点声明特性](/zh-cn/docs/concepts/scheduling-eviction/node-declared-features/)

<!--
## Pod Disruption

* [Pod Priority and Preemption](/docs/concepts/scheduling-eviction/pod-priority-preemption/)
* [Node-pressure Eviction](/docs/concepts/scheduling-eviction/node-pressure-eviction/)
* [API-initiated Eviction](/docs/concepts/scheduling-eviction/api-eviction/)
-->
## Pod 干扰   {#pod-disruption}

<!--
id: pod-disruption
title: Pod Disruption
full_link: /docs/concepts/workloads/pods/disruptions/
short_description: >
  The process by which Pods on Nodes are terminated either voluntarily or involuntarily.

aka:
related:
 - pod
 - container
tags:
 - operation
-->
<!--
[Pod disruption](/docs/concepts/workloads/pods/disruptions/) is the process by which 
Pods on Nodes are terminated either voluntarily or involuntarily. 
-->
<p><a href="/zh-cn/docs/concepts/workloads/pods/disruptions/">Pod 干扰</a> 是指节点上的
Pod 被自愿或非自愿终止的过程。</p>
<!--
Voluntary disruptions are started intentionally by application owners or cluster 
administrators. Involuntary disruptions are unintentional and can be triggered by 
unavoidable issues like Nodes running out of  <a class='glossary-tooltip' title='数量确定的可供使用的基础设施（CPU、内存等）。' data-bs-toggle='tooltip' data-bs-placement='top' href='/zh-cn/docs/reference/glossary/?all=true#term-infrastructure-resource' target='_blank' aria-label='resources'>resources</a>,
or by accidental deletions. 
-->
<p>自愿干扰是由应用程序所有者或集群管理员有意启动的。非自愿干扰是无意的，可能由不可避免的问题触发，
如节点耗尽<a class='glossary-tooltip' title='数量确定的可供使用的基础设施（CPU、内存等）。' data-bs-toggle='tooltip' data-bs-placement='top' href='/zh-cn/docs/reference/glossary/?all=true#term-infrastructure-resource' target='_blank' aria-label='资源'>资源</a>或 Pod 被意外删除。</p>

* [Pod 优先级和抢占](/zh-cn/docs/concepts/scheduling-eviction/pod-priority-preemption/)
* [节点压力驱逐](/zh-cn/docs/concepts/scheduling-eviction/node-pressure-eviction/)
* [API 发起的驱逐](/zh-cn/docs/concepts/scheduling-eviction/api-eviction/)

---

Section pages:

- [Kubernetes 调度器](/zh-cn/docs/concepts/scheduling-eviction/kube-scheduler/)
- [拓扑感知的工作负载调度](/zh-cn/docs/concepts/scheduling-eviction/topology-aware-scheduling/)
- [将 Pod 指派给节点](/zh-cn/docs/concepts/scheduling-eviction/assign-pod-node/)
- [Pod 开销](/zh-cn/docs/concepts/scheduling-eviction/pod-overhead/)
- [Pod 调度就绪态](/zh-cn/docs/concepts/scheduling-eviction/pod-scheduling-readiness/)
- [Pod 拓扑分布约束](/zh-cn/docs/concepts/scheduling-eviction/topology-spread-constraints/)
- [污点和容忍度](/zh-cn/docs/concepts/scheduling-eviction/taint-and-toleration/)
- [调度框架](/zh-cn/docs/concepts/scheduling-eviction/scheduling-framework/)
- [动态资源分配](/zh-cn/docs/concepts/scheduling-eviction/dynamic-resource-allocation/)
- [编组调度（Gang Scheduling）](/zh-cn/docs/concepts/scheduling-eviction/gang-scheduling/)
- [调度器性能调优](/zh-cn/docs/concepts/scheduling-eviction/scheduler-perf-tuning/)
- [资源装箱](/zh-cn/docs/concepts/scheduling-eviction/resource-bin-packing/)
- [Pod 优先级和抢占](/zh-cn/docs/concepts/scheduling-eviction/pod-priority-preemption/)
- [节点压力驱逐](/zh-cn/docs/concepts/scheduling-eviction/node-pressure-eviction/)
- [API 发起的驱逐](/zh-cn/docs/concepts/scheduling-eviction/api-eviction/)
- [节点声明式特性](/zh-cn/docs/concepts/scheduling-eviction/node-declared-features/)
