@@ -196,13 +196,6 @@ The major issues are:
196
196
This can also happen with other mechanism (e.g., different types of evictions). This has been
197
197
discussed in the issue [ kubernetes/kubernetes #124448 ] ( https://github.com/kubernetes/kubernetes/issues/124448 )
198
198
and in the issue [ kubernetes/kubernetes #72129 ] ( https://github.com/kubernetes/kubernetes/issues/72129 ) .
199
- 7 . [ Affinity Based Eviction] ( https://github.com/kubernetes/enhancements/issues/4328 ) is an upcoming
200
- feature that would like to introduce the ` RequiredDuringSchedulingRequiredDuringExecution `
201
- nodeAffinity option to remove pods from nodes that do not match this affinity. The controller
202
- proposed by this feature would like to use the EvictionRequest API for the disruption safety and
203
- observability reasons. It can also leave the eviction logic and reconciliation to the eviction
204
- request controller and reducing the maintenance burden. Discussed in the KEP
205
- [ kubernetes/enhancements #4329 ] ( https://github.com/kubernetes/enhancements/pull/4329 ) .
206
199
207
200
This KEP is a prerequisite for the [ Declarative Node Maintenance KEP] ( https://github.com/kubernetes/enhancements/pull/4213 ) ,
208
201
which describes other issues and consequences that would be solved by the EvictionRequest API.
@@ -223,7 +216,7 @@ the application supports this.
223
216
224
217
### PodDisruptionBudget Standing Issues
225
218
226
- For completeness here is a complete list of upstream open PDB issues. Most are relevant to this KEP.
219
+ For completeness here is a complete list of open PDB issues. Most are relevant to this KEP.
227
220
228
221
- [ Mandatorliy specify how the application handle disruptions in the pod spec.] ( https://github.com/kubernetes/kubernetes/issues/124390 )
229
222
- [ Treat liveness probe-based restarts as voluntary disruptions gated by PodDisruptionBudgets] ( https://github.com/kubernetes/kubernetes/issues/123204 )
@@ -240,6 +233,7 @@ For completeness here is a complete list of upstream open PDB issues. Most are r
240
233
- [ New FailedEviction PodDisruptionCondition] ( https://github.com/kubernetes/kubernetes/issues/128815 )
241
234
- [ Distinguish PDB error separately in eviction API] ( https://github.com/kubernetes/kubernetes/issues/125500 )
242
235
- [ Confusing use of TooManyRequests error for eviction] ( https://github.com/kubernetes/kubernetes/issues/106286 )
236
+ - [ New EvictionBlocked PodDisruptionCondition] ( https://github.com/kubernetes/kubernetes/issues/128815 )
243
237
244
238
### Goals
245
239
@@ -1780,10 +1774,10 @@ also not possible to change the default eviction behavior for safety reasons. So
1780
1774
would not be sufficient, as we need to solve this for all pods.
1781
1775
1782
1776
We could track these requests in the PDB object itself. A PDB can track multiple pods with its
1783
- selector. The pods do not have to be from the same application, even though they usually are. These
1784
- pods may run in various locations and may have various reasons for their disruption. It would be
1785
- difficult to synchronize the PDB object for applications with a large number of pods. This could
1786
- result in inconsistent updates and conflicts as many components would race for the PDB updates.
1777
+ selector. These pods may run in various locations and may have various reasons for their disruption.
1778
+ It would be difficult to synchronize the PDB object for applications with a large number of pods.
1779
+ This could result in inconsistent updates and conflicts as many components would race for the PDB
1780
+ updates.
1787
1781
1788
1782
The updates to the PDB could be done solely by the eviction endpoint, but this is disqualified
1789
1783
because many components override this endpoint with validating admission webhooks. And so we would
0 commit comments