Enhancement Description
When a Node becomes unreachable during maintenance, its Pods may never reach a terminal phase that the Job controller can observe. A Job using podReplacementPolicy: Failed can then wait indefinitely instead of creating a replacement Pod, leaving the Job and higher-level queueing systems stuck.
The Job controller will use the MaintenanceInProgress condition as Node context when deciding whether a Pod can be replaced without waiting for its terminal phase. The KEP will define the replacement and accounting semantics so Jobs can make progress without unintentionally running duplicate Pods.
- One-line enhancement description (can be used as a release note): Make Job pod replacement aware of Node maintenance.
- Kubernetes Enhancement Proposal: TBD
- Discussion Link:
- PRs by stage and milestone:
Please keep this description up to date. This will help the Enhancement Team to track the evolution of the enhancement efficiently.
/sig apps
/sig node
/wg node-lifecycle
Enhancement Description
When a Node becomes unreachable during maintenance, its Pods may never reach a terminal phase that the Job controller can observe. A Job using
podReplacementPolicy: Failedcan then wait indefinitely instead of creating a replacement Pod, leaving the Job and higher-level queueing systems stuck.The Job controller will use the
MaintenanceInProgresscondition as Node context when deciding whether a Pod can be replaced without waiting for its terminal phase. The KEP will define the replacement and accounting semantics so Jobs can make progress without unintentionally running duplicate Pods.k/enhancements) update PR(s):k/k) update PR(s):k/website) update PR(s):Please keep this description up to date. This will help the Enhancement Team to track the evolution of the enhancement efficiently.
/sig apps
/sig node
/wg node-lifecycle