diff --git a/pkg/controller/daemon/daemon_controller.go b/pkg/controller/daemon/daemon_controller.go index f832bd2bc63..662e5f3d562 100644 --- a/pkg/controller/daemon/daemon_controller.go +++ b/pkg/controller/daemon/daemon_controller.go @@ -1198,6 +1198,10 @@ func (dsc *DaemonSetsController) updateDaemonSetStatus(ds *apps.DaemonSet, nodeL return fmt.Errorf("error storing status for daemon set %#v: %v", ds, err) } + // Resync the DaemonSet after MinReadySeconds as a last line of defense to guard against clock-skew. + if ds.Spec.MinReadySeconds > 0 && numberReady != numberAvailable { + dsc.enqueueDaemonSetAfter(ds, time.Duration(ds.Spec.MinReadySeconds)*time.Second) + } return nil }