Skip to content

SLM: Maintenance-aware DaemonSet rollouts #6250

Description

@rthallisey

Enhancement Description

During a DaemonSet rollout, a broken Node or a Node undergoing maintenance can remain unavailable for reasons unrelated to the new DaemonSet revision. That Node can consume the rollout's availability budget indefinitely, preventing or slowing the controller from progressing the rollout on healthy Nodes.

DaemonSet status reports aggregate availability but does not explain when Pods are unavailable because their Nodes are shutting down or undergoing maintenance. Users and rollout tooling therefore cannot distinguish a broken rollout from intentional Node lifecycle activity, which can produce misleading alerts and availability reporting.

The DaemonSet controller will use Node lifecycle conditions as context for rollout behavior and status. MaintenanceInProgress will inform rollout
progress and placement, while GracefulNodeShutdownInProgress and MaintenanceInProgress will provide lifecycle attribution in DaemonSet status. The KEP will describe rollout ordering and address availability accounting when nodes are affected by lifecycle states.

This KEP assumes that MaintenanceInProgress will be set externally.

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

Metadata

Metadata

Assignees

Labels

sig/appsCategorizes an issue or PR as relevant to SIG Apps.sig/nodeCategorizes an issue or PR as relevant to SIG Node.wg/node-lifecycleCategorizes an issue or PR as relevant to WG Node Lifecycle.

Type

No type

Projects

Status
Needs Triage
Status
No status
Status
No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions