mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-04 01:40:07 +00:00
Merge pull request #52155 from kevin-wangzefeng/fix-prober-phase-shift
Automatic merge from submit-queue (batch tested with PRs 50949, 52155, 52175, 52112, 52188) Fix prober ticking shift for kubelet restart cases Fixes #52154 call sleep() before `probeTicker` starts ticking, to reduce the number of probers executed at the same time, after kubelete restarted. **Special notes for your reviewer**: Before:  After:  **Release note**: ```release-note NONE ``` /cc @kubernetes/sig-node-bugs
This commit is contained in:
commit
e5dc995cc5
@ -99,6 +99,11 @@ func newWorker(
|
||||
// run periodically probes the container.
|
||||
func (w *worker) run() {
|
||||
probeTickerPeriod := time.Duration(w.spec.PeriodSeconds) * time.Second
|
||||
|
||||
// If kubelet restarted the probes could be started in rapid succession.
|
||||
// Let the worker wait for a random portion of tickerPeriod before probing.
|
||||
time.Sleep(time.Duration(rand.Float64() * float64(probeTickerPeriod)))
|
||||
|
||||
probeTicker := time.NewTicker(probeTickerPeriod)
|
||||
|
||||
defer func() {
|
||||
@ -111,10 +116,6 @@ func (w *worker) run() {
|
||||
w.probeManager.removeWorker(w.pod.UID, w.container.Name, w.probeType)
|
||||
}()
|
||||
|
||||
// If kubelet restarted the probes could be started in rapid succession.
|
||||
// Let the worker wait for a random portion of tickerPeriod before probing.
|
||||
time.Sleep(time.Duration(rand.Float64() * float64(probeTickerPeriod)))
|
||||
|
||||
probeLoop:
|
||||
for w.doProbe() {
|
||||
// Wait for next probe tick.
|
||||
|
Loading…
Reference in New Issue
Block a user