From 973f2fcd86ef3c3e69f455aaf88553f0906b48bd Mon Sep 17 00:00:00 2001 From: Random-Liu Date: Mon, 25 Jul 2016 16:07:33 -0700 Subject: [PATCH] Fail kubelet if cadvisor is not started. --- pkg/kubelet/kubelet.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkg/kubelet/kubelet.go b/pkg/kubelet/kubelet.go index 608deca39c7..5f7e6449173 100644 --- a/pkg/kubelet/kubelet.go +++ b/pkg/kubelet/kubelet.go @@ -914,7 +914,9 @@ func (kl *Kubelet) initializeModules() error { // initializeRuntimeDependentModules will initialize internal modules that require the container runtime to be up. func (kl *Kubelet) initializeRuntimeDependentModules() { if err := kl.cadvisor.Start(); err != nil { - kl.runtimeState.setInternalError(fmt.Errorf("failed to start cAdvisor %v", err)) + // Fail kubelet and rely on the babysitter to retry starting kubelet. + // TODO(random-liu): Add backoff logic in the babysitter + glog.Fatalf("Failed to start cAdvisor %v", err) } // eviction manager must start after cadvisor because it needs to know if the container runtime has a dedicated imagefs if err := kl.evictionManager.Start(kl, kl.getActivePods, evictionMonitoringPeriod); err != nil {