diff --git a/pkg/kubelet/kubelet_node_status.go b/pkg/kubelet/kubelet_node_status.go index 91a8e908aea..2407dafca80 100644 --- a/pkg/kubelet/kubelet_node_status.go +++ b/pkg/kubelet/kubelet_node_status.go @@ -299,9 +299,7 @@ func (kl *Kubelet) initialNode() (*v1.Node, error) { } } } - if err := kl.setNodeStatus(node); err != nil { - return nil, err - } + kl.setNodeStatus(node) return node, nil } @@ -375,9 +373,7 @@ func (kl *Kubelet) tryUpdateNodeStatus(tryNumber int) error { kl.updatePodCIDR(node.Spec.PodCIDR) - if err := kl.setNodeStatus(node); err != nil { - return err - } + kl.setNodeStatus(node) // Patch the current status on the API server updatedNode, err := nodeutil.PatchNodeStatus(kl.kubeClient, types.NodeName(kl.nodeName), originalNode, node) if err != nil { @@ -902,13 +898,12 @@ func (kl *Kubelet) setNodeVolumesInUseStatus(node *v1.Node) { // any fields that are currently set. // TODO(madhusudancs): Simplify the logic for setting node conditions and // refactor the node status condition code out to a different file. -func (kl *Kubelet) setNodeStatus(node *v1.Node) error { +func (kl *Kubelet) setNodeStatus(node *v1.Node) { for _, f := range kl.setNodeStatusFuncs { if err := f(node); err != nil { - return err + glog.Warningf("Failed to set some node status fields: %s", err) } } - return nil } // defaultNodeStatusFuncs is a factory that generates the default set of